From af0ba50d00722e1b7330d1f9b1d23bd3b07a5567 Mon Sep 17 00:00:00 2001 From: aldrikboy Date: Wed, 17 Jan 2018 14:26:43 +0100 Subject: upgrades --- Penguloon/Objects/PenguinObject.cs | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) (limited to 'Penguloon/Objects/PenguinObject.cs') diff --git a/Penguloon/Objects/PenguinObject.cs b/Penguloon/Objects/PenguinObject.cs index de48e4c..00aa1da 100644 --- a/Penguloon/Objects/PenguinObject.cs +++ b/Penguloon/Objects/PenguinObject.cs @@ -8,6 +8,8 @@ namespace Penguloon.Objects { class PenguinObject : ObjectBase { + int extraPops = 0; + public PenguinObject(Vector2 position, Map map) : base(position, map) { this.Texture = ContentManager.GetTexture("Objects/penguin1"); @@ -30,10 +32,24 @@ namespace Penguloon.Objects public override void CreateUpgrades() { - ObjectUpgrade upg = new ObjectUpgrade(12341234, UpgradeType.PopCount, "+2 pop", null, Map.Level); + ObjectUpgrade pop3 = new ObjectUpgrade(450, UpgradeType.PopCount, "+1 pop", null, Map.Level); + ObjectUpgrade pop2 = new ObjectUpgrade(300, UpgradeType.PopCount, "+1 pop", pop3, Map.Level); + ObjectUpgrade pop1 = new ObjectUpgrade(150, UpgradeType.PopCount, "+1 pop", pop2, Map.Level); + pop1.OnClick += delegate { extraPops++; }; pop2.OnClick += delegate { extraPops++; }; pop3.OnClick += delegate { extraPops++; }; + + ObjectUpgrade rng3 = new ObjectUpgrade(450, UpgradeType.Range, "+1 range", null, Map.Level); + ObjectUpgrade rng2 = new ObjectUpgrade(300, UpgradeType.Range, "+1 range", rng3, Map.Level); + ObjectUpgrade rng1 = new ObjectUpgrade(150, UpgradeType.Range, "+1 range", rng2, Map.Level); + rng1.OnClick += delegate { Range += Map.TileWidth; }; rng2.OnClick += delegate { Range += Map.TileWidth; }; rng3.OnClick += delegate { Range += Map.TileWidth; }; + + ObjectUpgrade spd3 = new ObjectUpgrade(450, UpgradeType.Speed, "+0.1 speed", null, Map.Level); + ObjectUpgrade spd2 = new ObjectUpgrade(300, UpgradeType.Speed, "+0.1 speed", spd3, Map.Level); + ObjectUpgrade spd1 = new ObjectUpgrade(150, UpgradeType.Speed, "+0.1 speed", spd2, Map.Level); + spd1.OnClick += delegate { AttackSpeedMS -= 100; }; spd2.OnClick += delegate { AttackSpeedMS -= 100; }; spd3.OnClick += delegate { AttackSpeedMS -= 100; }; - UpgradeList.Add(new ObjectUpgrade(100, UpgradeType.PopCount, "+1 pop", upg, Map.Level)); - UpgradeList.Add(new ObjectUpgrade(100, UpgradeType.Range, "+15 Range", null, Map.Level)); + UpgradeList.Add(pop1); + UpgradeList.Add(rng1); + UpgradeList.Add(spd1); } public override void DrawUnique(float deltaTime) @@ -48,7 +64,7 @@ namespace Penguloon.Objects public override void SpawnUnique() { - Projectiles.Add(new SnowballProjectile(this, this.Rotation)); + Projectiles.Add(new SnowballProjectile(this, this.Rotation, extraPops)); } } } \ No newline at end of file -- cgit v1.2.3-70-g09d2