Changeset 7482
- Timestamp:
- 2016-06-22 09:54:27 (7 years ago)
- Location:
- 2016/25/TeroP
- Files:
-
- 60 added
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
2016/25/TeroP/Pong/Pong/Pong/Pong.cs
r7450 r7482 9 9 public class Pong : PhysicsGame 10 10 { 11 PhysicsObject pelaaja; 11 12 public override void Begin() 12 13 { 13 // TODO: Kirjoita ohjelmakoodisi tähän 14 PhysicsObject pallo = new PhysicsObject(50, 50); 15 pallo.Shape = Shape.Circle; 16 pallo.Color = Color.Gold; 17 Add(pallo); 18 // pallo.Color = Color.Red; 14 //bit.ly/pelikurssi 15 16 LuoMontaPalloa(); 17 pelaaja = LuoPallo(0, 0, Shape.Triangle, Color.Emerald); 18 pelaaja.Width = 100; 19 pelaaja.MakeStatic(); 20 pelaaja.IgnoresGravity = true; 21 22 23 AddCollisionHandler(pelaaja, "pallo", SyoPallo); 24 AddCollisionHandler(pelaaja, "pieni", CollisionHandler.DestroyTarget); 25 Mouse.ListenMovement(0.01, HiiriLiikkuu, "Seurataan hiiren liikettä, jotta kolmiota voi liikuttaa"); 26 27 // pallo.Color = Color.Red; 19 28 Level.Background.CreateGradient(Color.Black, Color.Blue); 29 30 Gravity = new Vector(0, -500); 31 32 Level.CreateBorders(); 20 33 21 34 PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 22 35 Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 23 36 } 37 38 39 void AliohjelmanNimi() 40 { 41 42 } 43 44 45 void SyoPallo(PhysicsObject pelaajaHahmo, PhysicsObject kohde) 46 { 47 PhysicsObject pieni = LuoPallo(kohde.X + 25, kohde.Y, kohde.Shape, kohde.Color); 48 pieni.Width = kohde.Width / 3.0; 49 pieni.Height = kohde.Height / 3.0; 50 pieni.Tag = "pieni"; 51 52 PhysicsObject pieni2 = LuoPallo(kohde.X + 25, kohde.Y + 25, kohde.Shape, kohde.Color); 53 pieni2.Width = kohde.Width / 3.0; 54 pieni2.Height = kohde.Height / 3.0; 55 pieni2.Tag = "pieni"; 56 57 PhysicsObject pieni3 = LuoPallo(kohde.X, kohde.Y + 25, kohde.Shape, kohde.Color); 58 pieni3.Width = kohde.Width / 3.0; 59 pieni3.Height = kohde.Height / 3.0; 60 pieni3.Tag = "pieni"; 61 62 kohde.Destroy(); 63 64 } 65 66 void HiiriLiikkuu(AnalogState muutos) 67 { 68 pelaaja.Position = Mouse.PositionOnWorld; 69 } 70 71 PhysicsObject LuoPallo(double x, double y, Shape muoto, Color vari) 72 { 73 PhysicsObject pallo = new PhysicsObject(50, 50); 74 pallo.Shape = muoto; 75 pallo.X = x; 76 pallo.Y = y; 77 pallo.Color = vari; 78 pallo.Tag = "pallo"; 79 Add(pallo); 80 return pallo; 81 } 82 83 void LuoMontaPalloa() 84 { 85 86 for (int i = 0; i < 100; i++) 87 { 88 double x = RandomGen.NextDouble(Level.Left, Level.Right); 89 double y = RandomGen.NextDouble(Level.Bottom, Level.Top); 90 LuoPallo(x, y, RandomGen.SelectOne(Shape.Heart, Shape.Octagon, Shape.Hexagon, Shape.Pentagon, Shape.Star), RandomGen.NextColor()); 91 } 92 93 94 } 24 95 }
Note: See TracChangeset
for help on using the changeset viewer.