Changeset 1085 for 2010/27


Ignore:
Timestamp:
2010-07-06 10:29:10 (13 years ago)
Author:
paaaanro
Message:

peli valmis

File:
1 edited

Legend:

Unmodified
Added
Removed
  • 2010/27/malirola/Pong/Peli.cs

    r1078 r1085  
    1313    PhysicsObject maila2; 
    1414 
     15    PhysicsObject vasenReuna; 
     16    PhysicsObject oikeaReuna; 
     17 
     18    IntMeter pelaajan1Pisteet; 
     19    IntMeter pelaajan2Pisteet; 
     20 
    1521    protected override void Begin() 
    1622    { 
    1723        LuoKentta(); 
    1824        AsetaOhjaimet(); 
     25        LisaaLaskurit(); 
    1926        AloitaPeli(); 
    2027    } 
     
    3037        pallo.Hit(impulssi); 
    3138 
     39        AddCollisionHandler(pallo, KasittelePallonTormays); 
     40 
    3241        maila1 = LuoMaila ( Level.Left + 20.0, 0.0 ); 
    3342        maila2 = LuoMaila ( Level.Right - 20.0, 0.0 ); 
    3443 
    35         Level.CreateBorders(1.0, false); 
    36         pallo.Restitution = 1.0; 
     44        vasenReuna = Level.CreateLeftBorder(); 
     45        vasenReuna.Restitution = 1.0; 
     46        vasenReuna.IsVisible = false; 
     47        oikeaReuna = Level.CreateRightBorder(); 
     48        oikeaReuna.Restitution = 1.0; 
     49        oikeaReuna.IsVisible = false; 
     50        PhysicsObject ylaReuna = Level.CreateTopBorder(); 
     51        ylaReuna.Restitution = 1.0; 
     52        ylaReuna.IsVisible = false; 
     53        PhysicsObject alaReuna = Level.CreateBottomBorder(); 
     54        alaReuna.Restitution = 1.0; 
     55        alaReuna.IsVisible = false; 
     56 
    3757        Level.BackgroundColor = Color.ForestGreen; 
     58 
    3859        Camera.ZoomToLevel(); 
    3960    } 
     
    6182        Keyboard.Listen(Key.A, ButtonState.Down, AsetaNopeus, "Pelaaja 1: Liikuta mailaa ylös", maila1, nopeusYlos); 
    6283        Keyboard.Listen(Key.A, ButtonState.Released, AsetaNopeus, null, maila1, Vector.Zero ); 
    63         Keyboard.Listen(Key.Z, ButtonState.Down, AsetaNopeus, "Pelaaja 1: Liikuta mailaa alas", maila1); 
     84        Keyboard.Listen(Key.Z, ButtonState.Down, AsetaNopeus, "Pelaaja 1: Liikuta mailaa alas", maila1, nopeusAlas); 
    6485        Keyboard.Listen(Key.Z, ButtonState.Released, AsetaNopeus, null, maila1, Vector.Zero); 
    6586 
    66         Keyboard.Listen(Key.Up, ButtonState.Down, AsetaNopeus, "Pelaaja 2: Liikuta mailaa ylös", maila2); 
     87        Keyboard.Listen(Key.Up, ButtonState.Down, AsetaNopeus, "Pelaaja 2: Liikuta mailaa ylös", maila2, nopeusYlos); 
    6788        Keyboard.Listen(Key.Up, ButtonState.Released, AsetaNopeus, null, maila2, Vector.Zero); 
    68         Keyboard.Listen(Key.Down, ButtonState.Down, AsetaNopeus, "Pelaaja 2: Liikuta mailaa alas", maila2); 
     89        Keyboard.Listen(Key.Down, ButtonState.Down, AsetaNopeus, "Pelaaja 2: Liikuta mailaa alas", maila2, nopeusAlas); 
    6990        Keyboard.Listen(Key.Down, ButtonState.Released, AsetaNopeus, null, maila2, Vector.Zero); 
    7091 
    7192        Keyboard.Listen(Key.F1, ButtonState.Down, ShowControlHelp, "Näytä ohjeet"); 
    7293        Keyboard.Listen(Key.Escape, ButtonState.Down, Exit, "Poistu"); 
     94 
     95        ControllerOne.Listen(Button.DPadUp, ButtonState.Down, AsetaNopeus, "Liikuta mailaa ylös", maila1, nopeusYlos); 
     96        ControllerOne.Listen(Button.DPadUp, ButtonState.Released, AsetaNopeus, null, maila1, Vector.Zero); 
     97        ControllerOne.Listen(Button.DPadDown, ButtonState.Down, AsetaNopeus, "Liikuta mailaa alas", maila1, nopeusAlas); 
     98        ControllerOne.Listen(Button.DPadDown, ButtonState.Released, AsetaNopeus, null, maila1, Vector.Zero); 
     99 
     100        ControllerTwo.Listen(Button.DPadUp, ButtonState.Down, AsetaNopeus, "Liikuta mailaa ylös", maila2, nopeusYlos); 
     101        ControllerTwo.Listen(Button.DPadUp, ButtonState.Released, AsetaNopeus, null, maila2, Vector.Zero); 
     102        ControllerTwo.Listen(Button.DPadDown, ButtonState.Down, AsetaNopeus, "Liikuta mailaa alas", maila2, nopeusAlas); 
     103        ControllerTwo.Listen(Button.DPadDown, ButtonState.Released, AsetaNopeus, null, maila2, Vector.Zero); 
     104 
     105        ControllerOne.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu"); 
     106        ControllerTwo.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu"); 
     107 
    73108    } 
    74109 
     
    114149    } 
    115150 
     151    void LisaaLaskurit() 
     152    { 
     153        pelaajan1Pisteet = LuoPisteLaskuri(Screen.Left + 100.0, Screen.Top - 100.0); 
     154        pelaajan2Pisteet = LuoPisteLaskuri(Screen.Right - 100.0, Screen.Top - 100.0); 
     155    } 
     156 
     157    IntMeter LuoPisteLaskuri(double x, double y) 
     158    { 
     159        IntMeter laskuri = new IntMeter(0); 
     160        laskuri.MaxValue = 10; 
     161        Label naytto = new Label(); 
     162        naytto.BindTo(laskuri); 
     163        naytto.X = x; 
     164        naytto.Y = y; 
     165        naytto.TextColor = Color.White; 
     166        Add(naytto); 
     167        return laskuri; 
     168    } 
     169 
     170    void KasittelePallonTormays(PhysicsObject pallo, PhysicsObject kohde) 
     171    { 
     172        if (kohde == oikeaReuna) 
     173        { 
     174            pelaajan1Pisteet.Value += 1; 
     175        } 
     176        else if (kohde == vasenReuna) 
     177        { 
     178            pelaajan2Pisteet.Value += 1; 
     179        } 
     180 
     181    } 
     182 
    116183 
    117184} 
Note: See TracChangeset for help on using the changeset viewer.