- Timestamp:
- 2012-07-26 16:35:58 (10 years ago)
- Location:
- 2012/30/OtsoR
- Files:
-
- 163 added
- 1 deleted
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
2012/30/OtsoR/Pong/Pong/Pong/Pong.cs
r3719 r3779 29 29 void LuoKentta() 30 30 { 31 //Gravity = new Vector(0, -800);31 Gravity = new Vector(0, -800); 32 32 pallo1 = LuoPallo(-200, 100); 33 33 LuoPallo(20, 0, 20, 20, Color.Blue, Shape.Circle); … … 97 97 maila.Shape = Shape.Rectangle; 98 98 maila.Color = vari; 99 maila.CanRotate = false;99 maila.CanRotate = true; 100 100 maila.X = x; 101 101 maila.Y = y; -
2012/30/OtsoR/Projekti/Projekti/Projekti/Projekti.cs
r3770 r3779 22 22 23 23 Label number; 24 Label number2; 24 25 Label weaponlabel; 26 Label weaponlabel2; 25 27 Widget Aluskuva; 28 Widget Aluskuva2; 26 29 IntMeter shipimg; 27 30 IntMeter shipcolor; 28 31 IntMeter shipwpn; 32 IntMeter shipimg2; 33 IntMeter shipcolor2; 34 IntMeter shipwpn2; 29 35 30 36 public override void Begin() … … 36 42 37 43 IsMouseVisible = true; 38 MultiSelectWindow numberofplayersmenu = new MultiSelectWindow("Select number of players", " Singleplayer", "Multiplayer/Co-op", "Quit");44 MultiSelectWindow numberofplayersmenu = new MultiSelectWindow("Select number of players", "1 Player", "2 Players", "Quit"); 39 45 numberofplayersmenu.ItemSelected += mainmenu; 40 46 Add(numberofplayersmenu); … … 46 52 case 0: 47 53 ClearAll(); 48 Singleplayer();54 singleplayer(); 49 55 50 56 break; 51 57 case 1: 52 58 ClearAll(); 53 MultiPlayer();59 coop(); 54 60 break; 55 61 case 2: … … 58 64 } 59 65 } 60 void Singleplayer()66 void singleplayer() 61 67 { 62 68 Aluskuva = new Widget(50, 50); … … 103 109 List<Label> valikonKohdat; 104 110 valikonKohdat = new List<Label>(); // Alustetaan lista, johon valikon kohdat tulevat 105 Label kohta1 = new Label(" Ready"); // Luodaan uusi Label-olio, joka toimii uuden pelin aloituskohtana111 Label kohta1 = new Label("Start"); // Luodaan uusi Label-olio, joka toimii uuden pelin aloituskohtana 106 112 kohta1.Position = new Vector(0, -100); // Asetetaan valikon ensimmäinen kohta hieman kentän keskikohdan yläpuolelle 107 113 valikonKohdat.Add(kohta1); // Lisätään luotu valikon kohta listaan jossa kohtia säilytetään … … 111 117 Add(valikonKohta); 112 118 } 113 Mouse.ListenOn(kohta1, MouseButton.Left, ButtonState.Pressed, gamemode, null);119 Mouse.ListenOn(kohta1, MouseButton.Left, ButtonState.Pressed, singleplayerbase, null); 114 120 } 115 121 void Changeship(int vanha, int uusi) … … 118 124 Aluskuva.Image.ReplaceColor(Color.White, shipcolors[shipcolor.Value - 1]); 119 125 Aluskuva.Image.ReplaceColor(Color.Black, shipcolors2[shipcolor.Value - 1]); 126 } 127 void Changeship2(int vanha, int uusi) 128 { 129 Aluskuva2.Image = shipimages[shipimg2.Value - 1].Clone(); 130 Aluskuva2.Image.ReplaceColor(Color.White, shipcolors[shipcolor2.Value - 1]); 131 Aluskuva2.Image.ReplaceColor(Color.Black, shipcolors2[shipcolor2.Value - 1]); 120 132 } 121 133 void Createship() … … 132 144 ship.Add(weapon); 133 145 } 134 void MultiPlayer() 135 { 136 137 } 146 void Createship2() 147 { 148 ship2 = new PhysicsObject(16, 16, Shape.FromImage(Aluskuva2.Image)); 149 ship2.Image = Aluskuva2.Image; 150 ship2.Restitution = 1.0; 151 ship2.KineticFriction = 0.0; 152 ship2.MomentOfInertia = Double.PositiveInfinity; 153 ship2.LinearDamping = 0.95; 154 ship2.AngularDamping = 0.95; 155 Add(ship2); 156 choice(shipwpn2.Value); 157 ship2.Add(weapon2); 158 } 159 void coop() 160 { 161 Aluskuva = new Widget(50, 50); 162 Aluskuva.X = -300; 163 Aluskuva.Y = 250; 164 Aluskuva.Image = shipimages[0]; 165 Add(Aluskuva); 166 167 Aluskuva2 = new Widget(50, 50); 168 Aluskuva2.X = 300; 169 Aluskuva2.Y = 250; 170 Aluskuva2.Image = shipimages[0]; 171 Add(Aluskuva2); 172 173 shipimg = new IntMeter(1, 1, 100); 174 shipimg.Changed += Changeship; 175 shipwpn = new IntMeter(1, 1, 3); 176 shipwpn.Changed += delegate { weaponlabel.Text = weaponnames[shipwpn.Value - 1]; }; 177 shipcolor = new IntMeter(1, 1, 4); 178 shipcolor.Changed += Changeship; 179 shipimg2 = new IntMeter(1, 1, 100); 180 shipimg2.Changed += Changeship2; 181 shipwpn2 = new IntMeter(1, 1, 3); 182 shipwpn2.Changed += delegate { weaponlabel2.Text = weaponnames[shipwpn2.Value - 1]; }; 183 shipcolor2 = new IntMeter(1, 1, 4); 184 shipcolor2.Changed += Changeship2; 185 186 number = new Label(); 187 number.BindTo(shipimg); 188 number.X = -300; 189 number.Y = 300; 190 Add(number); 191 192 number2 = new Label(); 193 number2.BindTo(shipimg2); 194 number2.X = 300; 195 number2.Y = 300; 196 Add(number2); 197 198 weaponlabel = new Label(weaponnames[0]); 199 weaponlabel.X = -225; 200 weaponlabel.Y = 125; 201 Add(weaponlabel); 202 weaponlabel2 = new Label(weaponnames[0]); 203 weaponlabel2.X = 425; 204 weaponlabel2.Y = 125; 205 Add(weaponlabel2); 206 207 Slider shiptype = new Slider(550, 10); 208 shiptype.X = -300; 209 shiptype.Y = 200; 210 shiptype.BindTo(shipimg); 211 Slider shipcolour = new Slider(125, 15); 212 shipcolour.X = -425; 213 shipcolour.Y = 150; 214 shipcolour.BindTo(shipcolor); 215 Slider shipweapon = new Slider(125, 15); 216 shipweapon.X = -225; 217 shipweapon.Y = 150; 218 shipweapon.BindTo(shipwpn); 219 220 Slider shiptype2 = new Slider(550, 10); 221 shiptype2.X = 300; 222 shiptype2.Y = 200; 223 shiptype2.BindTo(shipimg2); 224 Slider shipcolour2 = new Slider(125, 15); 225 shipcolour2.X = 225; 226 shipcolour2.Y = 150; 227 shipcolour2.BindTo(shipcolor2); 228 Slider shipweapon2 = new Slider(125, 15); 229 shipweapon2.X = 425; 230 shipweapon2.Y = 150; 231 shipweapon2.BindTo(shipwpn2); 232 233 Add(shiptype); 234 Add(shipcolour); 235 Add(shipweapon); 236 Add(shiptype2); 237 Add(shipcolour2); 238 Add(shipweapon2); 239 240 List<Label> valikonKohdat2; 241 valikonKohdat2 = new List<Label>(); // Alustetaan lista, johon valikon kohdat tulevat 242 Label kohta2 = new Label("Start"); // Luodaan uusi Label-olio, joka toimii uuden pelin aloituskohtana 243 kohta2.Position = new Vector(0, -100); // Asetetaan valikon ensimmäinen kohta hieman kentän keskikohdan yläpuolelle 244 valikonKohdat2.Add(kohta2); // Lisätään luotu valikon kohta listaan jossa kohtia säilytetään 245 // Lisätään kaikki luodut kohdat peliin foreach-silmukalla 246 foreach (Label valikonKohta2 in valikonKohdat2) 247 { 248 Add(valikonKohta2); 249 } 250 Mouse.ListenOn(kohta2, MouseButton.Left, ButtonState.Pressed, coopbase, null); 251 } 138 252 void choice(int choice) 139 253 { … … 156 270 } 157 271 } 272 void choice2(int choice) 273 { 274 switch (choice) 275 { 276 case 1: 277 weapon2 = new AssaultRifle(0, 0); 278 weapon2.ProjectileCollision = weaponhit; 279 break; 280 case 2: 281 weapon2 = new LaserGun(0, 0); 282 weapon2.ProjectileCollision = weaponhit; 283 weapon2.Power.Value = 5000; 284 weapon2.FireRate = 1.0; 285 break; 286 case 3: 287 weapon2 = new PlasmaCannon(0, 0); 288 weapon2.ProjectileCollision = weaponhit; 289 break; 290 } 291 } 158 292 void fire(Weapon ase) 159 293 { … … 181 315 Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 182 316 183 //Keyboard.Listen(Key.NumPad8, ButtonState.Down, thrust, "", 1.0, ship2); 184 //Keyboard.Listen(Key.NumPad5, ButtonState.Down, thrust, "", -1.0, ship2); 185 //Keyboard.Listen(Key.NumPad4, ButtonState.Down, tilt, "", 1.0, ship2); 186 //Keyboard.Listen(Key.NumPad6, ButtonState.Down, tilt, "", -1.0, ship2); 317 Keyboard.Listen(Key.NumPad8, ButtonState.Down, thrust, "", 1.0, ship2); 318 Keyboard.Listen(Key.NumPad5, ButtonState.Down, thrust, "", -1.0, ship2); 319 Keyboard.Listen(Key.NumPad4, ButtonState.Down, tilt, "", 1.0, ship2); 320 Keyboard.Listen(Key.NumPad6, ButtonState.Down, tilt, "", -1.0, ship2); 321 Keyboard.Listen(Key.Space, ButtonState.Down, fire, "Ammu", weapon2); 187 322 } 188 323 void thrust(double direction, PhysicsObject ship) … … 195 330 ship.AngularAcceleration = 10.0*direction; 196 331 } 197 void gamemode()332 void singleplayerbase() 198 333 { 199 334 ClearAll(); … … 204 339 AsetaOhjaimet(); 205 340 } 341 void coopbase() 342 { 343 ClearAll(); 344 Level.BackgroundColor = Color.Black; 345 Level.CreateBorders(); 346 Camera.ZoomToLevel(); 347 Createship(); 348 Createship2(); 349 AsetaOhjaimet(); 350 } 206 351 }
Note: See TracChangeset
for help on using the changeset viewer.