Ignore:
Timestamp:
2017-11-18 14:44:40 (19 months ago)
Author:
mianhayr
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2017/koodauskerho/mastermijari/Seikkailu/Seikkailu/Seikkailu/Seikkailu.cs

    r9471 r9478  
    1111    Image pelaajankuva = LoadImage("ihminen"); 
    1212    PhysicsObject pelaaja; 
    13      
     13 
     14    Image hirvionkuva = LoadImage("hirvio"); 
     15    PhysicsObject hirvio; 
     16 
    1417 
    1518    Image pelaajan2kuva = LoadImage("ihminen2"); 
    1619    PhysicsObject pelaaja2; 
    1720 
     21    Image puunkuva = LoadImage("puuu"); 
     22    PhysicsObject puu; 
     23    PhysicsObject HirvioSpawn; 
    1824    public override void Begin() 
    1925    { 
     
    2127 
    2228        Level.Background.Color = Color.DarkJungleGreen; 
    23          
     29 
    2430 
    2531        TileMap ruudut = TileMap.FromLevelAsset("kentta"); 
     
    2834        ruudut.SetTileMethod('P', LuoPelaaja); 
    2935        ruudut.SetTileMethod('2', LuoPelaaja2); 
     36        ruudut.SetTileMethod('L', LuoPuu); 
     37        ruudut.SetTileMethod('H', LuoHirvioSpawn); 
    3038        ruudut.Execute(20, 20); 
    31          
     39 
     40        Timer ajastin = new Timer(); 
     41        ajastin.Interval = 3.0; 
     42        ajastin.Timeout += LisaaHirvio; 
     43        ajastin.Start(); 
     44 
    3245 
    3346        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 
    3447        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
    3548    } 
     49 
     50    private void LuoHirvioSpawn(Vector paikka, double leveys, double korkeus ) 
     51    { 
     52        HirvioSpawn = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     53        HirvioSpawn.Color = Color.AshGray; 
     54        HirvioSpawn.Position = paikka; 
     55    } 
     56 
    3657    void LuoPalikka(Vector paikka, double leveys, double korkeus) 
    3758    { 
     
    5273    void LuoPelaaja(Vector paikka, double leveys, double korkeus) 
    5374    { 
    54         pelaaja = new PhysicsObject(leveys+40, korkeus+20); 
     75        pelaaja = new PhysicsObject(leveys + 30, korkeus + 10); 
    5576        pelaaja.Shape = Shape.Rectangle; 
    5677        pelaaja.Color = Color.DarkBlue; 
    5778        pelaaja.Position = paikka; 
    5879        pelaaja.Image = pelaajankuva; 
     80        pelaaja.LinearDamping = 0.8;  
    5981        pelaaja.CanRotate = false; 
    60          
     82 
    6183        Add(pelaaja); 
    6284 
    6385        Keyboard.Listen(Key.A, ButtonState.Down, 
    64             LiikutaPelaajaa, null, new Vector(-100, 0)); 
     86            LiikutaPelaajaa, null, new Vector(-50, 0)); 
    6587        Keyboard.Listen(Key.D, ButtonState.Down, 
    66            LiikutaPelaajaa, null, new Vector(100, 0)); 
     88           LiikutaPelaajaa, null, new Vector(50, 0)); 
    6789        Keyboard.Listen(Key.W, ButtonState.Down, 
    68            LiikutaPelaajaa, null, new Vector(0, 100)); 
     90           LiikutaPelaajaa, null, new Vector(0, 50)); 
    6991        Keyboard.Listen(Key.S, ButtonState.Down, 
    70            LiikutaPelaajaa, null, new Vector(0, -100)); 
    71        
    72              
    73          
    74          
     92           LiikutaPelaajaa, null, new Vector(0, -50)); 
     93 
     94 
     95 
     96 
    7597    } 
    7698    void LiikutaPelaajaa(Vector vectori) 
    7799    { 
    78         pelaaja.Push(vectori); 
     100        pelaaja.Hit(vectori); 
    79101        pelaaja.Angle = vectori.Angle - Angle.FromDegrees(-90); 
    80102    } 
    81103    void LuoPelaaja2(Vector paikka, double leveys, double korkeus) 
    82104    { 
    83         pelaaja2 = new PhysicsObject(leveys + 40, korkeus + 20); 
     105        pelaaja2 = new PhysicsObject(leveys + 30, korkeus + 10); 
    84106        pelaaja2.Shape = Shape.Rectangle; 
    85107        pelaaja2.Color = Color.DarkBlue; 
    86108        pelaaja2.Position = paikka; 
    87109        pelaaja2.Image = pelaajan2kuva; 
     110        pelaaja2.LinearDamping = 0.8; 
    88111        pelaaja2.CanRotate = false; 
    89112        Add(pelaaja2); 
    90113 
    91          
     114 
    92115 
    93116        Keyboard.Listen(Key.Left, ButtonState.Down, 
    94             LiikutaPelaajaa2, null, new Vector(-100, 0)); 
     117            LiikutaPelaajaa2, null, new Vector(-50, 0)); 
    95118        Keyboard.Listen(Key.Right, ButtonState.Down, 
    96            LiikutaPelaajaa2, null, new Vector(100, 0)); 
     119           LiikutaPelaajaa2, null, new Vector(50, 0)); 
    97120        Keyboard.Listen(Key.Up, ButtonState.Down, 
    98            LiikutaPelaajaa2, null, new Vector(0, 100)); 
     121           LiikutaPelaajaa2, null, new Vector(0, 50)); 
    99122        Keyboard.Listen(Key.Down, ButtonState.Down, 
    100            LiikutaPelaajaa2, null, new Vector(0, -100)); 
     123           LiikutaPelaajaa2, null, new Vector(0, -50)); 
    101124 
    102125 
     
    105128    void LiikutaPelaajaa2(Vector vectori) 
    106129    { 
    107         pelaaja2.Push(vectori); 
     130        pelaaja2.Hit(vectori); 
    108131        pelaaja2.Angle = vectori.Angle - Angle.FromDegrees(-90); 
    109132    } 
     133    void LuoPuu(Vector paikka, double leveys, double korkeus) 
     134    { 
     135        PhysicsObject puu = PhysicsObject.CreateStaticObject(leveys + 50, korkeus + 150, Shape.FromImage(puunkuva)); 
     136        puu.IgnoresCollisionResponse = true; 
     137        puu.Position = paikka; 
     138        puu.Image = puunkuva; 
     139        Add(puu,2); 
     140    } 
     141    void LisaaHirvio() 
     142    { 
     143        PhysicsObject hirvio = new PhysicsObject(30, 30); 
     144        hirvio.Position = HirvioSpawn.Position; 
     145        hirvio.Shape = Shape.FromImage(hirvionkuva); 
     146        hirvio.Image = hirvionkuva; 
     147        hirvio.CanRotate = true; 
     148        Add(hirvio); 
     149        FollowerBrain seuraajanAivot = new FollowerBrain(pelaaja, pelaaja2); 
     150        seuraajanAivot.Speed = 50;             
     151     //   seuraajanAivot.DistanceFar = 60;           
     152     //   seuraajanAivot.DistanceClose = 50;          
     153       // seuraajanAivot.StopWhenTargetClose = true; 
     154        hirvio.Brain = seuraajanAivot; 
     155    } 
    110156} 
Note: See TracChangeset for help on using the changeset viewer.