Changeset 3939 for 2012/kerho/LeoL
- Timestamp:
- 2013-02-23 15:53:49 (8 years ago)
- Location:
- 2012/kerho/LeoL
- Files:
-
- 2 added
- 2 deleted
- 13 edited
Legend:
- Unmodified
- Added
- Removed
-
2012/kerho/LeoL/JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!/JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!/JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!.csproj.Debug.cachefile
r3933 r3939 2 2 Content\Floor.xnb 3 3 Content\Wall.xnb 4 Content\ Spear.xnb4 Content\Pahis.xnb -
2012/kerho/LeoL/JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!/JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!/JHaapaduuuuuuuuuuuu__________________.cs
r3933 r3939 5 5 using Jypeli.Controls; 6 6 using Jypeli.Effects; 7 7 using Jypeli.Widgets; 8 8 9 9 public class JHaapaduuuuuuuuuuuu__________________ : PhysicsGame 10 10 { 11 AssaultRifle vihunAse; 12 EasyHighScore topLista = new EasyHighScore(); 11 13 PhysicsObject olio; 12 14 Image olionKuva = LoadImage("BatleAxe"); 13 15 Image lattiankuva = LoadImage("Floor"); 14 16 Image seinankuva = LoadImage("Wall"); 15 Image vihukuva = LoadImage("Spear"); 17 Image vihukuva = LoadImage("Pahis"); 18 double nopeus = 500.0; 19 int VIHUNALOITUSENERGIA = 10000; 20 21 IntMeter laskuri = new IntMeter(0); 22 23 16 24 public override void Begin() 17 25 { 18 // TODO: Kirjoita ohjelmakoodisi tähän 26 Valikko(null); 27 } 19 28 29 private void AloitaPeli() 30 { 20 31 Level.Width = Screen.Width; 21 32 Surfaces reunat = Level.CreateBorders(0, true, Color.Gray); … … 26 37 Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 27 38 olio = new PhysicsObject(100, 100); 28 olio.MaxVelocity = 300;39 olio.MaxVelocity = 2000; 29 40 olio.CanRotate = false; 30 41 olio.Image = olionKuva; … … 34 45 Level.BackgroundColor = Color.Black; 35 46 Level.Background.Image = lattiankuva; 36 Level.Background.ScaleToLevelByWidth(); 47 Level.Background.ScaleToLevelByWidth(); 37 48 38 49 Keyboard.Listen(Key.Left, ButtonState.Down, 39 LiikutaPelaajaa, null, new Vector(- 1000, 0));50 LiikutaPelaajaa, null, new Vector(-nopeus, 0)); 40 51 Keyboard.Listen(Key.Right, ButtonState.Down, 41 LiikutaPelaajaa, null, new Vector( 1000, 0));52 LiikutaPelaajaa, null, new Vector(nopeus, 0)); 42 53 Keyboard.Listen(Key.Up, ButtonState.Down, 43 LiikutaPelaajaa, null, new Vector(0, 1000));54 LiikutaPelaajaa, null, new Vector(0, nopeus)); 44 55 Keyboard.Listen(Key.Down, ButtonState.Down, 45 LiikutaPelaajaa, null, new Vector(0, - 1000));56 LiikutaPelaajaa, null, new Vector(0, -nopeus)); 46 57 47 LuoVihu(new Vector(-200, 100)); 58 LuoVihu(new Vector(-600, 85)); 59 } 60 61 void Valikko(Window ikkuna) 62 { 63 MultiSelectWindow alkuValikko = new MultiSelectWindow("Pelin alkuvalikko", "Aloita peli", "Parhaat pisteet","Lopeta", "Testi"); 64 Add(alkuValikko); 65 alkuValikko.AddItemHandler(0, AloitaPeli); 66 alkuValikko.AddItemHandler(1, ParhaatPisteet); 67 alkuValikko.AddItemHandler(2, Exit); 68 alkuValikko.AddItemHandler(3, TestiValikko); 48 69 } 49 70 50 71 void LiikutaPelaajaa(Vector vektori) 51 72 { 73 olio.Stop(); 52 74 olio.Angle = vektori.Angle; 53 olio. Push(vektori);75 olio.Hit(vektori); 54 76 } 55 77 … … 57 79 { 58 80 59 PhysicsObject vihunkuva = new PhysicsObject(40.0, 40.0); 60 vihunkuva.Position = vektori; 61 vihunkuva.Restitution = 1.0; 62 vihunkuva.Image = vihukuva; 63 Add(vihunkuva); 81 PhysicsObject vihollinen = new PhysicsObject(100.0, 100.0); 82 vihollinen.Position = vektori; 83 vihollinen.Restitution = 1.0; 84 vihollinen.Image = vihukuva; 85 Add(vihollinen); 86 IntMeter vihunElamaLaskuri = new IntMeter(VIHUNALOITUSENERGIA, 0, 10000); 87 vihunElamaLaskuri.LowerLimit += delegate() { VihollinenKuolee(vihollinen); }; 88 Label l = new Label(); 89 l.TextColor = Color.Black; 90 l.BindTo(vihunElamaLaskuri); 91 l.Color = Color.Red; 92 l.Position = new Vector(Screen.Right - 50, Screen.Top - 50); 93 Add(l); 94 vihollinen.CanRotate = false; 95 //Tehdään uudet satunnaisaivot, jotka liikkuvat nopeudella 200 96 RandomMoverBrain satunnaisAivot = new RandomMoverBrain(200); 97 satunnaisAivot.ChangeMovementSeconds = 3; 98 vihollinen.Brain = satunnaisAivot; 99 AddCollisionHandler(olio, vihollinen, CollisionHandler.AddMeterValue(vihunElamaLaskuri, -1)); 100 101 AddCollisionHandler(olio, vihollinen, CollisionHandler.AddMeterValue(laskuri, 1)); 102 // tehdään vihulle ase: 103 vihunAse = new AssaultRifle(0, 0); 104 vihunAse.Ammo.Value = 100000; 105 // mitä tapahtuu, kun ammus osuu johonkin: 106 vihunAse.ProjectileCollision = AmmusOsui; 107 vihollinen.Add(vihunAse); 108 Timer ampumisAjastin = new Timer(); 109 ampumisAjastin.Interval = 2.0; 110 ampumisAjastin.Timeout += VihuAmpuu; 111 ampumisAjastin.Start(); 64 112 } 65 113 114 private void VihollinenKuolee(PhysicsObject vihollinen) 115 { 116 vihollinen.Destroy(); 117 KysyParhaatPisteet(); 118 vihunAse.Destroy(); 119 } 66 120 121 void OlioTormasi(PhysicsObject tormaaja, PhysicsObject kohde) 122 { 123 kohde.Destroy(); 124 } 67 125 126 void VihuAmpuu() 127 { 128 vihunAse.Angle = RandomGen.NextDirection().Angle; 129 130 vihunAse.Shoot(); 131 } 132 133 void AmmusOsui(PhysicsObject tormaaja, PhysicsObject kohde) 134 { 135 if (kohde == null) return; 136 if (kohde.Equals(olio)) // Jos ammuksen kohteena on pelaaja eli pelaaja kuolee ja hävisi pelin: 137 { 138 olio.Destroy(); // tapetaan pelaaja 139 KysyParhaatPisteet(); 140 141 } 142 tormaaja.Destroy(); // Hävitetään panos 143 } 144 145 private void KysyParhaatPisteet() 146 { 147 topLista.EnterAndShow(laskuri.Value); 148 topLista.HighScoreWindow.Closed += Valikko; 149 } 150 151 void TestiValikko() 152 { 153 MultiSelectWindow msw = new MultiSelectWindow("Haloo", "Eka", "Toka"); 154 Add(msw); 155 msw.AddItemHandler(0, delegate { Valikko(null); }); 156 msw.AddItemHandler(1, ParhaatPisteet); 157 } 158 159 void ParhaatPisteet() 160 { 161 topLista.Show(); 162 topLista.HighScoreWindow.Closed += Valikko; 163 } 164 165 void luoLaskuri() 166 { 167 168 } 68 169 } 69 -
2012/kerho/LeoL/JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!/JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!/obj/x86/Debug/JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!.csproj.FileListAbsolute.txt
r3933 r3939 11 11 C:\MyTemp\ohjelmointikerho\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\bin\x86\Debug\Content\Wall.xnb 12 12 C:\MyTemp\ohjelmointikerho\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\bin\x86\Debug\Content\Spear.xnb 13 C:\MyTemp\ohjelmointikerho\LeoL\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\bin\x86\Debug\Content\BatleAxe.xnb 14 C:\MyTemp\ohjelmointikerho\LeoL\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\bin\x86\Debug\Content\Floor.xnb 15 C:\MyTemp\ohjelmointikerho\LeoL\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\bin\x86\Debug\Content\Wall.xnb 16 C:\MyTemp\ohjelmointikerho\LeoL\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\bin\x86\Debug\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!.exe 17 C:\MyTemp\ohjelmointikerho\LeoL\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\bin\x86\Debug\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!.pdb 18 C:\MyTemp\ohjelmointikerho\LeoL\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\bin\x86\Debug\Jypeli.dll 19 C:\MyTemp\ohjelmointikerho\LeoL\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\bin\x86\Debug\Jypeli.xml 20 C:\MyTemp\ohjelmointikerho\LeoL\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\obj\x86\Debug\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!.csprojResolveAssemblyReference.cache 21 C:\MyTemp\ohjelmointikerho\LeoL\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\obj\x86\Debug\Microsoft.Xna.Framework.RuntimeProfile.txt 22 C:\MyTemp\ohjelmointikerho\LeoL\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\obj\x86\Debug\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!.exe 23 C:\MyTemp\ohjelmointikerho\LeoL\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\obj\x86\Debug\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!.pdb 24 C:\MyTemp\ohjelmointikerho\LeoL\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\bin\x86\Debug\Content\Pahis.xnb -
2012/kerho/LeoL/JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!/JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!/obj/x86/Debug/cachefile-{2B74C38A-0F18-4AFD-8999-669D1D00046B}-targetpath.txt
r3933 r3939 2 2 Content\Floor.xnb 3 3 Content\Wall.xnb 4 Content\ Spear.xnb4 Content\Pahis.xnb -
2012/kerho/LeoL/JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!/JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!Content/JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!Content.contentproj
r3933 r3939 65 65 </ItemGroup> 66 66 <ItemGroup> 67 <Compile Include=" Spear.png">68 <Name> Spear</Name>67 <Compile Include="Pahis.png"> 68 <Name>Pahis</Name> 69 69 <Importer>TextureImporter</Importer> 70 70 <Processor>TextureProcessor</Processor> -
2012/kerho/LeoL/JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!/JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!Content/obj/x86/Debug/JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!Content.contentproj.FileListAbsolute.txt
r3933 r3939 1 1 C:\MyTemp\ohjelmointikerho\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!Content\obj\x86\Debug\ResolveAssemblyReference.cache 2 C:\MyTemp\ohjelmointikerho\LeoL\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!Content\obj\x86\Debug\JHaapaduuuuuuuuuuuu!!!!!!!!!!!!!!!!!!Content.contentprojResolveAssemblyReference.cache
Note: See TracChangeset
for help on using the changeset viewer.