summaryrefslogtreecommitdiff
path: root/Penguloon/Levels
diff options
context:
space:
mode:
Diffstat (limited to 'Penguloon/Levels')
-rw-r--r--Penguloon/Levels/IceLevel.cs1
-rw-r--r--Penguloon/Levels/IceLevel2.cs74
-rw-r--r--Penguloon/Levels/LevelBase.cs4
3 files changed, 79 insertions, 0 deletions
diff --git a/Penguloon/Levels/IceLevel.cs b/Penguloon/Levels/IceLevel.cs
index 237ebf8..1a810a7 100644
--- a/Penguloon/Levels/IceLevel.cs
+++ b/Penguloon/Levels/IceLevel.cs
@@ -14,6 +14,7 @@ namespace Penguloon.Levels
this.Money = 350;
this.Health = 200;
this.ID = 1;
+ this.MinimumLevel = 0;
}
public override void DrawUnique(float deltaTime)
diff --git a/Penguloon/Levels/IceLevel2.cs b/Penguloon/Levels/IceLevel2.cs
new file mode 100644
index 0000000..86e3ce3
--- /dev/null
+++ b/Penguloon/Levels/IceLevel2.cs
@@ -0,0 +1,74 @@
+using Microsoft.Xna.Framework;
+using Microsoft.Xna.Framework.Input.Touch;
+using Penguloon.Enemies;
+using Penguloon.Objects;
+using Penguloon.Scenes;
+
+namespace Penguloon.Levels
+{
+ public class IceLevel2 : LevelBase
+ {
+ public IceLevel2() : base()
+ {
+ this.SplashArt = ContentManager.GetTexture("SplashArt/2");
+ this.Money = 350;
+ this.Health = 200;
+ this.ID = 2;
+ this.MinimumLevel = 5;
+ }
+
+ public override void DrawUnique(float deltaTime)
+ {
+ base.DrawUnique(deltaTime);
+ }
+
+ public override void UpdateUnique(float deltaTime, TouchLocation[] touchLocations)
+ {
+ base.UpdateUnique(deltaTime, touchLocations);
+ }
+
+ public override void CreateMap()
+ {
+ Map = new Map(ParentScene, this);
+ Map.SpawnPoint = new Vector2(18 * Map.TileWidth, 6 * Map.TileHeight);
+ Map.SpawnPointTargetPos = new Vector2(17 * Map.TileWidth, 6 * Map.TileHeight);
+ Map.FinishPoint = new Vector2(-1 * Map.TileWidth, 9 * Map.TileHeight);
+
+ Tile OO = new Tile(0, Direction.None);
+
+ Tile DN = new Tile(6, Direction.Down);
+ Tile RT = new Tile(5, Direction.Right);
+ Tile LT = new Tile(5, Direction.Left);
+ Tile UP = new Tile(6, Direction.Up);
+
+ Tile TR = new Tile(4, Direction.Right);
+ Tile RU = new Tile(4, Direction.Up);
+ Tile DR = new Tile(3, Direction.Right);
+
+ Tile DL = new Tile(1, Direction.Down);
+ Tile RD = new Tile(3, Direction.Down);
+ Tile LD = new Tile(1, Direction.Left);
+ Tile LU = new Tile(2, Direction.Left);
+ Tile TL = new Tile(2, Direction.Up);
+
+ Tile FN = new Tile(5, Direction.Finish);
+
+ Map.TileMap = new Tile[13, 18]
+ {
+ { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO },
+ { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO },
+ { OO,OO,RD,LT,LT,LT,LT,LT,LT,LT,LT,LT,LT,LT,LT,LD,OO,OO },
+ { OO,OO,DN,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,UP,OO,OO },
+ { OO,OO,DN,OO,DR,RT,DL,OO,DR,RT,DL,OO,OO,OO,OO,UP,OO,OO },
+ { OO,OO,DN,OO,UP,OO,DN,OO,UP,OO,DN,OO,OO,OO,OO,UP,OO,OO },
+ { OO,OO,DN,OO,UP,OO,DN,OO,UP,OO,DN,OO,OO,OO,OO,RU,LT,LT },
+ { OO,OO,TR,RT,TL,OO,TR,RT,TL,OO,TR,RT,RT,DL,OO,OO,OO,OO },
+ { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,DN,OO,OO,OO,OO },
+ { FN,LD,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,DN,OO,OO,OO,OO },
+ { OO,UP,OO,RD,LT,LT,LT,LT,LT,LT,LT,LT,LT,LU,OO,OO,OO,OO },
+ { OO,RU,LT,LU,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO },
+ { OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO,OO },
+ };
+ }
+ }
+} \ No newline at end of file
diff --git a/Penguloon/Levels/LevelBase.cs b/Penguloon/Levels/LevelBase.cs
index fbd6bd7..351cdcf 100644
--- a/Penguloon/Levels/LevelBase.cs
+++ b/Penguloon/Levels/LevelBase.cs
@@ -25,6 +25,8 @@ namespace Penguloon.Levels
public bool Finished { get; set; } = false;
+ public int MinimumLevel { get; set; }
+
public LevelBase()
{
@@ -117,6 +119,8 @@ namespace Penguloon.Levels
UserdataManager.HighestRound = Map.WaveManager.CurrentWave - 1;
UserdataManager.WriteData(ParentScene.Main.Context);
+
+ UserdataManager.Level = UserdataManager.GetLevel();
}
}
} \ No newline at end of file