Changeset 3910 for 2012/11-17


Ignore:
Timestamp:
2012-12-08 14:58:56 (7 years ago)
Author:
jypeleht
Message:
 
Location:
2012/11-17/TuukkaT
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • 2012/11-17/TuukkaT/Delta/Delta/Delta.cs

    r3882 r3910  
    1616    PlatformCharacter pelaaja2; 
    1717    PhysicsObject kasi2; 
     18    PhysicsObject kasi; 
    1819 
    1920    Image pelaajanKuva = LoadImage("norsu"); 
    2021    Image tahtiKuva = LoadImage("tahti"); 
    21  
     22     
     23    IntMeter pisteLaskuri; 
     24    IntMeter pisteLaskuri2; 
     25     
    2226    SoundEffect maaliAani = LoadSoundEffect("maali"); 
    2327 
    2428    public override void Begin() 
    2529    { 
     30        LuoPistelaskuri(); 
    2631        Gravity = new Vector(0, -1000); 
    2732 
     
    3338        Camera.StayInLevel = true; 
    3439    } 
     40 
    3541 
    3642    void LuoKentta() 
     
    4652    } 
    4753 
     54     
    4855    void LisaaTaso(Vector paikka, double leveys, double korkeus) 
    4956    { 
     
    5360        Add(taso); 
    5461    } 
     62 
    5563 
    5664    void LisaaTahti(Vector paikka, double leveys, double korkeus) 
     
    6472    } 
    6573 
     74 
    6675    void LisaaPelaaja(Vector paikka, double leveys, double korkeus) 
    6776    { 
     
    7079        pelaaja1.Mass = 4.0; 
    7180        pelaaja1.Image = pelaajanKuva; 
     81        pelaaja1.CollisionIgnoreGroup = 1; 
    7282        AddCollisionHandler(pelaaja1, "tahti", TormaaTahteen); 
    7383        Add(pelaaja1); 
    7484    } 
    7585 
     86     
    7687    void LisaaPelaaja2(Vector paikka, double leveys, double korkeus) 
    7788    { 
     
    8596    } 
    8697 
     98     
    8799    void LisaaNappaimet() 
    88100    { 
     
    93105        Keyboard.Listen(Key.Right, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, nopeus); 
    94106        Keyboard.Listen(Key.Up, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 
     107        Keyboard.Listen(Key.K, ButtonState.Pressed, Lyo, "Lyönti1", pelaaja1); 
     108 
    95109        Keyboard.Listen(Key.A, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja2, -nopeus); 
    96110        Keyboard.Listen(Key.D, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja2, nopeus); 
    97111        Keyboard.Listen(Key.W, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja2, hyppyNopeus); 
    98         Keyboard.Listen(Key.G, ButtonState.Pressed, Lyo, "Lyönti1", pelaaja2); 
     112        Keyboard.Listen(Key.G, ButtonState.Pressed, Lyo2, "Lyönti1", pelaaja2); 
    99113 
    100114        ControllerOne.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu pelistä"); 
     
    107121    } 
    108122 
     123     
    109124    void Liikuta(PlatformCharacter hahmo, double nopeus) 
    110125    { 
     
    112127    } 
    113128 
     129     
    114130    void Hyppaa(PlatformCharacter hahmo, double nopeus) 
    115131    { 
     
    117133    } 
    118134 
     135     
    119136    void Lyo(PlatformCharacter hahmo) 
    120137    { 
     138        if (kasi != null) kasi.Destroy(); 
     139        kasi = new PhysicsObject(100.0, 20.0); 
     140        kasi.Shape = Shape.Rectangle; 
     141        kasi.X = hahmo.Left -20.0; 
     142        kasi.Y = hahmo.Y; 
     143        kasi.Restitution = 1.0; 
     144        kasi.CanRotate = false;  
     145        //kasi2.IgnoresCollisionResponse = true; 
     146        kasi.CollisionIgnoreGroup = 1; 
     147        AddCollisionHandler(kasi, pelaaja2, Pelaajan1kasiTormaaPelaajaan2); 
     148        AxleJoint liitos = new AxleJoint(pelaaja1, kasi);  
     149        Add(liitos); 
     150        Timer.SingleShot(0.2, PoistaKasi); 
     151    } 
     152 
     153 
     154    void Lyo2(PlatformCharacter hahmo) 
     155    { 
    121156        if (kasi2 != null) kasi2.Destroy(); 
    122         kasi2 = PhysicsObject.CreateStaticObject(100.0, 20.0); 
     157        kasi2 = new PhysicsObject(100.0, 20.0); 
    123158        kasi2.Shape = Shape.Rectangle; 
    124         kasi2.X = hahmo.Left + 20.0; 
     159        kasi2.X = hahmo.Right + 20.0; 
    125160        kasi2.Y = hahmo.Y; 
    126161        kasi2.Restitution = 1.0; 
     162        kasi2.CanRotate = false; 
    127163        //kasi2.IgnoresCollisionResponse = true; 
    128164        kasi2.CollisionIgnoreGroup = 2; 
    129         AddCollisionHandler(pelaaja1,kasi2, Pelaajan2kasiTormaaPelaajaan1); 
    130         //AxleJoint liitos = new AxleJoint(pelaaja2, kasi2); 
    131         Add(kasi2); 
    132  
    133     } 
    134  
    135     void Pelaajan2kasiTormaaPelaajaan1(PhysicsObject pelaaja1, PhysicsObject kasi) 
    136     { 
     165        AddCollisionHandler(kasi2, pelaaja1, Pelaajan2kasiTormaaPelaajaan1); 
     166        AxleJoint liitos = new AxleJoint(pelaaja2, kasi2); 
     167        Add(liitos); 
     168        Timer.SingleShot(0.2, PoistaKasi2); 
     169    } 
     170     
     171    void PoistaKasi2() 
     172    { 
     173        kasi2.Destroy(); 
     174    } 
     175 
     176    void PoistaKasi() 
     177    { 
     178        kasi.Destroy(); 
     179     } 
     180 
     181    void Pelaajan2kasiTormaaPelaajaan1(PhysicsObject kasi2, PhysicsObject pelaaja1) 
     182    { 
     183        pisteLaskuri.Value -= 3; 
     184 
    137185        MessageDisplay.Add("Pelaaja 2 osui pelaajaan 1!!!"); 
     186        PoistaKasi2(); 
     187    } 
     188 
     189    void Pelaajan1kasiTormaaPelaajaan2(PhysicsObject kasi, PhysicsObject pelaaja2) 
     190    { 
     191        pisteLaskuri2.Value -= 3; 
     192 
     193        MessageDisplay.Add("Pelaaja 1 osui pelaajaan 2!!!"); 
     194        PoistaKasi(); 
    138195    } 
    139196 
     
    144201        tahti.Destroy(); 
    145202    } 
     203 
     204 
     205 
     206    void LuoPistelaskuri() 
     207    { 
     208        pisteLaskuri = new IntMeter(100); 
     209 
     210        Label pisteNaytto = new Label(); 
     211        pisteNaytto.X = Screen.Right -100; 
     212        pisteNaytto.Y = Screen.Top - 100; 
     213        pisteNaytto.TextColor = Color.Black; 
     214        pisteNaytto.Color = Color.White; 
     215 
     216        pisteNaytto.BindTo(pisteLaskuri); 
     217        Add(pisteNaytto); 
     218 
     219 
     220        pisteLaskuri2 = new IntMeter(100); 
     221 
     222        Label pisteNaytto2 = new Label(); 
     223        pisteNaytto2.X = Screen.Left + 100; 
     224        pisteNaytto2.Y = Screen.Top - 100; 
     225        pisteNaytto2.TextColor = Color.Black; 
     226        pisteNaytto2.Color = Color.White; 
     227 
     228        pisteNaytto2.BindTo(pisteLaskuri2); 
     229        Add(pisteNaytto2); 
     230 
     231 
     232    } 
    146233} 
  • 2012/11-17/TuukkaT/Delta/DeltaContent/kentta1.txt

    r3882 r3910  
    1010                 
    1111                 
    12  p            P  
     12 P            p  
    1313################ 
Note: See TracChangeset for help on using the changeset viewer.