- Timestamp:
- 2016-06-09 09:18:14 (7 years ago)
- Location:
- 2016/23/ohjaajat/Punasininen/Punasininen/Punasininen
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
2016/23/ohjaajat/Punasininen/Punasininen/Punasininen/Player.cs
r7211 r7212 7 7 using Jypeli.Widgets; 8 8 9 public class Player : PlatformCharacter 29 public class Player : PlatformCharacter 10 10 { 11 11 public Weapon Secondary; … … 20 20 21 21 Tag = "player"; 22 Acceleration = 1500;22 //Acceleration = 1500; 23 23 } 24 24 } -
2016/23/ohjaajat/Punasininen/Punasininen/Punasininen/Punasininen.cs
r7211 r7212 12 12 private const double SPEED = 450; 13 13 private const double JUMPSPEED = 1250; 14 private const int TILE_SIZE = 40;14 private const int TILE_SIZE = 60; 15 15 16 16 private Player blue; … … 29 29 private Image orangePistolpic = LoadImage("orangegun"); 30 30 31 DoubleMeter matchTimer; // Remaining time in seconds. 31 32 DoubleMeter percentageTracker; 32 33 … … 46 47 for (int i = 1; i <= numberOfImages; i++) 47 48 { 48 images[i -1] = LoadImage(string.Format("{0}{1:0000}", prefix, i));49 images[i - 1] = LoadImage(string.Format("{0}{1:0000}", prefix, i)); 49 50 } 50 51 return images; … … 57 58 ColorTileMap map = ColorTileMap.FromLevelAsset("dungeon1"); 58 59 map.SetTileMethod(Color.Black, AddPlatform); 60 //map.SetTileMethod(Color.FromHexCode("#FF0026FF"), delegate (Vector paikka, double leveys, double korkeus) { blue = CreatePlayer(paikka, leveys, korkeus, bluepic, blueColor); }); 61 //map.SetTileMethod(Color.FromHexCode("#FF0026FF"), delegate(Vector paikka, double leveys, double korkeus) { blue = CreatePlayer(paikka, leveys, korkeus, bluepic, blueColor);}); 59 62 map.SetTileMethod(Color.FromHexCode("#FF0026FF"), delegate(Vector paikka, double leveys, double korkeus) { blue = CreatePlayer(paikka, leveys, korkeus, blueColor, blueWalkImages, bluePistolpic);}); 63 60 64 map.SetTileMethod(Color.FromHexCode("FFD800"), CreateWeaponCrate); 65 66 //map.SetTileMethod(Color.Red, delegate (Vector paikka, double leveys, double korkeus) { red = CreatePlayer(paikka, leveys, korkeus, redpic, redColor); }); 67 //map.SetTileMethod(Color.Red, delegate(Vector paikka, double leveys, double korkeus) { red = CreatePlayer(paikka, leveys, korkeus, redpic, redColor); }); 61 68 map.SetTileMethod(Color.Red, delegate(Vector paikka, double leveys, double korkeus) { red = CreatePlayer(paikka, leveys, korkeus, redColor, orangeWalkImages, orangePistolpic); }); 62 69 map.Execute(TILE_SIZE, TILE_SIZE); … … 79 86 percentageBar.BindTo(percentageTracker); 80 87 Add(percentageBar); 88 89 matchTimer = new DoubleMeter(30); 90 91 var timeLabel = new Label(); 92 timeLabel.Y = Window.Height / 2 - 100; 93 timeLabel.BindTo(matchTimer); 94 timeLabel.TextColor = blueColor; 95 timeLabel.DoubleFormatString = "{0}"; 96 timeLabel.TextScale *= 3; 97 Add(timeLabel); 98 99 var timer = new Timer(); 100 timer.Interval = 1; 101 timer.Timeout += () => 102 { 103 matchTimer.Value -= 1; 104 timeLabel.TextColor = matchTimer.Value % 2 == 0 ? blueColor : redColor; 105 }; 106 timer.Start(); 107 81 108 } 82 109 … … 117 144 }; 118 145 119 AddCollisionHandler(player, "platform", delegate (PhysicsObject a, PhysicsObject b)146 AddCollisionHandler(player, "platform", delegate (PhysicsObject a, PhysicsObject b) 120 147 { 121 148 ColorTile(a, b); 122 149 }); 123 AddCollisionHandler(player, "crate", delegate (PhysicsObject a, PhysicsObject b)150 AddCollisionHandler(player, "crate", delegate (PhysicsObject a, PhysicsObject b) 124 151 { 125 152 GunLottery(player); 126 153 b.Destroy(); 127 154 }); 128 AddCollisionHandler(player, "death", delegate (PhysicsObject a, PhysicsObject b)155 AddCollisionHandler(player, "death", delegate (PhysicsObject a, PhysicsObject b) 129 156 { 130 157 Restore((Player)a); … … 163 190 void Win(Player player) 164 191 { 165 Pause();192 Pause(); 166 193 //Haluaisin tehdä tähän jonkinlaisen hauskan ponnahdusefektin jossain vaiheessa. Sellaisen napakan zoomin ja sitten boing. Hurdur. 167 Camera.ZoomTo(player.Left, player.Bottom, player.Right, player.Top + 100);194 Camera.ZoomTo(player.Left, player.Bottom, player.Right, player.Top + 100); 168 195 169 196 Label announcement = new Label("Kiva homma hei") … … 174 201 }; 175 202 Add(announcement); 176 203 177 204 } 178 205 179 206 public void ColorTile(PhysicsObject player, PhysicsObject platform) 180 207 { 181 var imgs = player.Color == blueColor ? blueTileImages : orangeTileImages;208 var imgs = player.Color == blueColor ? blueTileImages : orangeTileImages; 182 209 var glowImg = player.Color == blueColor ? blueGlow : orangeGlow; 183 ((Tile)platform).SetColor(imgs, glowImg, player.Color); 184 210 211 ((Tile)platform).SetColor(imgs, glowImg, player.Color, UpdatePercentage); 212 } 213 214 void UpdatePercentage() 215 { 185 216 List<GameObject> colored = GetObjects(o => (o.Color == red.Color || o.Color == blue.Color) && (String)o.Tag == "platform"); 186 percentageTracker.Value = (double)colored.FindAll(o => o.Color == red.Color).Count /colored.Count * 100;217 percentageTracker.Value = (double)colored.FindAll(o => o.Color == red.Color).Count / colored.Count * 100; 187 218 } 188 219 … … 199 230 ControllerTwo.ListenAnalog(AnalogControl.LeftStick, 0.1, Move, "Liikuta pelaajaa", blue); 200 231 ControllerTwo.Listen(Button.A, ButtonState.Pressed, Jump, "Pelaaja hyppää", blue, JUMPSPEED); 201 Controller One.ListenAnalog(AnalogControl.RightStick, 0.1, Aim, null, blue);232 ControllerTwo.ListenAnalog(AnalogControl.RightStick, 0.1, Aim, null, blue); 202 233 ControllerTwo.ListenAnalog(AnalogControl.RightTrigger, 0.1, Shoot, "", blue); 203 234 ControllerTwo.ListenAnalog(AnalogControl.LeftTrigger, 0.1, Shoot, "", blue); … … 212 243 { 213 244 if (stick.StateVector.Magnitude > 0.15) 214 player.Walk(stick.StateVector.X > 0 ? Direction.Right : Direction.Left); 245 { 246 //player.Walk(stick.StateVector.X > 0 ? Direction.Right : Direction.Left); 247 player.Walk(stick.StateVector.X * 300); 248 } 249 215 250 } 216 251 … … 223 258 { 224 259 bullet.Image = null; 225 bullet.Color = player.Color; 260 bullet.Color = player.Color; 226 261 } 227 262 } -
2016/23/ohjaajat/Punasininen/Punasininen/Punasininen/Tile.cs
r7209 r7212 19 19 } 20 20 21 public void SetColor(Image[] animation, Image glowImage, Color newColor )21 public void SetColor(Image[] animation, Image glowImage, Color newColor, Action colorChanged) 22 22 { 23 23 var overlay = new GameObject(Width, Height); … … 29 29 this.Color = newColor; 30 30 overlay.Destroy(); 31 32 if (colorChanged != null) 33 { 34 colorChanged(); 35 } 31 36 }; 32 37 overlay.Animation.Start();
Note: See TracChangeset
for help on using the changeset viewer.