Changeset 7882
- Timestamp:
- 2016-07-06 13:49:33 (7 years ago)
- Location:
- 2016/27/AnttiN/SalainenTehtävä
- Files:
-
- 1 added
- 13 edited
Legend:
- Unmodified
- Added
- Removed
-
2016/27/AnttiN/SalainenTehtävä/SalainenTehtävä/SalainenTehtävä/SalainenTehtävä.cs
r7866 r7882 24 24 Image SahkoansaTykkiKuva = LoadImage("SahkoansaTykki"); 25 25 Image SahkoansaSahkoKuva = LoadImage("SahkoansaSahko"); 26 ase.Image = null;26 Image RajahdysKuva = LoadImage("Rajahdys"); 27 27 28 28 AssaultRifle pelaajan1Ase; 29 29 30 30 SoundEffect maaliAani = LoadSoundEffect("maali"); 31 ase.AttackSound = null;32 31 33 32 public override void Begin() 34 33 { 35 34 IsMouseVisible = true; 36 35 LuoKentta(); 37 36 LisaaNappaimet(); … … 81 80 pelaaja1.Mass = 4.0; 82 81 pelaaja1.Image = pelaajanKuva; 82 AddCollisionHandler(pelaaja1, "SahkoansaSahko", TuhoaPelaaja); 83 83 AddCollisionHandler(pelaaja1, "tahti", TormaaTahteen); 84 84 AddCollisionHandler(pelaaja1, "Laskeutuminen", TormaaLaskeutumiseen); … … 88 88 89 89 pelaajan1Ase = new AssaultRifle(30, 10); 90 pelaajan1Ase = new AssaultRifle(30, 10); 90 pelaajan1Ase.Power.MaxValue = 50; 91 pelaajan1Ase.FireRate = 1; 91 92 pelaajan1Ase.ProjectileCollision = AmmusOsui; 92 93 pelaaja1.Add(pelaajan1Ase); 93 94 94 //pelaaja1 on PlatformCharacter-tyyppinen 95 pelaaja1.Weapon = new AssaultRifle(30, 10); 96 97 //Ammusten määrä aluksi: 98 pelaaja1.Weapon.Ammo.Value = 1000000; 99 100 //Mitä tapahtuu kun ammus osuu johonkin? 101 pelaaja1.Weapon.ProjectileCollision = AmmusOsui; 102 95 103 96 } 104 97 … … 136 129 Sahkoansa.RotateImage = true; 137 130 Sahkoansa.Angle = kaanna; 131 132 Label pisteNaytto = new Label(); 133 pisteNaytto.TextColor = Color.Black; 134 pisteNaytto.Color = Color.White; 135 pisteNaytto.BindTo(Sahkoansa.ElamaLaskuri); 136 Sahkoansa.Add(pisteNaytto); 138 137 } 139 138 … … 160 159 Keyboard.Listen(Key.Up, ButtonState.Down, Liikuta, "Pelaaja liikkuu ylöspäin", pelaaja1, new Vector(0, nopeus)); 161 160 Keyboard.Listen(Key.Down, ButtonState.Down, Liikuta, "pelaaja liikkuu alaspäin", pelaaja1, new Vector(0, -nopeus)); 162 Keyboard.Listen(Key.Space, ButtonState.Down, AmmuAseella, "Ammu", pelaajan1Ase);163 Mouse.ListenMovement(0.1, Tahtaa, " tähtää aseella");161 Mouse.Listen(MouseButton.Left, ButtonState.Down, AmmuAseella, "Ammu", pelaajan1Ase); 162 Mouse.ListenMovement(0.1, Tahtaa, "Tähtää aseella"); 164 163 165 164 … … 192 191 } 193 192 193 194 void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 195 { 196 ammus.Destroy(); 197 if(kohde.Tag.ToString() == "SahkoansaTykki") 198 { 199 ((SahkoansaTykki)kohde).ElamaLaskuri.Value -= 10; 200 } 201 } 202 203 void Tahtaa(AnalogState hiirenLiike) 204 { 205 Vector suunta = (Mouse.PositionOnWorld - pelaajan1Ase.AbsolutePosition).Normalize(); 206 pelaajan1Ase.Angle = suunta.Angle; 207 } 208 void AmmuAseella(AssaultRifle ase) 209 { 210 PhysicsObject ammus = ase.Shoot(); 211 212 if (ammus != null) 213 { 214 ammus.Size *= 1; 215 //ammus.Image = ... 216 ammus.MaximumLifetime = TimeSpan.FromSeconds(20.0); 217 } 218 } 219 220 void TuhoaPelaaja(PhysicsObject pelaaja, PhysicsObject kohde) 221 { 222 pelaaja.Destroy(); 223 Explosion rajahdys = new Explosion(500); 224 rajahdys.Position = pelaaja.Position; 225 Add(rajahdys); 226 Mouse.Disable(MouseButton.Left); 227 Timer.SingleShot(2, Havisit); 228 } 229 230 void Havisit() 231 { 232 ClearAll(); 233 Level.Background.Color = Color.Black; 234 MultiSelectWindow alkuValikko = new MultiSelectWindow("Hävisit pelin","Aloita alusta", "Lopeta"); 235 Add(alkuValikko); 236 alkuValikko.AddItemHandler(0, Begin); 237 alkuValikko.AddItemHandler(1, Exit); 238 } 194 239 } 240 241 195 242 196 243 class SahkoansaTykki : PhysicsObject … … 209 256 } 210 257 211 void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 212 { 213 ammus.Destroy(); 214 } 215 216 void AmmuAseella(AssaultRifle ase) 217 { 218 PhysicsObject ammus = ase.Shoot(); 219 220 if (ammus != null) 221 { 222 ammus.Size *= 3; 223 ammus.Image = ... 224 ammus.MaximumLifetime = TimeSpan.FromSeconds(2.0); 225 pyssy.Angle += Angle.FromDegrees(1); 226 227 AssaultRifle pyssy = new AssaultRifle(20, 5); 228 pyssy.ProjectileCollision = AmmusOsui; 229 ase.InfiniteAmmo = true; 230 ase.Power.Value = 2000; 231 ase.Power.DefaultValue = 2000; 232 ase.FireRate = 0.5; 233 ase.AmmoIgnoresGravity = false; 234 ase.AmmoIgnoresExplosions = false; 235 ase.CanHitOwner = false; 236 ase.Image = aseenKuva; 237 ase.AttackSound = aseenAani; 238 ase.X = 10.0; 239 ase.Y = -5.0; 240 } 241 } 242 243 void Tahtaa(AnalogState hiirenLiike) 244 { 245 Vector suunta = (Mouse.PositionOnWorld - pelaaja1.Weapon.AbsolutePosition).Normalize(); 246 pelaaja1.Weapon.Angle = suunta.Angle; 247 } 258 259 248 260 249 261 } -
2016/27/AnttiN/SalainenTehtävä/SalainenTehtävä/SalainenTehtävä/SalainenTehtävä.csproj.Debug.cachefile
r7862 r7882 10 10 Content\SahkoansaTykki.xnb 11 11 Content\SahkoansaSahko.xnb 12 Content\Rajahdys.xnb -
2016/27/AnttiN/SalainenTehtävä/SalainenTehtävä/SalainenTehtävä/obj/x86/Debug/ContentPipeline-{FB1067CC-FEED-45F1-8CB8-8F3DD59AB260}.xml
r7862 r7882 72 72 <Options>None</Options> 73 73 <Output>C:\MyTemp\AnttiN\SalainenTehtävä\SalainenTehtävä\SalainenTehtävä\bin\x86\Debug\Content\Hahmo.xnb</Output> 74 <Time>2016-07-06T1 1:08:36.8796757+03:00</Time>74 <Time>2016-07-06T13:02:17.4065692+03:00</Time> 75 75 </Item> 76 76 <Item> … … 100 100 <Output>C:\MyTemp\AnttiN\SalainenTehtävä\SalainenTehtävä\SalainenTehtävä\bin\x86\Debug\Content\SahkoansaSahko.xnb</Output> 101 101 <Time>2016-07-06T10:17:30.2356913+03:00</Time> 102 </Item> 103 <Item> 104 <Source>Rajahdys.png</Source> 105 <Name>Rajahdys</Name> 106 <Importer>TextureImporter</Importer> 107 <Processor>TextureProcessor</Processor> 108 <Options>None</Options> 109 <Output>C:\MyTemp\AnttiN\SalainenTehtävä\SalainenTehtävä\SalainenTehtävä\bin\x86\Debug\Content\Rajahdys.xnb</Output> 110 <Time>2016-07-06T10:25:38.4196913+03:00</Time> 102 111 </Item> 103 112 <BuildSuccessful>true</BuildSuccessful> -
2016/27/AnttiN/SalainenTehtävä/SalainenTehtävä/SalainenTehtävä/obj/x86/Debug/SalainenTehtävä.csproj.FileListAbsolute.txt
r7862 r7882 18 18 C:\MyTemp\AnttiN\SalainenTehtÀvÀ\SalainenTehtÀvÀ\SalainenTehtÀvÀ\bin\x86\Debug\Content\SahkoansaTykki.xnb 19 19 C:\MyTemp\AnttiN\SalainenTehtÀvÀ\SalainenTehtÀvÀ\SalainenTehtÀvÀ\bin\x86\Debug\Content\SahkoansaSahko.xnb 20 C:\MyTemp\AnttiN\SalainenTehtÀvÀ\SalainenTehtÀvÀ\SalainenTehtÀvÀ\bin\x86\Debug\Content\Rajahdys.xnb -
2016/27/AnttiN/SalainenTehtävä/SalainenTehtävä/SalainenTehtävä/obj/x86/Debug/cachefile-{FB1067CC-FEED-45F1-8CB8-8F3DD59AB260}-targetpath.txt
r7862 r7882 10 10 Content\SahkoansaTykki.xnb 11 11 Content\SahkoansaSahko.xnb 12 Content\Rajahdys.xnb -
2016/27/AnttiN/SalainenTehtävä/SalainenTehtävä/SalainenTehtäväContent/SalainenTehtäväContent.contentproj
r7862 r7882 116 116 </Compile> 117 117 </ItemGroup> 118 <ItemGroup> 119 <Compile Include="Rajahdys.png"> 120 <Name>Rajahdys</Name> 121 <Importer>TextureImporter</Importer> 122 <Processor>TextureProcessor</Processor> 123 </Compile> 124 </ItemGroup> 118 125 <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 119 126 <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Note: See TracChangeset
for help on using the changeset viewer.