Changeset 2795 for 2012/23/RamiP/YAG2DSSBase/YAG2DSS/YAG2DSS/YAG2DSS.cs
- Timestamp:
- 2012-06-05 15:00:03 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
2012/23/RamiP/YAG2DSSBase/YAG2DSS/YAG2DSS/YAG2DSS.cs
r2792 r2795 16 16 17 17 List<PhysicsObject> Pelaaja = new List<PhysicsObject>(); 18 List<PhysicsObject> Madonreika = new List<PhysicsObject>(); 19 List<PhysicsObject> Minioni = new List<PhysicsObject>(); 20 21 Timer Madonreikaajastin; 18 22 19 23 public override void Begin() … … 29 33 LuoKentta(); 30 34 AsetaNappaimet(); 35 LuoAjastin(); 36 //LuoMadonreika(); 31 37 //PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 32 38 Keyboard.Listen(Key.Escape, ButtonState.Pressed, ShowExit, "Lopeta peli"); … … 59 65 pelaaja.AngularDamping = 0.1; 60 66 pelaaja.Shape = Shape.Triangle; 67 pelaaja.Angle = Angle.FromDegrees(pelaaja.Angle.Degrees + 90); 61 68 62 69 Pelaaja.Add(pelaaja); … … 64 71 } 65 72 73 void LuoAjastin() 74 { 75 Madonreikaajastin = new Timer(); 76 Madonreikaajastin.Interval = 2; 77 Madonreikaajastin.Timeout += new Action(NaytaAnimaatio); 78 Madonreikaajastin.Start(); 79 } 80 81 void NaytaAnimaatio() 82 { 83 Timer.SingleShot(2, LuoMadonreika); 84 } 85 86 void LuoMadonreika() 87 { 88 int arvo = RandomGen.NextInt(4); 89 90 double x = 0.0; 91 double y = 0.0; 92 93 // yläreuna 94 if (arvo == 0) 95 { 96 x = RandomGen.NextDouble(Level.Left + 30, Level.Right - 30); 97 y = RandomGen.NextDouble(Level.Top - 30, Level.Top - 300); 98 } 99 // alareuna 100 else if (arvo == 1) 101 { 102 x = RandomGen.NextDouble(Level.Left + 30, Level.Right - 30); 103 y = RandomGen.NextDouble(Level.Bottom + 30, Level.Bottom + 300); 104 } 105 // vasen reuna 106 else if (arvo == 2) 107 { 108 x = RandomGen.NextDouble(Level.Left + 30, Level.Left + 300); 109 y = RandomGen.NextDouble(Level.Bottom + 30, Level.Top - 30); 110 } 111 // oikea reuna 112 else 113 { 114 x = RandomGen.NextDouble(Level.Right - 30, Level.Right - 300); 115 y = RandomGen.NextDouble(Level.Bottom + 30, Level.Top - 30); 116 } 117 118 PhysicsObject madonreika = PhysicsObject.CreateStaticObject(50, 50); 119 120 madonreika.X = x; 121 madonreika.Y = y; 122 madonreika.CollisionIgnoreGroup = 5; 123 Madonreika.Add(madonreika); 124 Add(madonreika); 125 LuoMinioni(Madonreika.Count - 1); 126 } 127 128 void LuoMinioni(int madonreikaID) 129 { 130 PhysicsObject minioni = new PhysicsObject(20, 20); 131 132 minioni.X = Madonreika[madonreikaID].X; 133 minioni.Y = Madonreika[madonreikaID].Y; 134 minioni.CollisionIgnoreGroup = 5; 135 minioni.Shape = Shape.Triangle; 136 minioni.Color = Color.Red; 137 minioni.Angle = (Pelaaja[1].Position - minioni.Position).Angle; 138 minioni.Hit(Vector.FromLengthAndAngle(100, minioni.Angle)); 139 Minioni.Add(minioni); 140 Add(Minioni[Minioni.Count - 1]); 141 MinioninLiike(Minioni[Minioni.Count - 1]); 142 } 143 144 void MinioninLiike(PhysicsObject minioni) 145 { 146 minioni.Angle = (Pelaaja[1].Position - minioni.Position).Angle; 147 Vector q = Vector.FromLengthAndAngle(5.0, minioni.Angle); 148 minioni.Hit(q); 149 return; 150 } 151 66 152 void AsetaNappaimet() 67 153 { 68 154 Keyboard.Listen(Key.Up, ButtonState.Down, Kiihdyta, null, Pelaaja[0]); 69 155 Keyboard.Listen(Key.Down, ButtonState.Down, Hidasta, null, Pelaaja[0]); 156 Keyboard.Listen(Key.Left, ButtonState.Down, kaannaVasemmalle, null, Pelaaja[0]); 157 Keyboard.Listen(Key.Right, ButtonState.Down, kaannaOikealle, null, Pelaaja[0]); 158 159 Keyboard.Listen(Key.W, ButtonState.Down, Kiihdyta, null, Pelaaja[1]); 160 Keyboard.Listen(Key.S, ButtonState.Down, Hidasta, null, Pelaaja[1]); 161 Keyboard.Listen(Key.A, ButtonState.Down, kaannaVasemmalle, null, Pelaaja[1]); 162 Keyboard.Listen(Key.D, ButtonState.Down, kaannaOikealle, null, Pelaaja[1]); 70 163 } 71 164 … … 78 171 void Hidasta(PhysicsObject pelaaja) 79 172 { 80 if (pelaaja.Velocity.X > 0.0) 81 pelaaja.Velocity = new Vector(pelaaja.Velocity.X - 5.0, pelaaja.Velocity.Y); 82 83 if (pelaaja.Velocity.Y > 0.0) 84 pelaaja.Velocity = new Vector(pelaaja.Velocity.X, pelaaja.Velocity.Y - 5.0); 85 86 if (pelaaja.Velocity.X < 0.0) 87 pelaaja.Velocity = new Vector(0.0, pelaaja.Velocity.Y); 88 89 if (pelaaja.Velocity.Y < 0.0) 90 pelaaja.Velocity = new Vector(pelaaja.Velocity.X, 0.0); 91 } 173 pelaaja.Velocity = new Vector(pelaaja.Velocity.X * 0.95, pelaaja.Velocity.Y * 0.95); 174 } 175 176 void kaannaVasemmalle(PhysicsObject pelaaja) 177 { 178 pelaaja.Angle = Angle.FromDegrees(pelaaja.Angle.Degrees + 2); 179 } 180 181 void kaannaOikealle(PhysicsObject pelaaja) 182 { 183 pelaaja.Angle = Angle.FromDegrees(pelaaja.Angle.Degrees - 2); 184 } 185 92 186 #region XNA / ALTK-Based Code 93 187 … … 108 202 base.Update(gameTime); 109 203 204 for (int minioniId = 0; minioniId < Minioni.Count; minioniId++) 205 { 206 MinioninLiike(Minioni[minioniId]); 207 } 208 110 209 //ALTKHandler.MessageDisplay.AddItem("Trololollolollololoo, lololololooo..."); 111 112 113 210 114 211 if (Kursori.Position.X > ALTKConstants.WindowWidth / 2.0)
Note: See TracChangeset
for help on using the changeset viewer.