Changeset 3865 for 2012/09-22/JariK/Jimmy The Survivor!/Jimmy The Survivor!/Jimmy The Survivor!/Jimmy_The_Survivor_.cs
- Timestamp:
- 2012-10-20 15:56:28 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
2012/09-22/JariK/Jimmy The Survivor!/Jimmy The Survivor!/Jimmy The Survivor!/Jimmy_The_Survivor_.cs
r3854 r3865 12 12 PhysicsObject Jimmy; 13 13 PlasmaCannon Jimmyase; 14 EasyHighScore topLista = new EasyHighScore(); 15 16 DoubleMeter elamaLaskuri; 14 17 15 18 public override void Begin() 16 19 { 20 LuoElamaLaskuri(); 21 LuoPistelaskuri(); 22 17 23 IsMouseVisible = true; 24 MultiSelectWindow alkuValikko = new MultiSelectWindow("Jimmy The Survivor", "Start game", "Top ten", "Exit game"); 25 26 alkuValikko.AddItemHandler(0, AloitaPeli); 27 alkuValikko.AddItemHandler(1, ParhaatPisteet); 28 alkuValikko.AddItemHandler(2, Exit); 29 alkuValikko.DefaultCancel = 2; 30 Add(alkuValikko); 18 31 19 32 Gravity = new Vector(0.0, -800.0); … … 23 36 Jimmy.Restitution = 1.0; 24 37 Add(Jimmy); 25 AddCollisionHandler(Jimmy, PelaajaTormasi);38 AddCollisionHandler(Jimmy, VihollinenTormasi); 26 39 Jimmyase = new PlasmaCannon(30, 10); 40 Jimmyase.Ammo.Value = 1000; 27 41 Jimmy.Add(Jimmyase); 28 42 29 PhysicsObject Vihollinen = new PhysicsObject(50, 50); 30 Vihollinen.Shape = Shape.Ellipse; 31 Vihollinen.Color = Color.Blue; 32 Vihollinen.Position = new Vector(250, 30); 33 Add(Vihollinen); 34 Vihollinen.Tag = "Vihollinen"; 35 43 44 45 36 46 37 47 Surface alaReuna = Surface.CreateBottom(Level); … … 47 57 oikeareuna.Color = Color.LightBlue; 48 58 Add(oikeareuna); 49 59 FollowerBrain seuraajanAivot = new FollowerBrain(Jimmy); 60 seuraajanAivot.Speed = 10; 61 seuraajanAivot.Active = true; 62 seuraajanAivot.DistanceClose = 2000; 63 seuraajanAivot.StopWhenTargetClose = false; 64 seuraajanAivot.TargetClose += mitaTapahtuuKunOllaanLahella; 50 65 Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Poistu"); 51 66 Keyboard.Listen(Key.Space, ButtonState.Down, AmmuAseella, "Ammu", Jimmyase); 52 67 Mouse.ListenMovement(0.1, Tahtaa, "Tähtää aseella"); 53 54 } 55 56 57 58 59 void LiikutaPelaajaa(Vector vektori) 60 { 61 Jimmy.Push(vektori); 62 } 63 68 LisaaVihollisia(); 69 } 64 70 void CreateBorders() 65 71 { 66 67 } 68 void PelaajaTormasi(PhysicsObject Vihollinen, PhysicsObject Jimmy) 69 { 70 72 73 } 74 void VihollinenTormasi(PhysicsObject Jimmy, PhysicsObject kohde) 75 { 76 //AddCollisionHandler(Jimmy, "Vihollinen", CollisionHandler.AddMeterValue(elamaLaskuri, -1)); 77 elamaLaskuri.Value -= 1; 78 71 79 } 72 80 void AmmuAseella(PlasmaCannon ase) 73 81 { 74 82 PhysicsObject ammus = ase.Shoot(); 75 83 76 84 if (ammus != null) 77 85 { … … 79 87 } 80 88 81 ase.FireRate = 3.0;89 ase.FireRate = 10; 82 90 } 83 91 void AmmusOsui(PhysicsObject ammus, PhysicsObject Vihollinen) … … 92 100 void Tahtaa(AnalogState hiirenLiike) 93 101 { 94 102 95 103 Vector suunta = (Mouse.PositionOnWorld - Jimmyase.AbsolutePosition).Normalize(); 96 104 Jimmyase.Angle = suunta.Angle; … … 98 106 void Vihollinenkuolee(PhysicsObject ammus, PhysicsObject Vihollinen) 99 107 { 100 Vihollinen.Destroy(); 108 Vihollinen.Destroy(); 109 pisteLaskuri.Value += 1; 101 110 } 102 111 void LisaaVihollisia() 103 112 { 104 113 Timer ajastin = new Timer(); 105 ajastin.Interval = 1.0;106 ajastin.Timeout += LisaaViholli sia;114 ajastin.Interval = 0.5; 115 ajastin.Timeout += LisaaVihollinen; 107 116 ajastin.Start(); 108 117 } 118 void LisaaVihollinen() 119 { 120 PhysicsObject Vihollinen = new PhysicsObject(50, 50); 121 Vihollinen.Shape = Shape.Ellipse; 122 Vihollinen.Color = Color.Blue; 123 Vihollinen.Position = new Vector(250, 30); 124 Add(Vihollinen); 125 Vihollinen.Tag = "Vihollinen"; 126 127 128 129 130 131 } 132 void mitaTapahtuuKunOllaanLahella() 133 { 134 135 136 } 137 void AloitaPeli() 138 { 139 } 140 void ParhaatPisteet() 141 { 142 } 143 144 IntMeter pisteLaskuri; 145 146 void LuoPistelaskuri() 147 { 148 pisteLaskuri = new IntMeter(0); 149 150 Label pisteNaytto = new Label(); 151 pisteNaytto.X = Screen.Left + 100; 152 pisteNaytto.Y = Screen.Top - 100; 153 pisteNaytto.TextColor = Color.Black; 154 pisteNaytto.Color = Color.White; 155 156 pisteNaytto.BindTo(pisteLaskuri); 157 Add(pisteNaytto); 158 159 160 161 162 } 163 void PainettiinValikonNappia(int valinta) 164 { 165 switch (valinta) 166 { 167 case 0: 168 // AloitaPeli(); 169 break; 170 case 1: 171 // ParhaatPisteet(); 172 break; 173 case 2: 174 Exit(); 175 break; 176 } 177 178 } 179 void LuoElamaLaskuri() 180 { 181 elamaLaskuri = new DoubleMeter(10); 182 elamaLaskuri.MaxValue = 100; 183 elamaLaskuri.LowerLimit += ElamaLoppui; 184 185 186 ProgressBar elamaPalkki = new ProgressBar(150, 20); 187 elamaPalkki.X = Screen.Left + 150; 188 elamaPalkki.Y = Screen.Top - 20; 189 elamaPalkki.BindTo(elamaLaskuri); 190 Add(elamaPalkki); 191 } 192 193 void ElamaLoppui() 194 { 195 ClearGameObjects(); 196 MessageDisplay.Add("Jimmy you fool! You can't never stop my army! Muahhahhahhahhahhaa! "); 197 topLista.EnterAndShow(pisteLaskuri.Value); 198 topLista.HighScoreWindow.Closed += delegate { Exit(); }; 199 200 } 201 202 203 109 204 }
Note: See TracChangeset
for help on using the changeset viewer.