- Timestamp:
- 2013-06-28 12:34:37 (10 years ago)
- Location:
- 2013/26/Olli-PekkaL/'Murica/Tasohyppelypeli1
- Files:
-
- 5 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
2013/26/Olli-PekkaL/'Murica/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1.cs
r4243 r4317 9 9 public class Tasohyppelypeli1 : PhysicsGame 10 10 { 11 const double nopeus = 200;12 const double hyppyNopeus = 750;11 const double perusJuoksuNopeus = 200; 12 const double perushyppyNopeus = 750; 13 13 const int RUUDUN_KOKO = 40; 14 14 15 15 PlatformCharacter pelaaja1; 16 double juoksuNopeus = perusJuoksuNopeus; 17 double hyppynopeus = perushyppyNopeus; 16 18 17 19 Image pelaajanKuva = LoadImage("UKKELI 2.0"); … … 20 22 Image porkkanakuva = LoadImage("Porkkana"); 21 23 Image Makkari = LoadImage("Makkari"); 24 Image kokis = LoadImage("kokis"); 25 Image lenkkeilijä = LoadImage("lenkkeilijä"); 22 26 23 27 SoundEffect maaliAani = LoadSoundEffect("maali"); 24 28 25 29 IntMeter hampurilaislaskuri = new IntMeter(0, 0, 50); 30 IntMeter pistelaskuri = new IntMeter(0, 0, 99999); 26 31 27 32 int kenttaNro = 1; … … 41 46 kentta.SetTileMethod('O', LisaaPorkkana); 42 47 kentta.SetTileMethod('M', LisaaMaali); 48 kentta.SetTileMethod('K', LisaaKokis); 49 kentta.SetTileMethod('L', LisaaLenkkeilija); 43 50 kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 44 51 Level.Background.CreateGradient(Color.White, Color.SkyBlue); … … 47 54 void LisaaTaso(Vector paikka, double leveys, double korkeus) 48 55 { 56 49 57 PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 50 58 taso.Position = paikka; 51 59 taso.Color = Color.Green; 52 60 Add(taso); 53 61 54 62 } 55 63 … … 77 85 void LisaaTahti(Vector paikka, double leveys, double korkeus) 78 86 { 79 PhysicsObject hampurilainen = PhysicsObject.CreateStaticObject(leveys, korkeus /2);87 PhysicsObject hampurilainen = PhysicsObject.CreateStaticObject(leveys, korkeus / 2); 80 88 hampurilainen.IgnoresCollisionResponse = true; 81 89 hampurilainen.Position = paikka; … … 96 104 Add(porkkana); 97 105 } 106 107 void LisaaKokis(Vector paikka, double leveys, double korkeus) 108 { 109 PhysicsObject Kokis = PhysicsObject.CreateStaticObject(leveys / 2, korkeus); 110 Kokis.Position = paikka; 111 Kokis.Image = kokis; 112 Kokis.Tag = "kokis"; 113 Add(Kokis); 114 } 115 116 void LisaaLenkkeilija(Vector paikka, double leveys, double korkeus) 117 { 118 PlatformCharacter Lenkkeilijä = new PlatformCharacter(leveys, korkeus); 119 Lenkkeilijä.Position = paikka; 120 //Lenkk 121 Add(Lenkkeilijä); 122 PlatformWandererBrain aivot = new PlatformWandererBrain(); 123 aivot.TriesToJump = true; 124 aivot.Speed = 300; 125 Lenkkeilijä.Brain = aivot; 126 Lenkkeilijä.Tag = "Lenkkeilijä"; 127 Lenkkeilijä.Image = lenkkeilijä; 128 } 129 98 130 99 131 … … 108 140 AddCollisionHandler(pelaaja1, "Hampurilainen", TormaaTahteen); 109 141 AddCollisionHandler(pelaaja1, "piikki", TormaaPiikkiin); 142 AddCollisionHandler(pelaaja1, "Lenkkeilijä", TormaaPiikkiin); 110 143 AddCollisionHandler(pelaaja1, "Porkkana", tormaaPorkkanaan); 111 144 AddCollisionHandler(pelaaja1, "Makkari", tormaaMaaliin); 145 AddCollisionHandler(pelaaja1, "kokis", tormaaKokikseen); 112 146 Add(pelaaja1); 113 147 } … … 118 152 Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 119 153 120 Keyboard.Listen(Key.Left, ButtonState.Down, Liikuta , "Liikkuu vasemmalle", pelaaja1, -nopeus);121 Keyboard.Listen(Key.Right, ButtonState.Down, Liikuta , "Liikkuu vasemmalle", pelaaja1, nopeus);122 Keyboard.Listen(Key.Up, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1 , hyppyNopeus);154 Keyboard.Listen(Key.Left, ButtonState.Down, LiikutaVasemmalle, "Liikkuu vasemmalle", pelaaja1); 155 Keyboard.Listen(Key.Right, ButtonState.Down, LiikutaOikealle, "Liikkuu vasemmalle", pelaaja1); 156 Keyboard.Listen(Key.Up, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1); 123 157 124 158 ControllerOne.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu pelistä"); 125 159 126 ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, Liikuta, "Pelaaja liikkuu vasemmalle", pelaaja1, -nopeus); 127 ControllerOne.Listen(Button.DPadRight, ButtonState.Down, Liikuta, "Pelaaja liikkuu oikealle", pelaaja1, nopeus); 128 ControllerOne.Listen(Button.A, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 160 ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, LiikutaVasemmalle, "Pelaaja liikkuu vasemmalle", pelaaja1); 161 ControllerOne.Listen(Button.DPadRight, ButtonState.Down, LiikutaOikealle, "Pelaaja liikkuu oikealle", pelaaja1); 162 ControllerOne.Listen(Button.A, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1); 163 164 Keyboard.Listen(Key.F12, ButtonState.Pressed, delegate { kenttaNro++; SeuraavaKentta(); }, null); 129 165 130 166 PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 131 167 } 132 168 133 void Liikuta(PlatformCharacter hahmo, double nopeus) 134 { 135 hahmo.Walk(nopeus); 136 } 137 138 void Hyppaa(PlatformCharacter hahmo, double nopeus) 139 { 140 hahmo.Jump(nopeus); 169 void LiikutaVasemmalle(PlatformCharacter hahmo) 170 { 171 hahmo.Walk(-juoksuNopeus); 172 } 173 174 175 void LiikutaOikealle(PlatformCharacter hahmo) 176 { 177 hahmo.Walk(juoksuNopeus); 178 } 179 180 void Hyppaa(PlatformCharacter hahmo) 181 { 182 hahmo.Jump(hyppynopeus); 141 183 } 142 184 … … 144 186 { 145 187 Timer.SingleShot(2.0, SeuraavaKentta); 146 Explosion rajahdys = new Explosion(100 * hahmo.Size.X /40.0);188 Explosion rajahdys = new Explosion(100 * hahmo.Size.X / 40.0); 147 189 rajahdys.Position = hahmo.Position; 148 190 Add(rajahdys); … … 155 197 } 156 198 hahmo.Destroy(); 199 pistelaskuri.Value = 0; 200 157 201 MessageDisplay.Add("Kuolit..."); 158 202 } … … 165 209 pelaaja1.Size *= 1.1; 166 210 hampurilaislaskuri.Value++; 167 168 } 169 170 void SeuraavaKentta() 211 pistelaskuri.Value += 100; 212 213 } 214 215 void SeuraavaKentta() 171 216 { 172 217 ClearAll(); 218 juoksuNopeus = perusJuoksuNopeus; 219 hyppynopeus = perushyppyNopeus; 173 220 174 221 hampurilaislaskuri.Value = 0; … … 176 223 if (kenttaNro == 1) LuoKentta("kentta1"); 177 224 else if (kenttaNro == 2) LuoKentta("kentta2"); 178 else if (kenttaNro == 3) LuoKentta("kentta2"); 179 else if (kenttaNro > 3) Exit(); 225 else if (kenttaNro == 3) LuoKentta("kentta3"); 226 else if (kenttaNro == 4) LuoKentta("kentta4"); 227 else if (kenttaNro == 5) LuoKentta("kentta5"); 228 else if (kenttaNro == 6) LuoKentta("kentta6"); 229 else if (kenttaNro > 6) Exit(); 180 230 181 231 … … 183 233 Gravity = new Vector(0, -1000); 184 234 235 Label pisteNaytto = new Label(); 236 pisteNaytto.X = Screen.Left + 100; 237 pisteNaytto.Y = Screen.Top - 100; 238 pisteNaytto.TextColor = Color.Black; 239 pisteNaytto.Color = Color.White; 240 241 pisteNaytto.BindTo(pistelaskuri); 242 Add(pisteNaytto); 243 185 244 Camera.Follow(pelaaja1); 186 Camera.ZoomFactor = 1.7;245 //Camera.ZoomFactor = 1.7; 187 246 Camera.StayInLevel = true; 188 247 } 189 248 190 void tormaaPorkkanaan(PhysicsObject hahmo,PhysicsObject porkkana) 191 { 192 porkkana.Destroy(); 193 pelaaja1.Size *= 0.5; 194 MessageDisplay.Add("Söit Porkkanan"); 195 hampurilaislaskuri.Value--; 196 197 } 198 199 void tormaaMaaliin(PhysicsObject hahmo, PhysicsObject maali) 200 { 201 kenttaNro++; 202 SeuraavaKentta(); 203 204 } 249 void tormaaPorkkanaan(PhysicsObject hahmo, PhysicsObject porkkana) 250 { 251 porkkana.Destroy(); 252 pelaaja1.Size *= 0.5; 253 MessageDisplay.Add("Söit Porkkanan"); 254 hampurilaislaskuri.Value--; 255 256 } 257 258 void tormaaKokikseen(PhysicsObject hahmo, PhysicsObject kokis) 259 { 260 kokis.Destroy(); 261 MessageDisplay.Add("SOKERIHUMALA!!!!"); 262 juoksuNopeus *= 1.5; 263 hyppynopeus *= 1.5; 264 Timer ajastin = new Timer(); 265 ajastin.Interval = 10; 266 ajastin.Timeout += delegate { juoksuNopeus = perusJuoksuNopeus; hyppynopeus = perushyppyNopeus; }; 267 ajastin.Start(1); 268 pistelaskuri.Value += 200; 269 270 } 271 272 void tormaaMaaliin(PhysicsObject hahmo, PhysicsObject maali) 273 { 274 kenttaNro++; 275 SeuraavaKentta(); 276 277 } 205 278 206 279 -
2013/26/Olli-PekkaL/'Murica/Tasohyppelypeli1/Tasohyppelypeli1Content/Tasohyppelypeli1Content.contentproj
r4243 r4317 116 116 </Compile> 117 117 </ItemGroup> 118 <ItemGroup> 119 <Compile Include="kokis.png"> 120 <Name>kokis</Name> 121 <Importer>TextureImporter</Importer> 122 <Processor>TextureProcessor</Processor> 123 </Compile> 124 </ItemGroup> 125 <ItemGroup> 126 <Compile Include="kentta3.txt"> 127 <Name>kentta3</Name> 128 <Importer>TextFileImporter</Importer> 129 <Processor>TextFileContentProcessor</Processor> 130 </Compile> 131 </ItemGroup> 132 <ItemGroup> 133 <Compile Include="kentta4.txt"> 134 <Name>kentta4</Name> 135 <Importer>TextFileImporter</Importer> 136 <Processor>TextFileContentProcessor</Processor> 137 </Compile> 138 </ItemGroup> 139 <ItemGroup> 140 <Compile Include="kentta5.txt"> 141 <Name>kentta5</Name> 142 <Importer>TextFileImporter</Importer> 143 <Processor>TextFileContentProcessor</Processor> 144 </Compile> 145 </ItemGroup> 146 <ItemGroup> 147 <Compile Include="lenkkeilijä.png"> 148 <Name>lenkkeilijä</Name> 149 <Importer>TextureImporter</Importer> 150 <Processor>TextureProcessor</Processor> 151 </Compile> 152 </ItemGroup> 118 153 <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 119 154 <!-- To modify your build process, add your task inside one of the targets below and uncomment it. -
2013/26/Olli-PekkaL/'Murica/Tasohyppelypeli1/Tasohyppelypeli1Content/kentta1.txt
r4243 r4317 1 1 2 * **2 * 3 3 4 * ##5 4 O * ## 5 K ## #### 6 6 ## ### #### * 7 7 ## * * 8 8 *** ## ### M 9 ****** ## *10 *** N ** *## * ####################9 ****** * ## * ## 10 *** N ** ## L * ### ################ 11 11 ###############################################PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP -
2013/26/Olli-PekkaL/'Murica/Tasohyppelypeli1/Tasohyppelypeli1Content/kentta2.txt
r4243 r4317 12 12 # # 13 13 ##### ### 14 15 * ######### ####### 16 * ##### ## #### PPPPPPPPPPPPPPPPPPPPPPPPPPP###PPPPPPP *##### *17 ####### #################################################################################### ############### M18 N #OO 14 L *** ##### ## 15 * ######### ####### KK ######## 16 * ##### ## #### PPPPPPPPPPPPPPPPPPPPPPPPPPP###PPPPPPPPP *######### * 17 ####### #################################################################################### ############## M 18 N #OO K K K ############ 19 19 ###################################################################################################################### ###################### 20 20 # #
Note: See TracChangeset
for help on using the changeset viewer.