Changeset 6011 for 2015/24


Ignore:
Timestamp:
2015-06-11 11:33:25 (4 years ago)
Author:
laaljoso
Message:
 
Location:
2015/24/AleksiS/CandyLand
Files:
2 added
6 edited

Legend:

Unmodified
Added
Removed
  • 2015/24/AleksiS/CandyLand/CandyLand/CandyLand/CandyLand.cs

    r5990 r6011  
    2222    SoundEffect maaliAani = LoadSoundEffect("maali"); 
    2323    Label pisteNaytto; 
     24    IntMeter pisteLaskuri; 
     25    DoubleMeter alaspainLaskuri; 
     26 
     27    Timer aikaLaskuri; 
     28 
     29    MultiSelectWindow alkuValikko; 
    2430 
    2531    public override void Begin() 
    2632    { 
    27         MultiSelectWindow alkuValikko = new MultiSelectWindow("Candy Land", "Pelaa", "Tietoa", "Lopeta"); 
     33        ClearAll(); 
     34         alkuValikko = new MultiSelectWindow("Candy Land", "Pelaa", "Info", "Lopeta"); 
    2835        Add(alkuValikko); 
    29         alkuValikko.AddItemHandler(1, Pelaa); 
    30         alkuValikko.AddItemHandler(2, i); 
    31         alkuValikko.AddItemHandler(3, Exit); 
     36        alkuValikko.AddItemHandler(0, Pelaa); 
     37        alkuValikko.AddItemHandler(1, Info); 
     38        alkuValikko.AddItemHandler(2, Exit); 
    3239    } 
    3340 
     
    3845 
    3946        LuoPisteLaskuri(); 
     47        LuoAikaLaskuri(); 
    4048 
    4149        LuoKentta(); 
     
    4755    } 
    4856 
    49     void i() 
    50     { 
    51         MessageDisplay.Add("Candy Land v. 1.0, Copyright 2015 Aleksi Soikkala. Candy Land on sekasorron tilassa. Kaikki karkit ovat loppuneet. Auta Candy Landin asukkaita karkkien keräämisessä ja puolusta kylää Candy Thiefiltä, jotta Candy Landin asukkaat voivat jatkaa elämäänsä normaalisti."); 
    52     } 
    53  
    54     List<Label> valikonKohdat; 
    55  
    56     void Valikko() 
    57     { 
    58         ClearAll(); 
    59  
    60         valikonKohdat = new List<Label>(); 
    61  
    62         Label kohta1 = new Label("Pelaa"); 
    63         kohta1.Position = new Vector(0, 40); 
    64         valikonKohdat.Add(kohta1); 
    65  
    66         Label kohta2 = new Label("i"); 
    67         kohta2.Position = new Vector(0, 0); 
    68         valikonKohdat.Add(kohta2); 
    69  
    70         Label kohta3 = new Label("Lopeta"); 
    71         kohta3.Position = new Vector(0, -40); 
    72         valikonKohdat.Add(kohta3); 
    73         foreach (Label valikonKohta in valikonKohdat) 
    74         { 
    75             Add(valikonKohta); 
    76         } 
    77  
    78         Mouse.ListenOn(kohta1, MouseButton.Left, ButtonState.Pressed, Pelaa, null); 
    79         Mouse.ListenOn(kohta2, MouseButton.Left, ButtonState.Pressed, i, null); 
    80         Mouse.ListenOn(kohta3, MouseButton.Left, ButtonState.Pressed, Exit, null); 
    81  
    82         Mouse.ListenMovement(1.0, ValikossaLiikkuminen, null); 
    83  
    84     } 
    85  
    86         void ValikossaLiikkuminen(AnalogState hiirenTila) 
    87         { 
    88             foreach (Label kohta in valikonKohdat) 
    89             { 
    90                 if (mouseIsCursorOn(kohta)) 
    91                 { 
    92                     kohta.TextColor = Color.White; 
    93                 } 
    94                 else 
    95                 { 
    96                     kohta.TextColor = Color.Black; 
    97                 } 
    98             } 
    99  
    100     } 
    101  
    102     void Pelaa() 
    103     { 
    104     } 
    105  
    106     void i() 
    107     { 
     57    void Info() 
     58    { 
     59        MessageDisplay.Add("Candy Land v. 1.0"); 
     60        MessageDisplay.Add("Copyright 2015 Aleksis Games by Aleksi Soikkala"); 
     61        MessageDisplay.Add("Candy Land on sekasorron tilassa."); 
     62        MessageDisplay.Add("Kaikki karkit ovat loppuneet."); 
     63        MessageDisplay.Add("Auta Candy Landin asukkaita karkkien keräämisessä ja puolusta kylää Candy Thiefiltä, jotta Candy Landin asukkaat voivat jatkaa elämäänsä normaalisti."); 
     64        MessageDisplay.Add("Lisätiedot ja päivitykset on saatavilla osoitteessa http://aleksis-games.webnode.fi"); 
     65        Timer.SingleShot(1500000000.0, Begin); 
     66        Add(alkuValikko); 
    10867    } 
    10968 
     
    12180        Level.Background.CreateGradient(Color.White, Color.SkyBlue); 
    12281    } 
    123      
    124     IntMeter pisteLaskuri; 
     82 
     83 
    12584 
    12685    void LuoPisteLaskuri() 
    12786    { 
    128         pisteLaskuri = new IntMeter(0,0,0); 
     87        pisteLaskuri = new IntMeter(0, 0, 0); 
    12988 
    13089        pisteNaytto = new Label(); 
     
    13493        pisteNaytto.Color = Color.White; 
    13594        pisteNaytto.Title = "Karkit"; 
    136          
     95 
    13796 
    13897 
     
    141100 
    142101    } 
     102 
     103        void LuoAikaLaskuri() 
     104        { 
     105            alaspainLaskuri = new DoubleMeter (300); 
     106 
     107            aikaLaskuri = new Timer(); 
     108            aikaLaskuri.Interval = 0.1; 
     109            aikaLaskuri.Timeout += LaskeAlaspain; 
     110            aikaLaskuri.Start(); 
     111 
     112            Label aikaNaytto = new Label(); 
     113            aikaNaytto.TextColor = Color.White; 
     114            aikaNaytto.DecimalPlaces = 1; 
     115            aikaNaytto.BindTo(alaspainLaskuri); 
     116            Add(aikaNaytto); 
     117 
     118        } 
     119 
     120 
     121    void LaskeAlaspain() 
     122    { 
     123        alaspainLaskuri.Value -= 0.1; 
     124 
     125        if (alaspainLaskuri.Value <= 0) 
     126        { 
     127            MessageDisplay.Add("Aika loppui!"); 
     128            aikaLaskuri.Stop(); 
     129 
     130 
     131 
     132        } 
     133    } 
     134 
    143135    void LisaaTaso(Vector paikka, double leveys, double korkeus) 
    144136    { 
     
    171163        AddCollisionHandler(pelaaja1, "vihollinen", delegate(PhysicsObject A, PhysicsObject B) 
    172164        { 
    173             Begin(); 
     165             
     166            Label teksti = new Label("Kuolit"); 
     167            Add(teksti); 
     168 
     169            GameObject tekstiLaatikko = new GameObject(teksti.Width, teksti.Height); 
     170            Add(tekstiLaatikko); 
     171            tekstiLaatikko.Position -= new Vector(0, 100); 
     172 
     173            pelaaja1.Destroy(); 
     174            Timer.SingleShot(5.0, Begin); 
     175             
    174176        }); 
    175177        Add(pelaaja1); 
  • 2015/24/AleksiS/CandyLand/CandyLand/CandyLand/Ohjelma.cs

    r5955 r6011  
    1111            game.IsFullScreen = true; 
    1212#endif 
     13             
     14             
    1315            game.Run(); 
    1416        } 
Note: See TracChangeset for help on using the changeset viewer.