Ignore:
Timestamp:
2016-07-28 09:51:28 (4 years ago)
Author:
jotapoti
Message:

2 pelaajaa toteutettuna yhdella aliohjelmalla

File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2016/30/luennot/Tasoloikkailu/Tasoloikkailu/Tasoloikkailu/Tasoloikkailu.cs

    r8178 r8179  
    1616 
    1717    PlatformCharacter pelaaja1; 
     18    PlatformCharacter pelaaja2; 
    1819 
    1920    Image pelaajanKuva = LoadImage("norsu"); 
     
    7980        kentta.SetTileMethod('#', LisaaTaso); 
    8081        kentta.SetTileMethod('*', LisaaTahti); 
    81         kentta.SetTileMethod('N', LisaaPelaaja); 
     82        kentta.SetTileMethod('1', LisaaPelaaja1); 
     83        kentta.SetTileMethod('2', LisaaPelaaja2); 
    8284        kentta.SetTileMethod('m', LisaaMiina); 
    8385        kentta.SetTileMethod('O', LisaaOvi); 
     
    130132    } 
    131133 
    132     void LisaaPelaaja(Vector paikka, double leveys, double korkeus) 
    133     { 
    134         pelaaja1 = new PlatformCharacter(leveys, korkeus); 
    135         pelaaja1.Position = paikka; 
    136         pelaaja1.Mass = 4.0; 
    137         pelaaja1.Image = pelaajanKuva; 
    138         AddCollisionHandler(pelaaja1, "tahti", TormaaTahteen); 
    139         //AddCollisionHandler(pelaaja1, "miina", CollisionHandler.ExplodeTarget(300.0, true)); 
    140         AddCollisionHandler(pelaaja1, "miina", RajaytaMiina); 
    141         AddCollisionHandler(pelaaja1, "ovi", MeneSeuraavaanKenttaan); 
    142         Add(pelaaja1); 
    143     } 
    144  
     134    void LisaaPelaaja1(Vector paikka, double leveys, double korkeus) 
     135    { 
     136        pelaaja1 = LisaaPelaaja(paikka, leveys, korkeus); 
     137    } 
     138 
     139    void LisaaPelaaja2(Vector paikka, double leveys, double korkeus) 
     140    { 
     141        pelaaja2 = LisaaPelaaja(paikka, leveys, korkeus); 
     142    } 
     143 
     144    PlatformCharacter LisaaPelaaja(Vector paikka, double leveys, double korkeus) 
     145    { 
     146        PlatformCharacter pelaaja = new PlatformCharacter(leveys, korkeus); 
     147        pelaaja.Position = paikka; 
     148        pelaaja.Mass = 4.0; 
     149        pelaaja.Image = pelaajanKuva; 
     150        AddCollisionHandler(pelaaja, "tahti", TormaaTahteen); 
     151        //AddCollisionHandler(pelaaja, "miina", CollisionHandler.ExplodeTarget(300.0, true)); 
     152        AddCollisionHandler(pelaaja, "miina", RajaytaMiina); 
     153        AddCollisionHandler(pelaaja, "ovi", MeneSeuraavaanKenttaan); 
     154        Add(pelaaja); 
     155        return pelaaja; 
     156    } 
    145157    void MeneSeuraavaanKenttaan(PhysicsObject pelaaja, PhysicsObject ovi) 
    146158    { 
     
    190202        Keyboard.Listen(Key.Up, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 
    191203 
     204        Keyboard.Listen(Key.A, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja2, -nopeus); 
     205        Keyboard.Listen(Key.D, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja2, nopeus); 
     206        Keyboard.Listen(Key.W, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja2, hyppyNopeus); 
     207 
    192208        ControllerOne.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu pelistä"); 
    193209 
Note: See TracChangeset for help on using the changeset viewer.