Changeset 8395 for 2016


Ignore:
Timestamp:
2017-01-28 14:46:20 (20 months ago)
Author:
jotapoti
Message:
 
Location:
2016/koodauskerho/AaroA/FysiikkaPeli2
Files:
1 added
8 edited

Legend:

Unmodified
Added
Removed
  • 2016/koodauskerho/AaroA/FysiikkaPeli2/FysiikkaPeli2/FysiikkaPeli2/FysiikkaPeli2.cs

    r8381 r8395  
    1111    PhysicsObject kissa = new PhysicsObject(100, 50); 
    1212    Image kissankuva = LoadImage("MLGKissa"); 
    13     Cannon kissanAse; 
     13    LaserGun kissanAse; 
    1414    PhysicsObject vasenReuna; 
    1515    PhysicsObject oikeaReuna; 
     
    2222    } 
    2323 
    24      void LuoKentta() 
    25      { 
    26             kissa = new PhysicsObject(40, 20); 
     24    void LuoKentta() 
     25    { 
     26        kissa = new PhysicsObject(40, 20); 
    2727 
    2828        kissa.CanRotate = false; 
    29             kissa.Image = kissankuva; 
    30             kissa.Shape = Shape.Circle; 
    31             kissa.Mass = 10.0; 
    32             kissa.Size = new Vector(150, 100); 
    33             Add(kissa); 
     29        kissa.Image = kissankuva; 
     30        kissa.Shape = Shape.Circle; 
     31        kissa.Mass = 10.0; 
     32        kissa.Size = new Vector(150, 100); 
     33        Add(kissa); 
     34        kissa.Tag = "pelaaja"; 
     35        kissanAse = new LaserGun(20, 5); 
    3436 
    35         kissanAse = new Cannon(50, 10); 
    36  
    37         kissanAse.ProjectileCollision = CollisionHandler.DestroyObject; 
     37        //kissanAse.ProjectileCollision = CollisionHandler.DestroyObject; 
    3838 
    3939        kissanAse.X = 10.0; 
    4040        kissanAse.Y = -5.0; 
    4141 
    42         kissanAse.FireRate = 3.0; 
     42        kissanAse.FireRate = 5.0; 
    4343 
    4444        kissanAse.AmmoIgnoresExplosions = true; 
    4545 
    46         //Ammusten määrä aluksi: 
    47         kissanAse.Ammo.Value = 1000; 
     46        kissanAse.ProjectileCollision = AmmusOsui; 
    4847 
    4948        //loputtomat ammukset: 
     
    5251        kissa.Add(kissanAse); 
    5352 
     53        Timer ajastin = new Timer(); 
     54        ajastin.Interval = 1; 
     55        ajastin.Timeout += LuoBot; 
     56        ajastin.Start(); 
     57        Level.Width = 1500; 
     58        Level.Height = 1500; 
    5459        vasenReuna = Level.CreateLeftBorder(); 
    55             vasenReuna.Restitution = 0.0; 
    56             vasenReuna.KineticFriction = 0.0; 
    57             vasenReuna.IsVisible = false; 
     60        vasenReuna.Restitution = 0.0; 
     61        vasenReuna.KineticFriction = 0.0; 
     62        vasenReuna.IsVisible = false; 
    5863 
    59             oikeaReuna = Level.CreateRightBorder(); 
    60             oikeaReuna.Restitution = 0.0; 
    61             oikeaReuna.KineticFriction = 0.0; 
    62             oikeaReuna.IsVisible = false; 
     64        oikeaReuna = Level.CreateRightBorder(); 
     65        oikeaReuna.Restitution = 0.0; 
     66        oikeaReuna.KineticFriction = 0.0; 
     67        oikeaReuna.IsVisible = false; 
    6368 
    64             PhysicsObject ylaReuna = Level.CreateTopBorder(); 
    65             ylaReuna.Restitution = 0.0; 
    66             ylaReuna.KineticFriction = 0.0; 
    67             ylaReuna.IsVisible = false; 
     69        PhysicsObject ylaReuna = Level.CreateTopBorder(); 
     70        ylaReuna.Restitution = 0.0; 
     71        ylaReuna.KineticFriction = 0.0; 
     72        ylaReuna.IsVisible = false; 
    6873 
    69             PhysicsObject alaReuna = Level.CreateBottomBorder(); 
    70             alaReuna.Restitution = 0.0; 
    71             alaReuna.IsVisible = false; 
    72             alaReuna.KineticFriction = 0.0; 
     74        PhysicsObject alaReuna = Level.CreateBottomBorder(); 
     75        alaReuna.Restitution = 0.0; 
     76        alaReuna.IsVisible = false; 
     77        alaReuna.KineticFriction = 0.0; 
    7378 
    74         Level.Background.CreateStars( 10000 ); 
     79        Level.Background.CreateStars(10000); 
    7580        Camera.ZoomToLevel(); 
    7681    } 
    77     void AmmuAseella(Cannon ase) 
     82    void AmmuAseella(LaserGun ase) 
    7883    { 
    7984        PhysicsObject ammus = ase.Shoot(); 
     
    108113      LiikutaPelaajaa, null, Vector.Zero); 
    109114 
    110         Mouse.Listen( MouseButton.Left, ButtonState.Down, AmmuAseella, "Ammu", kissanAse); 
     115        Mouse.Listen(MouseButton.Left, ButtonState.Down, AmmuAseella, "Ammu", kissanAse); 
    111116 
    112117        Mouse.ListenMovement(0.1, tahtaa, "tähtää"); 
     
    116121    } 
    117122 
    118     void tahtaa(AnalogState a) { 
     123    void tahtaa(AnalogState a) 
     124    { 
    119125        Vector suunta = Mouse.PositionOnWorld - kissa.Position; 
    120126        kissa.Angle = suunta.Angle; 
     
    127133 
    128134    } 
     135    void LuoBot() 
     136    { 
     137        Botti bot = new Botti(50, 50); 
     138        Add(bot); 
     139        bot.Tag = "Botti"; 
     140        bot.Shape = Shape.Circle; 
     141        FollowerBrain seuraajanAivot = new FollowerBrain("pelaaja"); 
     142        bot.Brain = seuraajanAivot; 
     143    } 
     144    void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 
     145    { 
     146        ammus.Destroy(); 
     147        if (kohde.Tag.Equals("Botti")) 
     148        { 
     149            (kohde as Botti).Elamalaskuri.Value--; 
     150 
     151            if ((kohde as Botti).Elamalaskuri.Value == (kohde as Botti).Elamalaskuri.MinValue) 
     152            { 
     153                Explosion rajahdys = new Explosion(50); 
     154                rajahdys.Position = kohde.Position; 
     155                Add(rajahdys); 
     156            } 
     157                 
     158        } 
     159    } 
     160 
    129161} 
  • 2016/koodauskerho/AaroA/FysiikkaPeli2/FysiikkaPeli2/FysiikkaPeli2/FysiikkaPeli2.csproj

    r8343 r8395  
    111111  </ItemGroup> 
    112112  <ItemGroup> 
     113    <Compile Include="Botti.cs" /> 
    113114    <Compile Include="Ohjelma.cs" /> 
    114115    <Compile Include="FysiikkaPeli2.cs" /> 
  • 2016/koodauskerho/AaroA/FysiikkaPeli2/FysiikkaPeli2/FysiikkaPeli2/obj/x86/Debug/ContentPipeline-{39020B71-B742-44C4-8BFF-3CD77656AA7E}.xml

    r8381 r8395  
    99      <Options>None</Options> 
    1010      <Output>C:\MyTemp\AaroA\FysiikkaPeli2\FysiikkaPeli2\FysiikkaPeli2\bin\x86\Debug\Content\MLGKissa.xnb</Output> 
    11       <Time>2016-12-17T10:53:49.1852019+02:00</Time> 
     11      <Time>2017-01-28T10:13:38.8097219+02:00</Time> 
    1212    </Item> 
    1313    <BuildSuccessful>true</BuildSuccessful> 
     
    5858      <Assembly> 
    5959        <Key>C:\Windows\Microsoft.Net\assembly\GAC_32\Microsoft.Xna.Framework.Content.Pipeline\v4.0_4.0.0.0__842cf8be1de50553\Microsoft.Xna.Framework.Content.Pipeline.dll</Key> 
    60         <Value>2015-09-16T18:35:30.082205+03:00</Value> 
     60        <Value>2015-09-16T13:41:58.0471254+03:00</Value> 
    6161      </Assembly> 
    6262    </Assemblies> 
Note: See TracChangeset for help on using the changeset viewer.