Changeset 1808


Ignore:
Timestamp:
2011-06-09 11:35:58 (8 years ago)
Author:
ookantol
Message:
 
Location:
2011/23/ookantol/Haamuongelma/Haamuongelma
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • 2011/23/ookantol/Haamuongelma/Haamuongelma/Peli.cs

    r1767 r1808  
    99public class Peli : PhysicsGame 
    1010{ 
    11     const double nopeus = 500; 
    12     const double hyppyNopeus = 2000; 
     11    const double nopeus = 300; 
     12    const double hyppyNopeus = 1000; 
    1313    const int RUUDUN_KOKO = 40; 
    1414 
     
    1616 
    1717    IntMeter laskuri; 
     18    IntMeter laskuri2; 
     19 
     20    Label naytto2; 
    1821 
    1922    List<Label> Valikonkohdat; 
     
    2225    Image kelloKuva = LoadImage("kello"); 
    2326    Image kukkaKuva = LoadImage("kukka"); 
    24     Image haamu1Kuva = LoadImage("haamu1"); 
    25     //Image taustaKuva = LoadImage("tahdet"); 
    26     //Vector aloituspiste; 
     27    Image haamu1Kuva = LoadImage("haamu3"); 
     28    Image haamu2Kuva = LoadImage("haamu4"); 
    2729 
    2830    public override void Begin() 
     
    4244        kentta['2'] = lisaaHaamu2; 
    4345        kentta.Insert(RUUDUN_KOKO, RUUDUN_KOKO); 
    44         Level.CreateBorders(); 
    45         //Level.Background.Image = taustaKuva; 
    46         //Level.Background.FitToLevel(); 
     46        Level.CreateBorders(1.0, true); 
    4747        Level.Background.CreateStars(); 
    48  
    49     } 
     48    } 
     49 
     50 
    5051 
    5152    PhysicsObject lisaaTaso() 
     
    7778        PhysicsObject kukka = PhysicsObject.CreateStaticObject(RUUDUN_KOKO, RUUDUN_KOKO); 
    7879        kukka.Image = kukkaKuva; 
     80        kukka.IgnoresCollisionResponse = true; 
    7981        kukka.Tag = "kukka"; 
    8082        return kukka; 
     
    100102        haamu1.CanRotate = false; 
    101103        haamu1.CollisionIgnoreGroup = 1; 
    102         //haamu3.IgnoresGravity = true; 
     104        haamu1.IgnoresGravity = true; 
    103105        Timer asetaAivot = new Timer(); 
    104106        asetaAivot.Tag = haamu1; 
     
    116118        haamu2.CanRotate = false; 
    117119        haamu2.CollisionIgnoreGroup = 1; 
    118         //haamu4.IgnoresGravity = true; 
     120        haamu2.IgnoresGravity = true; 
    119121        Timer asetaAivot = new Timer(); 
    120122        asetaAivot.Tag = haamu2; 
     
    150152    } 
    151153 
     154 
     155 
    152156    IntMeter elamat() 
    153157    { 
    154         laskuri = new IntMeter(3); 
    155         Label naytto = new Label(70, 70); 
    156         naytto.Text = "Elämät 3"; 
    157         naytto.Size = new Vector(60, 60); 
    158         naytto.X = Screen.Left + 60; 
    159         naytto.Y = Screen.Top - 50; 
     158        laskuri = new IntMeter(5); 
     159        Label naytto = new Label(140, 70); 
     160        naytto.Title = "Lives left "; 
     161        naytto.Size = new Vector(140, 60); 
     162        naytto.X = Screen.Left + 90; 
     163        naytto.Y = Screen.Top - 80; 
    160164        naytto.TextColor = Color.White;         
    161165        naytto.BindTo(laskuri); 
     
    163167        return laskuri; 
    164168 
    165            
    166     } 
     169    } 
     170 
     171    IntMeter kerattavat() 
     172    { 
     173        laskuri2 = new IntMeter(0); 
     174        laskuri2.MaxValue = 35; 
     175        laskuri2.Changed += new Meter<int>.OnChangeHandler(laskuri2_Changed); 
     176        laskuri2.UpperLimit += laskuriYlarajassa; 
     177        naytto2 = new Label(400, 70); 
     178        naytto2.Text = "Ghosts & clocks destroyed " + laskuri2.Value.ToString() + " / " + laskuri2.MaxValue.ToString(); 
     179        naytto2.Size = new Vector(400, 70); 
     180        naytto2.X = Screen.Left + 190; 
     181        naytto2.Y = Screen.Top - 50; 
     182        naytto2.TextColor = Color.White; 
     183        Add(naytto2); 
     184        return laskuri; 
     185 
     186    } 
     187 
     188    void laskuri2_Changed(int oldValue, int newValue) 
     189    { 
     190        naytto2.Text = "Ghosts & clocks destroyed " + laskuri2.Value.ToString() + " / " + laskuri2.MaxValue.ToString(); 
     191    } 
     192 
     193    void laskuriYlarajassa(int arvo) 
     194    {  
     195        Label Win = new Label ("Mission done!"); 
     196        Win.Position = new Vector(10, 0); 
     197        Win.TextColor = RandomGen.NextColor(); 
     198        Add(Win); 
     199        Timer.SingleShot(3.0, aloitusvalikko); 
     200    } 
     201 
     202 
    167203 
    168204 
     
    172208        { 
    173209            kohde.Destroy(); 
     210            laskuri2.Value += 1; 
    174211        } 
    175212 
     
    181218        { 
    182219            if (kohde.Top < pelaaja1.Position.Y) 
     220            { 
    183221                kohde.Destroy(); 
     222                laskuri2.Value += 1; 
     223            } 
    184224            else 
    185225            { 
     
    192232            { 
    193233                hahmo.Destroy(); 
    194                 Label naytto = new Label(70, - 70); 
    195                 naytto.TextColor = Color.White; 
    196                 naytto.Text = "Hävisit."; 
     234                Label naytto = new Label(700, - 600); 
     235                naytto.TextColor = RandomGen.NextColor(); 
     236                naytto.Text = "Game Over"; 
    197237 
    198238                Add(naytto); 
     
    207247        if (kohde.Tag.ToString() == "kukka") 
    208248        { 
    209             Label apua = new Label(70, - 70); 
     249            Label apua = new Label(600, - 800); 
     250            apua.X = Screen.Left + 700; 
     251            apua.Y = Screen.Top - 700; 
    210252            apua.TextColor = Color.White; 
    211             apua.Text = "Auta"; 
     253            apua.Text = "Help us by destroying those ghosts and clocks."; 
     254            Timer.SingleShot(1.0, apua.Destroy); 
    212255            Add(apua); 
    213256        } 
    214257    } 
     258 
     259 
     260 
    215261 
    216262    void aloitusvalikko() 
     
    220266        Level.Background.CreateGradient (Color.Orange, Color.White); 
    221267 
    222         Label kohta1 = new Label("Aloita peli"); 
     268        Label kohta1 = new Label("Start Game"); 
    223269        kohta1.Position = new Vector(0, 50); 
    224270        Valikonkohdat.Add(kohta1); 
    225271 
    226         Label kohta2 = new Label("Lopeta"); 
     272        Label kohta2 = new Label("Exit"); 
    227273        kohta2.Position = new Vector(0, -40); 
    228274        Valikonkohdat.Add(kohta2); 
    229275 
    230         //Label kohta3 = new Label(""); 
    231         //kohta3.Position = new Vector(0, 50); 
    232         //Valikonkohdat.Add(kohta3); 
    233  
    234  
    235  
    236276 
    237277        foreach (Label Valikonkohta in Valikonkohdat) 
    238278            Add(Valikonkohta); 
    239279 
    240         Mouse.ListenOn(kohta1, MouseButton.Left, ButtonState.Pressed, Aloita, null); 
     280        Mouse.ListenOn(kohta1, MouseButton.Left, ButtonState.Pressed, Start, null); 
    241281        Mouse.ListenOn(kohta2, MouseButton.Left, ButtonState.Pressed, Lopeta, null); 
    242282 
     
    245285 
    246286        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Lopeta, null); 
    247         Keyboard.Listen(Key.Enter, ButtonState.Pressed, Aloita, null); 
    248287 
    249288    } 
     
    255294            if (Mouse.IsCursorOn(kohta)) 
    256295            { 
     296                kohta.TextColor = Color.Orange; 
     297            } 
     298            else 
     299            { 
    257300                kohta.TextColor = Color.White; 
    258301            } 
    259             else 
    260             { 
    261                 kohta.TextColor = Color.Black; 
    262             } 
    263302        } 
    264303 
     
    269308        Exit(); 
    270309    } 
     310 
     311    void Start() 
     312    { 
     313        ClearAll(); 
     314        Valikonkohdat = new List<Label>(); 
     315        Level.BackgroundColor = Color.Black; 
     316 
     317        Label kohta3 = new Label("Just a normal day. Buddy was on his way home, when he   met couple mean ghosts. Or not just an couple, lots of    them. He tried to avoid them, but then he met dying    flowers, which were dying because of the ghosts. To    help them, Buddy must destroy all ghosts and clocks,                              that have appeared..."); 
     318        kohta3.Size = new Vector(600, 130); 
     319        kohta3.SizeMode = TextSizeMode.Wrapped; 
     320        kohta3.Position = new Vector(0, 100); 
     321        kohta3.TextColor = Color.White; 
     322        Valikonkohdat.Add(kohta3); 
     323 
     324        Label kohta4 = new Label("Start"); 
     325        kohta4.Position = new Vector(0, -40); 
     326        kohta4.TextColor = Color.Orange; 
     327        Valikonkohdat.Add(kohta4); 
     328 
     329        foreach (Label Valikonkohta in Valikonkohdat) 
     330            Add(Valikonkohta); 
     331 
     332        Mouse.ListenOn(kohta4, MouseButton.Left, ButtonState.Pressed, Aloita, null); 
     333        Keyboard.Listen(Key.Escape, ButtonState.Pressed, aloitusvalikko, null); 
     334        Keyboard.Listen(Key.Enter, ButtonState.Pressed, Aloita, null); 
     335 
     336        Mouse.IsCursorVisible = true; 
     337    }    
     338 
    271339 
    272340    void Aloita() 
     
    279347        lisaaNappaimet(); 
    280348        elamat(); 
     349        kerattavat(); 
    281350 
    282351        Camera.Follow(pelaaja1); 
    283         Camera.ZoomFactor = 2.0; 
     352        Camera.ZoomFactor =2.0; 
     353        //Camera.ZoomToLevel(); 
    284354        Camera.StayInLevel = true; 
    285355     
     
    301371    } 
    302372 
     373 
    303374} 
  • 2011/23/ookantol/Haamuongelma/Haamuongelma/kentta1.txt

    r1767 r1808  
    77                2                            +  1                                                   2   +                  
    88             -  -  -                        -  -  -                                -  -  -         -  -  - 
    9                                                                                          
     9                                                                                      
    1010   +                 1                2                         + 
    1111  -  -           -  -  -            -  -                       -  -                       +  2 
     
    2020  -  -  -     -  -  -      -  -                -  -           -  -  -  -       -  -  -      -  -           -  -  - 
    2121 
    22  Y B         
     22 YY  Y   B        Y  Y      Y Y Y 
    2323 __ __ _ __ _ _ _ ___ __ __ __ __ __ _ _ __ ___ __ ___ __ ___ _ _ _ ____  __ __  __ _ __  _ ___  ___ __ _ ___ ___ ___ __ __ _ ___  
Note: See TracChangeset for help on using the changeset viewer.