- Timestamp:
- 2013-07-23 14:58:15 (10 years ago)
- Location:
- 2013/30/NikiV
- Files:
-
- 10 added
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
2013/30/NikiV/Airbattle/Airbattle/Airbattle/Airbattle.cs
r4524 r4583 9 9 public class Airbattle : PhysicsGame 10 10 { 11 PhysicsObject alus; 12 Image aluskuva = LoadImage("alus"); 13 IntMeter pisteLaskuri; 14 ExplosionSystem rajahdys = new ExplosionSystem(LoadImage("rajahdys"), 100); 15 EasyHighScore topLista = new EasyHighScore(); 11 16 public override void Begin() 12 17 { 18 Aloitapeli(); 19 20 } 21 22 void Aloitapeli() 23 { 24 ClearAll(); 25 Add(rajahdys); 13 26 Level.Size = new Vector(800, 600); 14 27 SetWindowSize(800, 600, false); 15 // TODO: Kirjoita ohjelmakoodisi tähän16 PhysicsObject alus = new PhysicsObject(50.0, 50.0, Shape.Circle);17 Add(alus);18 alus.LinearDamping = 0.9;19 alus.CanRotate = false;20 alus.Tag = "alus";21 Image aluskuva = LoadImage("alus");22 alus.Image = aluskuva;23 AddCollisionHandler(alus, "hämis", PelaajaOsuu);24 28 25 PhysicsObject hamis = new PhysicsObject(50.0, 50.0); 26 hamis.X = 200; 27 Add(hamis); 28 hamis.CanRotate = false; 29 //hamis.AngularDamping = 0.9; 30 Image hamiskuva = LoadImage("hamis"); 31 hamis.Image = hamiskuva; 32 FollowerBrain seuraajanAivot = new FollowerBrain("alus"); 33 seuraajanAivot.Speed = 200; 34 seuraajanAivot.Active = true; 35 hamis.Brain = seuraajanAivot; 36 hamis.Tag = "hämis"; 29 LuoKentta(); 30 LuoPistelaskuri(); 31 MediaPlayer.Play("taustamusa"); 32 MediaPlayer.IsRepeating = true; 33 37 34 38 Level.CreateBorders(1.0, true);39 35 Camera.ZoomToLevel(); 36 Keyboard.Listen(Key.Space, ButtonState.Pressed, Ammu, "Ammu", alus); 40 37 41 38 Keyboard.Listen(Key.Left, ButtonState.Down, LiikutaPelaajaa, null, alus, new Vector(-1000, 0)); … … 54 51 Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 55 52 } 53 54 55 void Ammu(PhysicsObject ampuja) 56 { 57 PhysicsObject ammus = new PhysicsObject(10, 10); 58 //ammus.Image = luodinkuva; 59 60 ammus.Position = ampuja.Position; 61 ammus.IgnoresGravity = true; 62 ammus.Angle = ampuja.Angle; 63 ammus.Color = Color.Yellow; 64 ammus.CanRotate = false; 65 ammus.LifetimeLeft = TimeSpan.FromSeconds(2); 66 ammus.Tag = "ammus"; 67 ammus.CollisionIgnoreGroup = ampuja.CollisionIgnoreGroup; 68 ammus.Hit(Vector.FromLengthAndAngle(1000, ampuja.Angle + Angle.FromDegrees(90))); 69 Add(ammus); 70 AddCollisionHandler(ammus, "hämis", CollisionHandler.AddMeterValue(pisteLaskuri, 200)); 71 AddCollisionHandler(ammus, AmmusOsuu); 72 73 } 74 75 void AmmusOsuu(PhysicsObject ammus, PhysicsObject kohde) 76 { 77 ammus.Destroy(); 78 if(!kohde.Tag.Equals("seinä"))kohde.Destroy(); 79 } 80 81 82 83 56 84 void PelaajaOsuu(PhysicsObject alus, PhysicsObject hamis) 57 85 { 58 86 alus.Destroy(); 87 rajahdys.AddEffect(alus.X, alus.Y, 100); 88 topLista.EnterAndShow(pisteLaskuri.Value); 89 topLista.HighScoreWindow.Closed += IkkunaSuljettu; 90 59 91 } 60 92 void IkkunaSuljettu(Window sender) 93 { 94 Aloitapeli(); 95 } 61 96 62 97 void LiikutaPelaajaa(PhysicsObject alus, Vector nopeus) … … 99 134 ruudut.SetTileMethod('a', Luoalus); 100 135 ruudut.SetTileMethod('h', Luohamis); 101 ruudut.Execute( 20, 20);136 ruudut.Execute(50, 50); 102 137 } 103 138 void Luoalus(Vector paikka, double leveys, double korkeus) 104 139 { 105 alus = new PhysicsObject(10, 10); 140 alus = new PhysicsObject(leveys, korkeus, Shape.Circle); 141 Add(alus); 106 142 alus.Position = paikka; 143 alus.LinearDamping = 0.9; 144 alus.CollisionIgnoreGroup = 2; 145 alus.CanRotate = false; 146 alus.Tag = "alus"; 147 alus.Image = aluskuva; 148 AddCollisionHandler(alus, "hämis", PelaajaOsuu); 149 } 150 void Luohamis(Vector paikka, double leveys, double korkeus) 151 { 152 PhysicsObject hamis = new PhysicsObject(leveys, korkeus); 153 hamis.Position = paikka; 154 Add(hamis); 155 hamis.CanRotate = false; 156 //hamis.AngularDamping = 0.9; 157 Image hamiskuva = LoadImage("hamis"); 158 hamis.Image = hamiskuva; 159 FollowerBrain seuraajanAivot = new FollowerBrain("alus"); 160 seuraajanAivot.Speed = 200; 161 seuraajanAivot.Active = true; 162 hamis.Brain = seuraajanAivot; 163 hamis.Tag = "hämis"; 164 165 } 166 167 void LuoPistelaskuri() 168 { 169 pisteLaskuri = new IntMeter(0); 170 171 Label pisteNaytto = new Label(); 172 pisteNaytto.X = Screen.Left + 100; 173 pisteNaytto.Y = Screen.Top - 100; 174 pisteNaytto.TextColor = Color.Black; 175 pisteNaytto.Color = Color.White; 176 177 pisteNaytto.BindTo(pisteLaskuri); 178 Add(pisteNaytto); 179 } 180 181 182 183 184 185 107 186 108 187 } -
2013/30/NikiV/Airbattle/Airbattle/AirbattleContent/AirbattleContent.contentproj
r4524 r4583 59 59 </Compile> 60 60 </ItemGroup> 61 <ItemGroup> 62 <Compile Include="kentta1.txt"> 63 <Name>kentta1</Name> 64 <Importer>TextFileImporter</Importer> 65 <Processor>TextFileContentProcessor</Processor> 66 </Compile> 67 </ItemGroup> 68 <ItemGroup> 69 <Compile Include="taustamusa.mp3"> 70 <Name>taustamusa</Name> 71 <Importer>Mp3Importer</Importer> 72 <Processor>SongProcessor</Processor> 73 </Compile> 74 </ItemGroup> 75 <ItemGroup> 76 <Compile Include="token1.png"> 77 <Name>token1</Name> 78 <Importer>TextureImporter</Importer> 79 <Processor>TextureProcessor</Processor> 80 </Compile> 81 </ItemGroup> 82 <ItemGroup> 83 <Compile Include="plasmaammus.png"> 84 <Name>plasmaammus</Name> 85 <Importer>TextureImporter</Importer> 86 <Processor>TextureProcessor</Processor> 87 </Compile> 88 </ItemGroup> 89 <ItemGroup> 90 <Compile Include="rajahdys.png"> 91 <Name>rajahdys</Name> 92 <Importer>TextureImporter</Importer> 93 <Processor>TextureProcessor</Processor> 94 </Compile> 95 </ItemGroup> 96 <ItemGroup> 97 <Compile Include="1alus.png"> 98 <Name>1alus</Name> 99 <Importer>TextureImporter</Importer> 100 <Processor>TextureProcessor</Processor> 101 </Compile> 102 </ItemGroup> 103 <ItemGroup> 104 <Compile Include="2alusta.png"> 105 <Name>2alusta</Name> 106 <Importer>TextureImporter</Importer> 107 <Processor>TextureProcessor</Processor> 108 </Compile> 109 </ItemGroup> 110 <ItemGroup> 111 <Compile Include="3alusta.png"> 112 <Name>3alusta</Name> 113 <Importer>TextureImporter</Importer> 114 <Processor>TextureProcessor</Processor> 115 </Compile> 116 </ItemGroup> 117 <ItemGroup> 118 <Compile Include="perusvihu.png"> 119 <Name>perusvihu</Name> 120 <Importer>TextureImporter</Importer> 121 <Processor>TextureProcessor</Processor> 122 </Compile> 123 </ItemGroup> 61 124 <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 62 125 <!-- 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.