Changeset 669
- Timestamp:
- 2010-06-10 11:43:16 (13 years ago)
- Location:
- 2010/23/elalylon/Ball Wars
- Files:
-
- 1 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
2010/23/elalylon/Ball Wars/Content/Content.contentproj
r610 r669 82 82 </Compile> 83 83 </ItemGroup> 84 <ItemGroup> 85 <Compile Include="Tahtain.png"> 86 <Name>Tahtain</Name> 87 <Importer>TextureImporter</Importer> 88 <Processor>TextureProcessor</Processor> 89 </Compile> 90 </ItemGroup> 91 <ItemGroup> 92 <Compile Include="enemy2.png"> 93 <Name>enemy2</Name> 94 <Importer>TextureImporter</Importer> 95 <Processor>TextureProcessor</Processor> 96 </Compile> 97 </ItemGroup> 84 98 <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 85 99 <!-- To modify your build process, add your task inside one of the targets below and uncomment it. -
2010/23/elalylon/Ball Wars/Peli.cs
r642 r669 12 12 const double hyppyVoima = 8000; 13 13 int enemyHitpoints = 10; 14 int pelaajaHitpoints = 50;14 int pelaajaHitpoints = 10; 15 15 Vector enemyshootvector; 16 16 Vector tahtaa; 17 Vector vasemmalle = new Vector(-400, 0); 18 Vector oikealle = new Vector(400, 0); 19 17 Vector vasemmalle = new Vector(-200, 0); 18 Vector oikealle = new Vector(200, 0); 19 20 GameObject tahtain; 20 21 IntMeter pisteLaskuri; 21 22 ValueDisplay pisteNaytto; … … 25 26 AssaultRifle m16; 26 27 AssaultRifle Glock; 27 28 28 29 29 30 protected override void Begin() … … 34 35 // Luodaan pistelaskuri 35 36 pisteLaskuri = new IntMeter(0); 37 38 //Luodaan tähtäin 39 //tahtain = new PhysicsObject(30, 30, Shapes.Circle); 40 tahtain = new GameObject(30, 30, Shapes.Circle); 41 tahtain.Image = LoadImage("Tahtain"); 42 Add(tahtain); 43 //tahtain. 44 //tahtain.IgnoresCollisionResponse = true; 45 //Add(tahtain); 36 46 37 47 // luodaan pistelaskunäyttö … … 44 54 45 55 ammoNaytto = new ValueDisplay(); 46 ammoNaytto.Text = "Pisteitä: ";47 56 ammoNaytto.X = Screen.RightSafe - 250; 48 57 ammoNaytto.Y = Screen.TopSafe - 50; 49 58 Add(ammoNaytto); 50 59 51 60 52 61 // Ajastin, jonka avulla ajastetaan vihollisen toiminta, 53 62 // mm. ampuminen säännöllisin väliajoin 54 63 Timer aly = new Timer(); 55 aly.Interval = 0. 1; // 0.1 sekuntia64 aly.Interval = 0.01; // 0.1 sekuntia 56 65 aly.Trigger += enemyshoot; 57 66 aly.Trigger += enemymove; … … 69 78 70 79 void enemyshoot(Timer t) 71 { 72 if (pelaaja1.Position.X < 0) 73 { 74 //Glock laitetaan toisin päin 75 } 76 enemyshootvector = pelaaja1.Position - vihollinen.Position; 80 {enemyshootvector = pelaaja1.Position - vihollinen.Position; 77 81 vihollinen.Weapon.Angle = enemyshootvector.Angle; 82 if (pelaaja1.Position.X < vihollinen.Position.X) 83 { 84 vihollinen.Image = LoadImage("enemy2"); 85 Glock.Image = LoadImage("Glock 17_2"); 86 } 87 if (pelaaja1.Position.X < vihollinen.Position.X) 88 { 89 vihollinen.Image = LoadImage("enemy"); 90 Glock.Image = LoadImage("Glock 17"); 91 } 78 92 Glock.Use(); 79 93 } … … 81 95 { 82 96 83 if (pelaaja1.Position.X < (vihollinen.Position.X - 100))97 if (pelaaja1.Position.X < (vihollinen.Position.X - 300)) 84 98 { 85 99 vihollinen.Hit(vasemmalle); 86 100 return; 87 101 } 88 else if (pelaaja1.Position.X > (vihollinen.Position.X + 100))102 else if (pelaaja1.Position.X > (vihollinen.Position.X + 300)) 89 103 { 90 104 vihollinen.Hit(oikealle); 91 105 return; 92 } 93 } 94 95 96 106 } 107 } 108 109 110 97 111 void luoKentta() 98 112 { … … 100 114 Level.Background.CreateGradient(Color.Blue, Color.Red); 101 115 Gravity = new Vector(0, -1000); 102 103 116 117 104 118 lisaaTaso(-200, -400); 105 119 lisaaTaso(0, -300); … … 120 134 taso.Y = y; 121 135 Add(taso); 122 136 123 137 } 124 138 … … 130 144 pelaaja1.X = 0; 131 145 pelaaja1.Y = Level.Bottom + 120; 132 pelaaja1.Tag = "pelaaja1"; 146 pelaaja1.Tag = "pelaaja1"; 133 147 Add(pelaaja1); 134 148 … … 139 153 m16.TimeBetweenUse = new TimeSpan(1500000); 140 154 m16.BulletCollision = LuotiOsuu; 155 141 156 // TODO: Panokset lentämään suorempaan 142 157 } 143 void LuotiOsuu(PhysicsObject kuula, PhysicsObject toinen) 144 { 145 // Vähennä Hitpointsia 158 void LuotiOsuu(PhysicsObject ammus, PhysicsObject kohde) 159 { 160 if (kohde.Tag.ToString() == "vihollinen") 161 { 162 enemyHitpoints -= 1; 163 if (enemyHitpoints == 0) 164 { 165 Explosion PAM = new Explosion(100); 166 PAM.Force = 100; 167 PAM.MaxRadius = 100; 168 PAM.Position = vihollinen.Position; 169 Add(PAM); 170 pisteLaskuri.Value += 10; 171 vihollinen.Destroy(); 172 } 173 } 174 175 if (kohde.Tag.ToString() != "pelaaja1") 176 { 177 ammus.Destroy(); 178 } 179 } 180 void LuotiOsuux(PhysicsObject ammus, PhysicsObject kohde) 181 { 182 if (kohde.Tag.ToString() == "pelaaja1") 183 { 184 pelaajaHitpoints -= 1; 185 if (pelaajaHitpoints == 0) 186 { 187 Explosion PAM = new Explosion(100); 188 PAM.Force = 100; 189 PAM.MaxRadius = 150; 190 PAM.Position = pelaaja1.Position; 191 Add(PAM); 192 pelaaja1.Destroy(); 193 } 194 } 195 196 if (kohde.Tag.ToString() != "vihollinen") 197 { 198 ammus.Destroy(); 199 } 200 146 201 } 147 202 … … 153 208 vihollinen.X = 200; 154 209 vihollinen.Y = Level.Bottom + 120; 210 vihollinen.Tag = "vihollinen"; 155 211 Add(vihollinen); 156 212 157 213 Glock = new AssaultRifle(100, 30); 158 214 Glock.Ammo.Value = 14; … … 161 217 Glock.TimeBetweenUse = new TimeSpan(3000000); 162 218 vihollinen.Weapon = Glock; 163 // TODO: Saako vihollisen ampumia panoksia / omia panoksia häviämään jotenkin? (tuleeko niistä damagea pelaajalle?)219 Glock.BulletCollision = LuotiOsuux; 164 220 165 221 } … … 173 229 Keyboard.Listen(Key.Up, ButtonState.Pressed, hyppaa, "Hyppää", pelaaja1, hyppyVoima); 174 230 Mouse.Listen(MouseButton.Left, ButtonState.Down, shoot, "ammu"); 175 Mouse.ListenMovement(0. 1, tahtax_, null);231 Mouse.ListenMovement(0.0, tahtax_, null); // 0.0 tarkottaa että hiirtä ei tarvi liikuttaa, että aliohjelmaa tahtax_ kutsutaan 176 232 } 177 233 178 234 void tahtax_(AnalogState tila) 179 235 { 180 if (Mouse.PositionOnScreen.X < 0) 181 { 182 183 } 184 else if (Mouse.PositionOnScreen.X > 0) 185 { 186 187 } 188 236 237 tahtain.Position = Mouse.PositionOnWorld; 238 if (tahtain.Position.X < pelaaja1.Position.X) 239 { 240 pelaaja1.Image = LoadImage("Hero2"); 241 m16.Image = LoadImage("m16_levea2"); 242 } 243 else if (tahtain.Position.X > pelaaja1.Position.X) 244 { 245 pelaaja1.Image = LoadImage("Hero"); 246 m16.Image = LoadImage("m16_levea"); 247 } 189 248 tahtaa = Mouse.PositionOnWorld - pelaaja1.Position; 190 249 m16.Angle = tahtaa.Angle;
Note: See TracChangeset
for help on using the changeset viewer.