- Timestamp:
- 2011-06-08 15:30:20 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
2011/23/iltakuop/Blocks/Blocks/Blocks/Peli.cs
r1756 r1761 26 26 public class Peli : PhysicsGame 27 27 { 28 Vector nopeusOikea = new Vector(600, 0);29 Vector nopeusVasen = new Vector(-600, 0);28 int mailanNopeus = 600; 29 //Vector nopeusVasen = new Vector(-600, 0); 30 30 31 31 PhysicsObject pallo; … … 50 50 IntMeter elämätL; 51 51 52 List<Label> valikonKohdat; 52 53 List<PhysicsObject> tasot = new List<PhysicsObject>(); 53 54 List<PhysicsObject> taso2t = new List<PhysicsObject>(); … … 56 57 public override void Begin() 57 58 { 59 Valikko(); 60 } 61 62 void Valikko() 63 { 64 ClearAll(); 65 valikonKohdat = new List<Label>(); 66 67 Label kohta1 = new Label("Aloita uusi peli"); 68 kohta1.Position = new Vector(-80, 40); 69 valikonKohdat.Add(kohta1); 70 71 Label kohta2 = new Label("Asetukset"); 72 kohta2.Position = new Vector(-80, -40); 73 valikonKohdat.Add(kohta2); 74 75 Label kohta3 = new Label("Lopeta"); 76 kohta3.Position = new Vector(80, -40); 77 valikonKohdat.Add(kohta3); 78 79 foreach (Label valikonKohta in valikonKohdat) 80 { 81 Add(valikonKohta); 82 } 83 84 Mouse.ListenOn(kohta1, MouseButton.Left, ButtonState.Pressed, AloitaPeli, null); 85 Mouse.ListenOn(kohta2, MouseButton.Left, ButtonState.Pressed, Asetukset, null); 86 Mouse.ListenOn(kohta3, MouseButton.Left, ButtonState.Pressed, Lopeta, null); 87 88 Mouse.IsCursorVisible = true; 89 Mouse.ListenMovement(1.0, ValikossaLiikkuminen, null); 90 Keyboard.Listen(Key.Escape, ButtonState.Pressed, Lopeta, ""); 91 } 92 93 void ValikossaLiikkuminen(AnalogState hiirenTila) 94 { 95 foreach (Label kohta in valikonKohdat) 96 { 97 if (Mouse.IsCursorOn(kohta)) 98 { 99 kohta.TextColor = Color.Red; 100 } 101 else 102 { 103 kohta.TextColor = Color.Black; 104 } 105 106 } 107 } 108 109 void AloitaPeli() 110 { 111 ClearAll(); 58 112 LuoKenttä(1); 59 113 AsetaOhjaimet(); 60 114 LisääLaskurit(3, 0); 61 AloitaPeli(); 62 } 115 AloitaPeliUudestaan(); 116 } 117 118 void Lopeta() 119 { 120 Exit(); 121 } 122 123 void Asetukset() 124 { 125 ClearAll(); 126 valikonKohdat = new List<Label>(); 127 128 Label kohta1 = new Label("Pallon nopeus"); 129 kohta1.Position = new Vector(-80, 40); 130 valikonKohdat.Add(kohta1); 131 132 Label kohta2 = new Label("Mailan nopeus"); 133 kohta2.Position = new Vector(-80, -40); 134 valikonKohdat.Add(kohta2); 135 136 Label kohta3 = new Label("Takaisin"); 137 kohta3.Position = new Vector(80, -40); 138 valikonKohdat.Add(kohta3); 139 140 foreach (Label valikonKohta in valikonKohdat) 141 { 142 Add(valikonKohta); 143 } 144 145 Mouse.ListenOn(kohta1, MouseButton.Left, ButtonState.Pressed, AsetaPallonNopeus, null); 146 Mouse.ListenOn(kohta2, MouseButton.Left, ButtonState.Pressed, AsetaMailanNopeus, null); 147 Mouse.ListenOn(kohta3, MouseButton.Left, ButtonState.Pressed, Valikko, null); 148 149 Mouse.IsCursorVisible = true; 150 Mouse.ListenMovement(1.0, ValikossaLiikkuminen, null); 151 Keyboard.Listen(Key.Escape, ButtonState.Pressed, Lopeta, ""); 152 } 153 154 void AsetaPallonNopeus() 155 { 156 InputWindow kysymysIkkuna = new InputWindow("Pallon nopeus", "Oletus on 300"); 157 kysymysIkkuna.TextEntered += KäsitteleAsetukset; 158 Add(kysymysIkkuna); 159 160 } 161 162 163 void AsetaMailanNopeus() 164 { 165 InputWindow kysymysIkkuna = new InputWindow("Mailan nopeus", "Oletus on 600"); 166 kysymysIkkuna.TextEntered += KäsitteleAsetukset2; 167 Add(kysymysIkkuna); 168 } 169 170 void KäsitteleAsetukset(InputWindow ikkuna) 171 { 172 try 173 { 174 int vastaus = int.Parse(ikkuna.InputBox.Text); 175 } 176 catch (FormatException f) 177 { 178 ClearAll(); 179 Label tekstikentta = new Label("Anna luku!"); 180 Add(tekstikentta); 181 Timer.SingleShot(2, ClearAll); 182 Timer.SingleShot(2.01, Asetukset); 183 } 184 } 185 void KäsitteleAsetukset2(InputWindow ikkuna) 186 { 187 try 188 { 189 int vastaus = int.Parse(ikkuna.InputBox.Text); 190 mailanNopeus = vastaus; 191 } 192 catch (FormatException f) 193 { 194 ClearAll(); 195 Label tekstikentta = new Label("Anna luku!"); 196 Add(tekstikentta); 197 Timer.SingleShot(2, ClearAll); 198 Timer.SingleShot(2.01, Asetukset); 199 } 200 } 201 202 63 203 PhysicsObject LuoPallo() //-170 64 204 { … … 85 225 } 86 226 87 void AloitaPeli ()227 void AloitaPeliUudestaan() 88 228 { 89 229 maila.X = 0; … … 101 241 void AsetaOhjaimet() 102 242 { 243 Vector nopeusVasen = new Vector(-mailanNopeus, 0); 244 Vector nopeusOikea = new Vector(mailanNopeus, 0); 103 245 Keyboard.Listen(Key.Right, ButtonState.Down, AsetaNopeus, "Liikuta mailaa oikealle", maila, nopeusOikea); 104 246 Keyboard.Listen(Key.Right, ButtonState.Released, AsetaNopeus, null, maila, Vector.Zero); … … 106 248 Keyboard.Listen(Key.Left, ButtonState.Released, AsetaNopeus, null, maila, Vector.Zero); 107 249 108 Keyboard.Listen(Key.T, ButtonState.Pressed, AloitaPeli , "Liikuta mailaa vasemmalle");250 Keyboard.Listen(Key.T, ButtonState.Pressed, AloitaPeliUudestaan, "Liikuta mailaa vasemmalle"); 109 251 Keyboard.Listen(Key.R, ButtonState.Pressed, DebugRäjäytys, "Liikuta mailaa vasemmalle"); 110 252 … … 148 290 HävisitPelin(); 149 291 } 150 else Timer.SingleShot(1, AloitaPeli );292 else Timer.SingleShot(1, AloitaPeliUudestaan); 151 293 } 152 294 if (kohde.Tag.ToString() == "taso") … … 216 358 AsetaOhjaimet(); 217 359 LisääLaskurit(elämät, pisteet); 218 AloitaPeli ();360 AloitaPeliUudestaan(); 219 361 } 220 362 … … 387 529 } 388 530 389 constdouble PALLON_NOPEUS = 300;531 double PALLON_NOPEUS = 300; 390 532 391 533 protected override void Update(Time time)
Note: See TracChangeset
for help on using the changeset viewer.