Changeset 5553 for 2014/30


Ignore:
Timestamp:
2014-07-22 15:08:46 (9 years ago)
Author:
mijoliim
Message:
 
Location:
2014/30/MikkoL/Gradiant
Files:
12 added
3 edited

Legend:

Unmodified
Added
Removed
  • 2014/30/MikkoL/Gradiant/LM2/LM2/Gradiant.cs

    r5522 r5553  
    1818            this.Destroy(); 
    1919        }; 
     20        IgnoresGravity = true; 
    2021    } 
    2122} 
     
    2627        : base(width, height) 
    2728    { 
    28  
     29        IgnoresGravity = true; 
    2930    } 
    3031} 
     
    4142    { 
    4243        health.LowerLimit += delegate { this.Destroy(); }; 
     44        IgnoresGravity = true; 
    4345    } 
    4446} 
     
    5456    { 
    5557        health.LowerLimit += delegate { this.Destroy(); }; 
     58        IgnoresGravity = true; 
    5659    } 
    5760} 
     
    6871 
    6972    public frontborder(double width, double height) 
    70         : base(width, height) { } 
     73        : base(width, height) { IgnoresGravity = true; } 
    7174} 
    7275class backborder : PhysicsObject 
     
    7477 
    7578    public backborder(double width, double height) 
    76         : base(width, height) { } 
     79        : base(width, height) { IgnoresGravity = true; } 
     80} 
     81class bulletdes : PhysicsObject 
     82{ 
     83    public bulletdes(double width, double height) 
     84            : base(width, height) { IgnoresGravity = true; } 
    7785} 
    7886 
     
    8997    Image player_ship_02 = LoadImage("player_ship_02"); 
    9098    Image hitbox = LoadImage("hitbox"); 
     99    Image droid_image = LoadImage("droid"); 
    91100    //Bullets 
    92101    Image bullet_green_laser01 = LoadImage("bullet_green_laser01"); 
     
    125134    //Explosion 
    126135    private Animation explosion_anim; 
     136    private Animation droid_anim; 
     137    private Animation droid2_anim; 
    127138    //GUI 
    128139    Image title = LoadImage("title_screen"); 
     140    Image title_02 = LoadImage("title_screen_02"); 
    129141    Image press_start_img = LoadImage("Press_Start"); 
     142    Image controls = LoadImage("controls"); 
    130143    Image stage_1_clear = LoadImage("stage_1_clear"); 
    131144    Image stage_1_start = LoadImage("stage_1_start"); 
     
    134147    Image damage_up = LoadImage("damage_up"); 
    135148    Image spread_up = LoadImage("spread_up"); 
     149    Image cursor_gui = LoadImage("cursor"); 
    136150 
    137151    Image aj = LoadImage("aj-weed"); 
     
    165179    Timer wpn_timer = new Timer(); 
    166180 
     181    GameObject control_gui; 
     182    GameObject press_start; 
     183    GameObject cursor; 
    167184    bool s001 = false; 
    168185 
    169186    public override void Begin() 
    170187    { 
     188         
    171189        //Load SFX 
    172190        hurtsfx.Play(); 
    173         //explosionsfx.Play(); 
    174         //hitsfx.Play(); 
    175         //shootsfx.Play(); 
    176         //powerupsfx.Play(); 
    177         //enemy_shootsfx.Play(); 
    178191 
    179192        //Load Anim 
    180193        explosion_anim = LoadAnimation("explosionanim"); 
     194        droid_anim = LoadAnimation("droidanim"); 
     195        droid2_anim = LoadAnimation("droid2anim"); 
     196 
    181197        MediaPlayer.Play("Starmap"); 
    182198        MediaPlayer.IsRepeating = true; 
     
    185201 
    186202        Level.Size = new Vector(Screen.Width,Screen.Height); 
     203        SmoothTextures = false; 
     204 
    187205        GameObject titlescreen = new GameObject(1280, 801); 
    188206        titlescreen.Position = Screen.Center; 
    189         titlescreen.Image = title; 
    190         Add(titlescreen); 
    191  
    192         GameObject press_start = new GameObject(215, 59); 
     207        titlescreen.Image = title_02; 
     208        Add(titlescreen,-3); 
     209 
     210        press_start = new GameObject(215, 59); 
    193211        press_start.Position = Screen.Center + new Vector(0, 90); 
    194212        press_start.Image = press_start_img; 
    195213        Add(press_start); 
    196214 
     215        control_gui = new GameObject(345, 247); 
     216        control_gui.Position = Screen.Center + new Vector(66, -112); 
     217        control_gui.Image = controls; 
     218        Add(control_gui); 
     219 
    197220        Timer start = new Timer(); 
    198         start.Interval = 0.7; 
     221        start.Interval = 0.06; 
    199222        start.Timeout += delegate 
    200223        { 
     
    210233 
    211234    } 
     235    void Select_ship() 
     236    { 
     237        ClearControls(); 
     238        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, null); 
     239        ControllerOne.Listen(Button.Back, ButtonState.Pressed, ConfirmExit, null); 
     240 
     241        control_gui.Destroy(); 
     242        press_start.Destroy(); 
     243 
     244        cursor = new GameObject(21, 19); 
     245        cursor.Image = cursor_gui; 
     246        cursor.Position = Screen.Center; 
     247 
     248        Add(cursor); 
     249 
     250        Timer cursor_blink = new Timer(); 
     251        cursor_blink.Interval = 0.33; 
     252        cursor_blink.Timeout += delegate 
     253        { 
     254            if (cursor.IsVisible) cursor.IsVisible = false; 
     255            else if (!cursor.IsVisible) cursor.IsVisible = true; 
     256            if (cursor.IsDestroyed) cursor_blink.Stop(); 
     257        }; 
     258        //cursor_blink.Start(); 
     259    } 
    212260 
    213261    void Start() 
     
    216264        MediaPlayer.Stop(); 
    217265 
    218         CreateLevel("level_test"); 
     266        CreateLevel("level_01"); 
    219267 
    220268        GameObject stage_01_start = new GameObject(405, 39); 
     
    252300    //Stage creation 
    253301    void CreateLevel(string level) 
    254     {        
     302    { 
     303        Gravity = new Vector(1000, 0); 
     304 
    255305        TileMap lvl = TileMap.FromLevelAsset(level); 
    256306        lvl.SetTileMethod('x', border); 
     
    259309        lvl.SetTileMethod('%', frontBorder); 
    260310        lvl.SetTileMethod('&', backBorder); 
     311        lvl.SetTileMethod('#', bulletdes); 
    261312        lvl.SetTileMethod('P', AddPlayer); 
    262313        lvl.SetTileMethod('1', enemy_ship_1); 
     
    302353        Add(bg2, -3); 
    303354 
    304         //AddPlayer(Screen.Center, 0, 0); 
    305355        AddControls(); 
    306356        AddHealthbar(); 
     
    308358        Camera.Position = player.Position; 
    309359        //Camera.ZoomFactor = 0.4; 
    310        //edgeBorders(); 
     360        //edgeBorders(); 
    311361    } 
    312362    //Tiles for level 
     
    370420        AddCollisionHandler<PhysicsObject, player>(border, backBorderCollision); 
    371421        //AddCollisionHandler<PhysicsObject, enemy>(border, backBorderCollisionEnemy); 
     422        Add(border); 
     423    } 
     424    void bulletdes(Vector position, double width, double height) 
     425    { 
     426        bulletdes border = new bulletdes(width, height); 
     427        border.Position = position; 
     428        border.Color = Color.Red; 
     429        border.Restitution = 0; 
     430        border.Tag = "border"; 
     431        border.IgnoresCollisionResponse = true; 
     432        border.IgnoresPhysicsLogics = true; 
    372433        Add(border); 
    373434    } 
     
    662723        droid drd = new droid(13,13); 
    663724        drd.Shape = Shape.Circle; 
     725        drd.IgnoresCollisionResponse = true; 
     726        drd.CollisionIgnoreGroup = 2; 
     727        drd.Animation = droid_anim; 
     728        drd.Animation.Start(); 
    664729        if (drd_type == 1) { drd.Position = player.Position + pos; 
    665730        setdrd_shoot_timer(drd); 
     
    669734        move.Timeout += delegate 
    670735        { 
    671             if (drd.Position != player.Position + pos) drd.Position = player.Position + pos; 
     736            if (drd.Position != player.Position + pos) 
     737            { 
     738                drd.Position = player.Position + pos; 
     739            } 
    672740        }; 
    673741        move.Start(); 
    674742        }; 
    675743        //else if 
     744 
    676745        Add(drd); 
    677746    } 
     
    682751        drdshoot.Timeout += delegate 
    683752        { 
    684             if (ControllerOne.GetButtonState(Button.B) == ButtonState.Down) 
    685             { 
    686                 droidprojectile(drd.Position, new Vector(RandomGen.NextDouble(500, 700), RandomGen.NextDouble(-100, 100)), new Vector(20, 12)); 
    687                 droidprojectile(drd.Position, new Vector(RandomGen.NextDouble(500, 700), RandomGen.NextDouble(-100, 100)), new Vector(20, 12)); 
    688                 droidprojectile(drd.Position, new Vector(RandomGen.NextDouble(500, 700), RandomGen.NextDouble(-100, 100)), new Vector(20, 12)); 
    689                 droidprojectile(drd.Position, new Vector(RandomGen.NextDouble(500, 700), RandomGen.NextDouble(-100, 100)), new Vector(20, 12)); 
    690             }; 
     753            if (drd_type == 1) 
     754            { 
     755                droidtype1_shoot(drd); 
     756            } 
    691757        }; 
    692758 
     
    695761    void droidtype1_shoot(droid drd) 
    696762    { 
    697  
     763        if (ControllerOne.GetButtonState(Button.B) == ButtonState.Down) 
     764        { 
     765            droidprojectile(drd.Position, new Vector(-400, RandomGen.NextDouble(100,150)), new Vector(24, 13)); 
     766            droidprojectile(drd.Position, new Vector(-400, RandomGen.NextDouble(-150, -100)), new Vector(24, 13)); 
     767        }; 
    698768    } 
    699769    void droidprojectile(Vector pos, Vector vel, Vector size) 
     
    701771        bullet projectile = new bullet(size.X, size.Y/2); 
    702772        projectile.Shape = Shape.Diamond; 
    703         projectile.IgnoresGravity = true; 
     773        projectile.IgnoresGravity = false; 
    704774        projectile.Position = pos; 
    705775        projectile.Tag = "player_bullet"; 
    706776        projectile.Image = bullet_droid; 
    707777        projectile.damage = drd_damageRatio.Value; 
     778        projectile.LinearDamping = 0.99; 
    708779 
    709780        projectile.IgnoresCollisionResponse = true; 
    710781 
    711782        projectile.CollisionIgnoreGroup = 2; 
    712         projectile.MaximumLifetime = TimeSpan.FromSeconds(1.57); 
     783        projectile.MaximumLifetime = TimeSpan.FromSeconds(3); 
    713784 
    714785        AddCollisionHandler<bullet, frontborder>(projectile, destroy); 
     
    718789        projectile.Hit(vel); 
    719790        projectile.Angle = projectile.Velocity.Angle; 
     791 
     792        Timer angle = new Timer(); 
     793        angle.Interval = 0.05; 
     794        angle.Timeout += delegate 
     795        { 
     796            projectile.Angle = projectile.Velocity.Angle; 
     797            if (projectile.IsDestroyed) { angle.Stop(); }; 
     798        }; 
     799        angle.Start(); 
    720800    } 
    721801     
     
    11531233        enemy_bullet.Position = pos; 
    11541234        enemy_bullet.IgnoresCollisionResponse = true; 
     1235        enemy_bullet.IgnoresGravity = true; 
    11551236        enemy_bullet.CollisionIgnoreGroup = 2; 
    11561237        enemy_bullet.damage = 5; 
     
    11611242        Add(enemy_bullet, 0); 
    11621243        AddCollisionHandler<bullet, player>(enemy_bullet, damagePlayerBullet); 
     1244        AddCollisionHandler<bullet, bulletdes>(enemy_bullet, destroy); 
    11631245    } 
    11641246    void enemy_shoot_2(Vector pos, Vector dir) 
     
    11681250        enemy_bullet.Position = pos; 
    11691251        enemy_bullet.IgnoresCollisionResponse = true; 
     1252        enemy_bullet.IgnoresGravity = true; 
    11701253        enemy_bullet.CollisionIgnoreGroup = 2; 
    11711254        enemy_bullet.damage = 5; 
     
    11761259        enemy_bullet.Hit(dir/9); 
    11771260        AddCollisionHandler<bullet, player>(enemy_bullet, damagePlayerBullet); 
     1261        AddCollisionHandler<bullet, bulletdes>(enemy_bullet, destroy); 
    11781262 
    11791263        Timer wait = new Timer(); 
     
    11911275        enemy_bullet.Position = pos; 
    11921276        enemy_bullet.IgnoresCollisionResponse = true; 
     1277        enemy_bullet.IgnoresGravity = true; 
    11931278        enemy_bullet.CollisionIgnoreGroup = 2; 
    11941279        enemy_bullet.damage = 5; 
     
    11991284        enemy_bullet.Hit(dir); 
    12001285        AddCollisionHandler<bullet, player>(enemy_bullet, damagePlayerBullet); 
     1286        AddCollisionHandler<bullet, bulletdes>(enemy_bullet, destroy); 
    12011287 
    12021288    } 
     
    13451431        enemy_bullet.Position = pos; 
    13461432        enemy_bullet.IgnoresCollisionResponse = true; 
     1433        enemy_bullet.IgnoresGravity = true; 
    13471434        enemy_bullet.CollisionIgnoreGroup = 2; 
    13481435        enemy_bullet.damage = 5; 
     
    13531440        Add(enemy_bullet, 0); 
    13541441        AddCollisionHandler<bullet, player>(enemy_bullet, damagePlayerBullet); 
     1442        AddCollisionHandler<bullet, bulletdes>(enemy_bullet, destroy); 
    13551443    } 
    13561444    void boss_shoot_2(Vector pos, Vector dir) 
     
    13601448        enemy_bullet.Position = pos; 
    13611449        enemy_bullet.IgnoresCollisionResponse = true; 
     1450        enemy_bullet.IgnoresGravity = true; 
    13621451        enemy_bullet.CollisionIgnoreGroup = 2; 
    13631452        enemy_bullet.damage = 5; 
     
    13681457        enemy_bullet.Hit(dir / 9); 
    13691458        AddCollisionHandler<bullet, player>(enemy_bullet, damagePlayerBullet); 
     1459        AddCollisionHandler<bullet, bulletdes>(enemy_bullet, destroy); 
    13701460 
    13711461        Timer wait = new Timer(); 
     
    13831473        enemy_bullet.Position = pos; 
    13841474        enemy_bullet.IgnoresCollisionResponse = true; 
     1475        enemy_bullet.IgnoresGravity = true; 
    13851476        enemy_bullet.CollisionIgnoreGroup = 2; 
    13861477        enemy_bullet.damage = 5; 
     
    13911482        enemy_bullet.Hit(dir); 
    13921483        AddCollisionHandler<bullet, player>(enemy_bullet, damagePlayerBullet); 
     1484        AddCollisionHandler<bullet, bulletdes>(enemy_bullet, destroy); 
    13931485 
    13941486    } 
     
    13981490    void powerup(Vector pos) 
    13991491    { 
    1400         int a = RandomGen.NextInt(1, 11); 
     1492        int a = RandomGen.NextInt(1, 9); 
    14011493        if (a == 1) 
    14021494        { 
     
    14081500        int type = RandomGen.NextInt(1, 12); 
    14091501 
    1410         PhysicsObject powerup = new PhysicsObject(13, 13); 
     1502        PhysicsObject powerup = new PhysicsObject(15, 15); 
    14111503        powerup.Position = pos; 
    14121504        powerup.Tag = "powerup"; 
    14131505        powerup.IgnoresCollisionResponse = true; 
     1506        powerup.IgnoresGravity = true; 
    14141507        powerup.CollisionIgnoreGroup = 4; 
    14151508        powerup.MaximumLifetime = TimeSpan.FromSeconds(5); 
  • 2014/30/MikkoL/Gradiant/LM2/LM2Content/GradiantContent.contentproj

    r5522 r5553  
    404404    </Compile> 
    405405  </ItemGroup> 
     406  <ItemGroup> 
     407    <Compile Include="droidanim.anim"> 
     408      <Name>droidanim</Name> 
     409      <Importer>AnimationImporter</Importer> 
     410      <Processor>AnimationContentProcessor</Processor> 
     411    </Compile> 
     412  </ItemGroup> 
     413  <ItemGroup> 
     414    <Compile Include="droid2anim.anim"> 
     415      <Name>droid2anim</Name> 
     416      <Importer>AnimationImporter</Importer> 
     417      <Processor>AnimationContentProcessor</Processor> 
     418    </Compile> 
     419  </ItemGroup> 
     420  <ItemGroup> 
     421    <Compile Include="controls.png"> 
     422      <Name>controls</Name> 
     423      <Importer>TextureImporter</Importer> 
     424      <Processor>TextureProcessor</Processor> 
     425    </Compile> 
     426    <Compile Include="title_screen_02.png"> 
     427      <Name>title_screen_02</Name> 
     428      <Importer>TextureImporter</Importer> 
     429      <Processor>TextureProcessor</Processor> 
     430    </Compile> 
     431  </ItemGroup> 
     432  <ItemGroup> 
     433    <Compile Include="cursor.png"> 
     434      <Name>cursor</Name> 
     435      <Importer>TextureImporter</Importer> 
     436      <Processor>TextureProcessor</Processor> 
     437    </Compile> 
     438  </ItemGroup> 
    406439  <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 
    407440  <!--  To modify your build process, add your task inside one of the targets below and uncomment it.  
  • 2014/30/MikkoL/Gradiant/LM2/LM2Content/level_test.txt

    r5522 r5553  
    1                                       % 
    2                                       % 
    3                                       % 
    4                                       % 
    5                                       % 
    6                                reuna  % 
    7                                       % 
    8                                       % 
    9                                       % 
    10                                       % 
    11 &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&% 
    12 &xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx% 
    13 &xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx% 
    14 &yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy% 
    15 &                                     % 
    16 &                                     % 
    17 &                                     % 
    18 &                                     % 
    19 &                                     % 
    20 &                                     % 
    21 &                                     % 
    22 &                                     % 
    23 &                  P                  % 
    24 &                                     % 
    25 &                                     % 
    26 &                                     % 
    27 &                                     % 
    28 &                                     % 
    29 &                                     % 
    30 &                                     % 
    31 &                                     % 
    32 &zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz% 
    33 &xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx% 
    34 &xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx% 
    35 &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&% 
    36                                       % 
    37                                       % 
    38                                       % 
    39                                       % 
    40                                       % 
    41                                reuna  % 
    42                                       % 
    43                                       % 
    44                                       % 
    45                                       % 
     1                                       %  
     2                                       %  
     3                                       %  
     4                                       %  
     5                                       %  
     6                                reuna  %  
     7                                       %  
     8                                       %  
     9                                      #%# 
     10                                      #%# 
     11#######################################%# 
     12#&xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx%# 
     13#&xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx%# 
     14#&yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy%# 
     15#&                                     %# 
     16#&                                     %# 
     17#&                                     %# 
     18#&                                     %# 
     19#&                                     %# 
     20#&                                     %# 
     21#&                                     %# 
     22#&                                     %# 
     23#&                  P                  %#  G 
     24#&                                     %# 
     25#&                                     %# 
     26#&                                     %# 
     27#&                                     %# 
     28#&                                     %# 
     29#&                                     %# 
     30#&                                     %# 
     31#&                                     %# 
     32#&zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz%# 
     33#&xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx%# 
     34#&xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx%# 
     35#######################################%# 
     36                                      #%# 
     37                                      #%# 
     38                                       %  
     39                                       %  
     40                                       %  
     41                                reuna  %  
     42                                       %  
     43                                       %  
     44                                       %  
     45                                       %  
Note: See TracChangeset for help on using the changeset viewer.