Changeset 7590 for 2016/26


Ignore:
Timestamp:
2016-06-30 11:30:26 (3 years ago)
Author:
mijuntti
Message:
 
Location:
2016/26/MikkoJ
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • 2016/26/MikkoJ/NakkiPaukku/NakkiPaukku/NakkiPaukku/NakkiPaukku.cs

    r7579 r7590  
    1111    Image kenttamuoto = LoadImage("Kentta.png"); 
    1212 
    13     PhysicsObject pelaaja1; 
    14     PhysicsObject pelaaja2; 
    15     PhysicsObject pelaaja3; 
    16     PhysicsObject pelaaja4; 
     13    PhysicsObject[] pelaajat = new PhysicsObject[4]; 
    1714 
    18     Vector nopeusYlos = new Vector(0, 10); 
    19     Vector nopeusAlas = new Vector(0, -10); 
    20     Vector nopeusVasen = new Vector(-10, 0); 
    21     Vector nopeusOikea = new Vector(10, 0); 
     15    const double ukkelinopeus = 250; 
     16    Vector nopeusYlos = new Vector(0, ukkelinopeus); 
     17    Vector nopeusAlas = new Vector(0, -ukkelinopeus); 
     18    Vector nopeusVasen = new Vector(-ukkelinopeus, 0); 
     19    Vector nopeusOikea = new Vector(ukkelinopeus, 0); 
    2220 
    2321    public override void Begin() 
     
    2523        LuoMailma(); 
    2624        AsetaOhjaimet(); 
     25         
    2726 
    2827 
     
    3534         
    3635        ruudut.SetTileMethod(Color.Black, LuoTaso); 
    37         ruudut.SetTileMethod(Color.FromHexCode("FFEA00"), LuoPelaaja, pelaaja1); 
    38         ruudut.SetTileMethod(Color.Red, LuoPelaaja, pelaaja2); 
    39         ruudut.SetTileMethod(Color.FromHexCode("0026FF"), LuoPelaaja, pelaaja3); 
    40         ruudut.SetTileMethod(Color.FromHexCode("4CFF00"), LuoPelaaja, pelaaja4); 
     36        ruudut.SetTileMethod(Color.FromHexCode("FFEA00"), LuoPelaaja, 0); 
     37        ruudut.SetTileMethod(Color.Red, LuoPelaaja, 1); 
     38        ruudut.SetTileMethod(Color.FromHexCode("0026FF"), LuoPelaaja, 2); 
     39        ruudut.SetTileMethod(Color.FromHexCode("4CFF00"), LuoPelaaja, 3); 
    4140         
    4241 
     
    5554        IsFullScreen = true; 
    5655    } 
    57     void LuoPelaaja(Vector paikka, double leveys, double korkeus, PhysicsObject pelaajaM) 
     56    void LuoPelaaja(Vector paikka, double leveys, double korkeus, int paikkaNumero) 
    5857    { 
    59         PhysicsObject pelaaja = PhysicsObject.CreateStaticObject(leveys, korkeus); 
     58        PhysicsObject pelaaja = new PhysicsObject(leveys * 0.65, korkeus * 0.65); 
    6059        pelaaja.Shape = Shape.Circle; 
    6160        pelaaja.X = paikka.X; 
    62         pelaaja.Y = paikka.Y;        //KORJAA 
     61        pelaaja.Y = paikka.Y; 
    6362        pelaaja.Color = Color.HotPink; 
     63        pelaaja.LinearDamping = 0.1; 
    6464        Add(pelaaja); 
    65         pelaajaM = pelaaja; //Luo pelaajat 1, 2, 3 & 4 nimisiin muuttujiin 
     65        pelaajat[paikkaNumero] = pelaaja; //Luo pelaajat 1, 2, 3 & 4 nimisiin muuttujiin 
    6666    } 
    6767    void AsetaOhjaimet() 
    6868    { 
    69         Keyboard.Listen(Key.W,          ButtonState.Down, AsetaNopeus,"", pelaaja1, nopeusYlos);  
    70         Keyboard.Listen(Key.S,          ButtonState.Down, AsetaNopeus,"", pelaaja1, nopeusAlas); 
    71         Keyboard.Listen(Key.A,          ButtonState.Down, AsetaNopeus,"", pelaaja1, nopeusVasen); 
    72         Keyboard.Listen(Key.D,          ButtonState.Down, AsetaNopeus,"", pelaaja1, nopeusOikea); 
    73         Keyboard.Listen(Key.Up,         ButtonState.Down, AsetaNopeus,"", pelaaja2, nopeusYlos); 
    74         Keyboard.Listen(Key.Down,       ButtonState.Down, AsetaNopeus,"", pelaaja2, nopeusAlas); 
    75         Keyboard.Listen(Key.Left,       ButtonState.Down, AsetaNopeus,"", pelaaja2, nopeusVasen); 
    76         Keyboard.Listen(Key.Right,      ButtonState.Down, AsetaNopeus,"", pelaaja2, nopeusOikea); 
    77         Keyboard.Listen(Key.NumPad8,    ButtonState.Down, AsetaNopeus,"", pelaaja3, nopeusYlos); 
    78         Keyboard.Listen(Key.NumPad5,    ButtonState.Down, AsetaNopeus,"", pelaaja3, nopeusAlas); 
    79         Keyboard.Listen(Key.NumPad4,    ButtonState.Down, AsetaNopeus,"", pelaaja3, nopeusVasen); 
    80         Keyboard.Listen(Key.NumPad6,    ButtonState.Down, AsetaNopeus,"", pelaaja3, nopeusOikea); 
    81         Keyboard.Listen(Key.I,          ButtonState.Down, AsetaNopeus,"", pelaaja4, nopeusYlos); 
    82         Keyboard.Listen(Key.K,          ButtonState.Down, AsetaNopeus,"", pelaaja4, nopeusAlas); 
    83         Keyboard.Listen(Key.J,          ButtonState.Down, AsetaNopeus,"", pelaaja4, nopeusVasen); 
    84         Keyboard.Listen(Key.L,          ButtonState.Down, AsetaNopeus,"", pelaaja4, nopeusOikea); 
     69        Keyboard.Listen(Key.S,          ButtonState.Down, AsetaNopeus,"", pelaajat[0], nopeusAlas); 
     70        Keyboard.Listen(Key.W,          ButtonState.Down, AsetaNopeus,"", pelaajat[0], nopeusYlos);  
     71        Keyboard.Listen(Key.A,          ButtonState.Down, AsetaNopeus,"", pelaajat[0], nopeusVasen); 
     72        Keyboard.Listen(Key.D,          ButtonState.Down, AsetaNopeus,"", pelaajat[0], nopeusOikea); 
     73        Keyboard.Listen(Key.Q,          ButtonState.Pressed, PudotaNakki, "", pelaajat[0]); 
    8574 
    86         Keyboard.Listen(Key.W,          ButtonState.Released, AsetaNopeus, null, pelaaja1, Vector.Zero); 
    87         Keyboard.Listen(Key.S,          ButtonState.Released, AsetaNopeus, null, pelaaja1, Vector.Zero); 
    88         Keyboard.Listen(Key.A,          ButtonState.Released, AsetaNopeus, null, pelaaja1, Vector.Zero); 
    89         Keyboard.Listen(Key.D,          ButtonState.Released, AsetaNopeus, null, pelaaja1, Vector.Zero); 
    90         Keyboard.Listen(Key.Up,         ButtonState.Released, AsetaNopeus, null, pelaaja2, Vector.Zero); 
    91         Keyboard.Listen(Key.Down,       ButtonState.Released, AsetaNopeus, null, pelaaja2, Vector.Zero); 
    92         Keyboard.Listen(Key.Left,       ButtonState.Released, AsetaNopeus, null, pelaaja2, Vector.Zero); 
    93         Keyboard.Listen(Key.Right,      ButtonState.Released, AsetaNopeus, null, pelaaja2, Vector.Zero); 
    94         Keyboard.Listen(Key.NumPad8,    ButtonState.Released, AsetaNopeus, null, pelaaja3, Vector.Zero); 
    95         Keyboard.Listen(Key.NumPad5,    ButtonState.Released, AsetaNopeus, null, pelaaja3, Vector.Zero); 
    96         Keyboard.Listen(Key.NumPad4,    ButtonState.Released, AsetaNopeus, null, pelaaja3, Vector.Zero); 
    97         Keyboard.Listen(Key.NumPad6,    ButtonState.Released, AsetaNopeus, null, pelaaja3, Vector.Zero); 
    98         Keyboard.Listen(Key.I,          ButtonState.Released, AsetaNopeus, null, pelaaja4, Vector.Zero); 
    99         Keyboard.Listen(Key.K,          ButtonState.Released, AsetaNopeus, null, pelaaja4, Vector.Zero); 
    100         Keyboard.Listen(Key.J,          ButtonState.Released, AsetaNopeus, null, pelaaja4, Vector.Zero); 
    101         Keyboard.Listen(Key.L,          ButtonState.Released, AsetaNopeus, null, pelaaja4, Vector.Zero); 
     75        Keyboard.Listen(Key.Up,         ButtonState.Down, AsetaNopeus,"", pelaajat[1], nopeusYlos); 
     76        Keyboard.Listen(Key.Down,       ButtonState.Down, AsetaNopeus,"", pelaajat[1], nopeusAlas); 
     77        Keyboard.Listen(Key.Left,       ButtonState.Down, AsetaNopeus,"", pelaajat[1], nopeusVasen); 
     78        Keyboard.Listen(Key.Right,      ButtonState.Down, AsetaNopeus,"", pelaajat[1], nopeusOikea); 
     79        Keyboard.Listen(Key.NumPad0,    ButtonState.Pressed, PudotaNakki, "", pelaajat[1]); 
     80 
     81        Keyboard.Listen(Key.NumPad8,    ButtonState.Down, AsetaNopeus,"", pelaajat[2], nopeusYlos); 
     82        Keyboard.Listen(Key.NumPad5,    ButtonState.Down, AsetaNopeus,"", pelaajat[2], nopeusAlas); 
     83        Keyboard.Listen(Key.NumPad4,    ButtonState.Down, AsetaNopeus,"", pelaajat[2], nopeusVasen); 
     84        Keyboard.Listen(Key.NumPad6,    ButtonState.Down, AsetaNopeus,"", pelaajat[2], nopeusOikea); 
     85        Keyboard.Listen(Key.NumPad7,    ButtonState.Pressed, PudotaNakki, "", pelaajat[2]); 
     86 
     87        Keyboard.Listen(Key.I,          ButtonState.Down, AsetaNopeus,"", pelaajat[3], nopeusYlos); 
     88        Keyboard.Listen(Key.K,          ButtonState.Down, AsetaNopeus,"", pelaajat[3], nopeusAlas); 
     89        Keyboard.Listen(Key.J,          ButtonState.Down, AsetaNopeus,"", pelaajat[3], nopeusVasen); 
     90        Keyboard.Listen(Key.L,          ButtonState.Down, AsetaNopeus,"", pelaajat[3], nopeusOikea); 
     91        Keyboard.Listen(Key.U,          ButtonState.Pressed, PudotaNakki,"", pelaajat[3]); 
     92         
     93        Keyboard.Listen(Key.W,          ButtonState.Released, AsetaNopeus, null, pelaajat[0], Vector.Zero); 
     94        Keyboard.Listen(Key.S,          ButtonState.Released, AsetaNopeus, null, pelaajat[0], Vector.Zero); 
     95        Keyboard.Listen(Key.A,          ButtonState.Released, AsetaNopeus, null, pelaajat[0], Vector.Zero); 
     96        Keyboard.Listen(Key.D,          ButtonState.Released, AsetaNopeus, null, pelaajat[0], Vector.Zero); 
     97        Keyboard.Listen(Key.Up,         ButtonState.Released, AsetaNopeus, null, pelaajat[1], Vector.Zero); 
     98        Keyboard.Listen(Key.Down,       ButtonState.Released, AsetaNopeus, null, pelaajat[1], Vector.Zero); 
     99        Keyboard.Listen(Key.Left,       ButtonState.Released, AsetaNopeus, null, pelaajat[1], Vector.Zero); 
     100        Keyboard.Listen(Key.Right,      ButtonState.Released, AsetaNopeus, null, pelaajat[1], Vector.Zero); 
     101        Keyboard.Listen(Key.NumPad8,    ButtonState.Released, AsetaNopeus, null, pelaajat[2], Vector.Zero); 
     102        Keyboard.Listen(Key.NumPad5,    ButtonState.Released, AsetaNopeus, null, pelaajat[2], Vector.Zero); 
     103        Keyboard.Listen(Key.NumPad4,    ButtonState.Released, AsetaNopeus, null, pelaajat[2], Vector.Zero); 
     104        Keyboard.Listen(Key.NumPad6,    ButtonState.Released, AsetaNopeus, null, pelaajat[2], Vector.Zero); 
     105        Keyboard.Listen(Key.I,          ButtonState.Released, AsetaNopeus, null, pelaajat[3], Vector.Zero); 
     106        Keyboard.Listen(Key.K,          ButtonState.Released, AsetaNopeus, null, pelaajat[3], Vector.Zero); 
     107        Keyboard.Listen(Key.J,          ButtonState.Released, AsetaNopeus, null, pelaajat[3], Vector.Zero); 
     108        Keyboard.Listen(Key.L,          ButtonState.Released, AsetaNopeus, null, pelaajat[3], Vector.Zero); 
     109         
    102110    } 
    103111    void AsetaNopeus(PhysicsObject pelaaja, Vector nopeus) 
    104112    { 
    105         pelaaja.Velocity = nopeus; 
     113        pelaaja.Hit(nopeus); 
     114    } 
     115    void PudotaNakki(PhysicsObject pelaaja) 
     116    { 
     117        PhysicsObject nakki = new PhysicsObject(1, 1); 
     118        nakki.Position = pelaaja.Position; 
     119        nakki.Color = Color.Blue; 
     120        Explosion rajahdys = new Explosion(5); 
     121        rajahdys.Position = pelaaja.Position; 
     122        rajahdys.Force = 0.0; 
     123 
     124        Add(rajahdys); 
     125        Add(nakki); 
    106126    } 
    107127} 
Note: See TracChangeset for help on using the changeset viewer.