Changeset 9149


Ignore:
Timestamp:
2017-07-27 10:36:38 (2 years ago)
Author:
npo17_65
Message:

Alkuvalikko

Location:
2017/30/HugoE/HanniAndHoo/HanniAndHoo/HanniAndHoo
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • 2017/30/HugoE/HanniAndHoo/HanniAndHoo/HanniAndHoo/HanniAndHoo.cs

    r9142 r9149  
    1212    Image HoonKuva = LoadImage("Hoo"); 
    1313 
    14  
    15  
    16  
     14        
    1715    PlasmaCannon HanninAse; 
    1816    Cannon HoonAse; 
     
    2422    public override void Begin() 
    2523    { 
    26         LuoKentta(); 
    27         LuoPelaajat(); 
    28         LuoNappaimet(); 
    29  
     24        AlkuValikko(); 
    3025    } 
    3126 
    3227    void LuoPelaajat() 
    3328    { 
    34         Hanni = new PeliUkko(80.0, 80.0); 
     29        Hanni = new PeliUkko(80.0, 80.0);         
    3530        Hanni.X = Level.Left + 100.0; 
    3631        Hanni.Y = 0.0; 
     
    4035        Hanni.CanRotate = false; 
    4136        Hanni.Tag = "pelaaja"; 
    42         Add(Hanni);        
     37        Add(Hanni); 
    4338        HanninAse = new PlasmaCannon(60, 20); 
    4439        HanninAse.ProjectileCollision = AmmusOsui; 
     
    6560        AddCollisionHandler(Hoo, Hanni, Tormaa); 
    6661    } 
     62 
     63    void AlkuValikko() 
     64    { 
     65        MultiSelectWindow alkuValikko = new MultiSelectWindow("Pelin alkuvalikko", 
     66        "Aloita peli", "Lopeta"); 
     67        Level.Background.Color = Color.Gray; 
     68        Add(alkuValikko); 
     69        alkuValikko.AddItemHandler(0, AloitaPeli); 
     70        alkuValikko.AddItemHandler(1, Exit); 
     71 
     72 
     73    } 
     74 
     75    void AloitaPeli() 
     76    { 
     77        ClearAll(); 
     78        LuoKentta(); 
     79        LuoPelaajat(); 
     80        LuoNappaimet(); 
     81    } 
     82 
     83 
    6784    void Tormaa(PhysicsObject Tormaaja, PhysicsObject Kohde) 
    68     {                 
     85    { 
    6986        if (Kohde.Tag != "pelaaja") return; 
    7087        PeliUkko pu = (PeliUkko)Kohde; 
    7188        pu.Elamalaskuri.AddValue(-1); 
    72  
    73  
    7489    } 
    7590 
     
    7994        if (Kohde.Tag != "pelaaja") return; 
    8095        PeliUkko pu = (PeliUkko)Kohde; 
    81         pu.Elamalaskuri.AddValue(-2); 
    82          
     96        pu.Elamalaskuri.AddValue(-4); 
     97 
    8398    } 
    84     void Ammus2Osui(PhysicsObject Ammus2, PhysicsObject Kohde) 
     99    void Ammus2Osui(PhysicsObject Ammus2, PhysicsObject Kohde2) 
    85100    { 
    86101        Ammus2.Destroy(); 
    87         if (Kohde.Tag != "pelaaja") return; 
    88         PeliUkko pu = (PeliUkko)Kohde; 
    89         pu.Elamalaskuri.AddValue(-4); 
     102        if (Kohde2.Tag != "pelaaja") return; 
     103        PeliUkko pu = (PeliUkko)Kohde2; 
     104        pu.Elamalaskuri.AddValue(-7); 
    90105    } 
    91106 
     
    96111        Keyboard.Listen(Key.A, ButtonState.Down, Kavely, null, Hanni, -500.0); 
    97112        Keyboard.Listen(Key.Up, ButtonState.Pressed, Hyppy, null, Hoo, 1000.0); 
    98         Keyboard.Listen(Key.Right, ButtonState.Down, Kavely, null, Hoo, 500.0); 
    99         Keyboard.Listen(Key.Left, ButtonState.Down, Kavely, null, Hoo, -500.0); 
     113        Keyboard.Listen(Key.Right, ButtonState.Down, Kavely, null, Hoo, 250.0); 
     114        Keyboard.Listen(Key.Left, ButtonState.Down, Kavely, null, Hoo, -250.0); 
    100115        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 
    101116 
     
    105120        Gravity = new Vector(0.0, -800.0); 
    106121        Camera.Zoom(1.2); 
    107         PhysicsObject AlaReuna = Level.CreateBottomBorder(0.0, false); 
    108         PhysicsObject OikeaReuna = Level.CreateRightBorder(0.0, false); 
    109         PhysicsObject VasenReuna = Level.CreateLeftBorder(0.0, false); 
    110         PhysicsObject YläReuna = Level.CreateTopBorder(0.0, false); 
     122        Level.Background.Color = Color.Purple; 
     123        PhysicsObject AlaReuna = Level.CreateBottomBorder(0.0, true); 
     124        PhysicsObject OikeaReuna = Level.CreateRightBorder(0.0, true); 
     125        PhysicsObject VasenReuna = Level.CreateLeftBorder(0.0, true); 
     126        PhysicsObject YläReuna = Level.CreateTopBorder(0.0, true); 
    111127    } 
    112128 
     
    133149            Ammus.MaximumLifetime = TimeSpan.FromSeconds(2.0); 
    134150        } 
    135  
    136151    } 
    137152 
     
    151166 
    152167 
     168 
     169 
     170 
     171    class PeliUkko : PlatformCharacter 
     172    { 
     173        public IntMeter Elamalaskuri = new IntMeter(40, 0, 40); 
     174 
     175        public PeliUkko(double leveys, double korkeus) 
     176        : base(leveys, korkeus) 
     177        { 
     178            Elamalaskuri.LowerLimit += delegate { this.Destroy(); }; 
     179        } 
     180    } 
     181 
     182 
    153183} 
    154184 
    155185 
    156 class PeliUkko : PlatformCharacter 
    157 { 
    158     public IntMeter Elamalaskuri = new IntMeter(20, 0, 20); 
    159  
    160         public PeliUkko(double leveys, double korkeus) 
    161         : base(leveys, korkeus) 
    162     { 
    163         Elamalaskuri.LowerLimit += delegate { this.Destroy(); }; 
    164     }    
    165 } 
    166186 
    167187 
     188 
Note: See TracChangeset for help on using the changeset viewer.