- Timestamp:
- 2015-06-24 12:02:32 (8 years ago)
- Location:
- 2015/26/AkseliP
- Files:
-
- 9 added
- 2 deleted
- 16 edited
Legend:
- Unmodified
- Added
- Removed
-
2015/26/AkseliP/ekapeli2/ekapeli2/ekapeli2/ekapeli2.cs
r6182 r6240 7 7 using Jypeli.Widgets; 8 8 9 class Pelaaja : PlatformCharacter 10 { 11 private IntMeter elamaLaskuri = new IntMeter(3, 0, 3); 12 public IntMeter ElamaLaskuri { get { return elamaLaskuri; } } 13 14 public Pelaaja(double leveys, double korkeus) 15 : base(leveys, korkeus) 16 { 17 elamaLaskuri.LowerLimit += delegate { this.Destroy(); }; 18 } 19 } 20 21 9 22 public class ekapeli2 : PhysicsGame 10 23 { … … 13 26 const int RUUDUN_KOKO = 40; 14 27 15 PlatformCharacter pelaaja1; 28 Pelaaja pelaaja1; 29 Pelaaja pelaaja2; 16 30 17 31 Image pelaajanKuva = LoadImage("hahmo"); … … 20 34 Image multakuva = LoadImage("multa"); 21 35 Image asekuva = LoadImage("ak47"); 36 private Image[] ukkelinKavely = LoadImages("hahmo", "hahmo2", "hahmo3"); 37 22 38 23 39 Image[] kolikkokuvat = LoadImages("coin1", "coin2", "coin3", "coin4", "coin4", "coin5", "coin6", "coin7", "coin8", "coin9", "coin10"); … … 32 48 LisaaNappaimet(); 33 49 34 Camera.Follow(pelaaja1 );35 Camera. ZoomFactor = 1.2;36 Camera. StayInLevel = true;50 Camera.Follow(pelaaja1, pelaaja2); 51 Camera.FollowXMargin = 100; 52 Camera.FollowYMargin = 100; 37 53 38 54 IsMouseVisible = true; … … 44 60 kentta.SetTileMethod('#', LisaaTaso); 45 61 kentta.SetTileMethod('*', LisaaTahti); 46 kentta.SetTileMethod('N', LisaaPelaaja); 62 kentta.SetTileMethod('N', LisaaPelaaja1); 63 kentta.SetTileMethod('o', LisaaPelaaja2); 47 64 kentta.SetTileMethod('m', LisaaMulta); 48 65 kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); … … 62 79 void LisaaTahti(Vector paikka, double leveys, double korkeus) 63 80 { 64 PhysicsObject tahti = PhysicsObject.CreateStaticObject(leveys *0.5, korkeus*0.5);81 PhysicsObject tahti = PhysicsObject.CreateStaticObject(leveys * 0.5, korkeus * 0.5); 65 82 tahti.IgnoresCollisionResponse = true; 66 83 tahti.Position = paikka; … … 72 89 } 73 90 74 void LisaaPelaaja(Vector paikka, double leveys, double korkeus) 75 { 76 pelaaja1 = new PlatformCharacter(leveys*0.6, korkeus*1.5); 77 pelaaja1.Position = paikka; 78 79 pelaaja1.Mass = 4.0; 80 pelaaja1.Image = pelaajanKuva; 81 AddCollisionHandler(pelaaja1, "tahti", TormaaTahteen); 82 Add(pelaaja1); 91 Pelaaja LisaaPelaaja(Vector paikka, double leveys, double korkeus) 92 { 93 Pelaaja pelaaja = new Pelaaja(leveys * 0.6, korkeus * 1.5); 94 pelaaja.Position = paikka; 95 pelaaja.Tag = "pelaaja"; 96 pelaaja.Mass = 4.0; 97 pelaaja.Image = pelaajanKuva; 98 AddCollisionHandler(pelaaja, "tahti", TormaaTahteen); 99 Add(pelaaja); 100 pelaaja.Animation = new Animation(ukkelinKavely); 101 pelaaja.AnimWalk = new Animation(ukkelinKavely); 83 102 //pelaaja1 on PlatformCharacter-tyyppinen 84 pelaaja1.Weapon = new AssaultRifle(30, 30); 85 pelaaja1.Weapon.Image = asekuva; 86 pelaaja1.Weapon.X = 5; 87 pelaaja1.Weapon.Y = -4; 103 //pelaaja1.Animation.Start(); 104 pelaaja.AnimIdle = pelaajanKuva; 105 pelaaja.Animation.FPS = 1; 106 pelaaja.Weapon = new AssaultRifle(30, 30); 107 pelaaja.Weapon.Image = asekuva; 108 pelaaja.Weapon.X = 5; 109 pelaaja.Weapon.Y = -4; 88 110 89 111 //Ammusten määrä aluksi: 90 pelaaja 1.Weapon.Ammo.Value = 1000;112 pelaaja.Weapon.Ammo.Value = 1000; 91 113 92 114 //Mitä tapahtuu kun ammus osuu johonkin? 93 pelaaja1.Weapon.ProjectileCollision = AmmusOsui; 94 115 pelaaja.Weapon.ProjectileCollision = AmmusOsui; 116 return pelaaja; 117 } 118 119 void LisaaPelaaja1(Vector paikka, double leveys, double korkeus) 120 { 121 pelaaja1 = LisaaPelaaja(paikka, leveys, korkeus); 122 } 123 124 void LisaaPelaaja2(Vector paikka, double leveys, double korkeus) 125 { 126 pelaaja2 = LisaaPelaaja(paikka, leveys, korkeus); 95 127 } 96 128 … … 100 132 Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 101 133 Mouse.Listen(MouseButton.Left, ButtonState.Pressed, AmmuAseella, "ampuu aseella", pelaaja1); 102 Mouse.ListenMovement(0.0, täh ääaseella, "");103 104 Keyboard.Listen(Key. Left, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus);105 Keyboard.Listen(Key. Right, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, nopeus);106 Keyboard.Listen(Key. Up, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus);134 Mouse.ListenMovement(0.0, tähtääaseella1, ""); 135 136 Keyboard.Listen(Key.A, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 137 Keyboard.Listen(Key.D, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, nopeus); 138 Keyboard.Listen(Key.Space, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 107 139 108 140 ControllerOne.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu pelistä"); 109 141 110 ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, Liikuta, "Pelaaja liikkuu vasemmalle", pelaaja1, -nopeus); 111 ControllerOne.Listen(Button.DPadRight, ButtonState.Down, Liikuta, "Pelaaja liikkuu oikealle", pelaaja1, nopeus); 112 ControllerOne.Listen(Button.A, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 142 ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, Liikuta, "Pelaaja liikkuu vasemmalle", pelaaja2, -nopeus); 143 ControllerOne.Listen(Button.DPadRight, ButtonState.Down, Liikuta, "Pelaaja liikkuu oikealle", pelaaja2, nopeus); 144 ControllerOne.Listen(Button.A, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja2, hyppyNopeus); 145 ControllerOne.Listen(Button.RightShoulder, ButtonState.Pressed, AmmuAseella, "ampuu aseella", pelaaja2); 146 ControllerOne.ListenAnalog(AnalogControl.RightStick, 0.1, tähtääaseella2, ""); 113 147 114 148 PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); … … 145 179 { 146 180 ammus.Destroy(); 147 } 148 149 void AmmuAseella(PlatformCharacter pelaaja) 150 { 151 181 182 if (kohde.Tag.Equals("pelaaja")) 183 { 184 ((Pelaaja)kohde).ElamaLaskuri.Value -= 1; 185 } 186 } 187 188 void AmmuAseella(Pelaaja pelaaja) 189 { 190 if (pelaaja.ElamaLaskuri.Value == 0) 191 { 192 return; 193 } 152 194 153 195 PhysicsObject ammus = pelaaja.Weapon.Shoot(); … … 161 203 162 204 } 163 void tähääaseella(AnalogState hiiri) 205 206 void tähtääaseella1(AnalogState hiiri) 164 207 { 165 208 pelaaja1.Weapon.AbsoluteAngle = (Mouse.PositionOnWorld - pelaaja1.Position).Angle; 166 209 167 210 } 168 211 212 void tähtääaseella2(AnalogState tatti) 213 { 214 pelaaja2.Weapon.AbsoluteAngle = tatti.StateVector.Angle; 215 216 } 217 218 219 169 220 } -
2015/26/AkseliP/ekapeli2/ekapeli2/ekapeli2/ekapeli2.csproj
r6162 r6240 118 118 <Content Include="Game.ico" /> 119 119 <Content Include="GameThumbnail.png" /> 120 <Content Include="hahmo.png" /> 120 121 </ItemGroup> 121 122 <ItemGroup> -
2015/26/AkseliP/ekapeli2/ekapeli2/ekapeli2/ekapeli2.csproj.Debug.cachefile
r6182 r6240 19 19 Content\22.xnb 20 20 Content\hahmo2.xnb 21 Content\hahmo3.xnb -
2015/26/AkseliP/ekapeli2/ekapeli2/ekapeli2/obj/x86/Debug/ContentPipeline-{CE3354F9-E734-486A-929C-C9F049ED46A0}.xml
r6182 r6240 27 27 <Options>None</Options> 28 28 <Output>C:\MyTemp\AkseliP\ekapeli2\ekapeli2\ekapeli2\bin\x86\Debug\Content\kentta1.xnb</Output> 29 <Time>2015-06-2 3T13:40:13.1840274+03:00</Time>29 <Time>2015-06-24T11:14:37.3064012+03:00</Time> 30 30 </Item> 31 31 <Item> … … 180 180 <Options>None</Options> 181 181 <Output>C:\MyTemp\AkseliP\ekapeli2\ekapeli2\ekapeli2\bin\x86\Debug\Content\hahmo2.xnb</Output> 182 <Time>2015-06-23T14:45:48.2247274+03:00</Time> 182 <Time>2015-06-23T14:50:45.7619274+03:00</Time> 183 </Item> 184 <Item> 185 <Source>hahmo3.png</Source> 186 <Name>hahmo3</Name> 187 <Importer>TextureImporter</Importer> 188 <Processor>TextureProcessor</Processor> 189 <Options>None</Options> 190 <Output>C:\MyTemp\AkseliP\ekapeli2\ekapeli2\ekapeli2\bin\x86\Debug\Content\hahmo3.xnb</Output> 191 <Time>2015-06-24T10:09:08.2758012+03:00</Time> 183 192 </Item> 184 193 <BuildSuccessful>true</BuildSuccessful> -
2015/26/AkseliP/ekapeli2/ekapeli2/ekapeli2/obj/x86/Debug/cachefile-{CE3354F9-E734-486A-929C-C9F049ED46A0}-targetpath.txt
r6182 r6240 19 19 Content\22.xnb 20 20 Content\hahmo2.xnb 21 Content\hahmo3.xnb -
2015/26/AkseliP/ekapeli2/ekapeli2/ekapeli2/obj/x86/Debug/ekapeli2.csproj.FileListAbsolute.txt
r6182 r6240 27 27 C:\MyTemp\AkseliP\ekapeli2\ekapeli2\ekapeli2\bin\x86\Debug\Content\22.xnb 28 28 C:\MyTemp\AkseliP\ekapeli2\ekapeli2\ekapeli2\bin\x86\Debug\Content\hahmo2.xnb 29 C:\MyTemp\AkseliP\ekapeli2\ekapeli2\ekapeli2\bin\x86\Debug\Content\hahmo3.xnb -
2015/26/AkseliP/ekapeli2/ekapeli2/ekapeli2Content/ekapeli2Content.contentproj
r6182 r6240 163 163 </Compile> 164 164 </ItemGroup> 165 <ItemGroup> 166 <Compile Include="hahmo3.png"> 167 <Name>hahmo3</Name> 168 <Importer>TextureImporter</Importer> 169 <Processor>TextureProcessor</Processor> 170 </Compile> 171 </ItemGroup> 172 <ItemGroup> 173 <Compile Include="elämät.jpg"> 174 <Name>elämät</Name> 175 <Importer>TextureImporter</Importer> 176 <Processor>TextureProcessor</Processor> 177 </Compile> 178 </ItemGroup> 165 179 <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 166 180 <!-- To modify your build process, add your task inside one of the targets below and uncomment it. -
2015/26/AkseliP/ekapeli2/ekapeli2/ekapeli2Content/kentta1.txt
r6182 r6240 4 4 5 5 6 7 8 9 N ## *******6 7 ## ## 8 # # 9 N ## o 10 10 ###################################################### 11 11 mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm 12 mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm 13 mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm 14 mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm
Note: See TracChangeset
for help on using the changeset viewer.