summaryrefslogtreecommitdiff
path: root/Penguloon/Levels/LevelBase.cs
diff options
context:
space:
mode:
authoraldrikboy <aldrikboy@gmail.com>2017-12-11 22:02:13 +0100
committeraldrikboy <aldrikboy@gmail.com>2017-12-11 22:02:13 +0100
commitfd6fa4e5cebbe3edb65d50c78dcc8a97ce98ce64 (patch)
tree8950f6b9023e0b47e22e1cd4869ab76de0803f4c /Penguloon/Levels/LevelBase.cs
parentc4c0f3c887d627b6432551e96009c7aeecd4cdd8 (diff)
First commit
Diffstat (limited to 'Penguloon/Levels/LevelBase.cs')
-rw-r--r--Penguloon/Levels/LevelBase.cs52
1 files changed, 52 insertions, 0 deletions
diff --git a/Penguloon/Levels/LevelBase.cs b/Penguloon/Levels/LevelBase.cs
new file mode 100644
index 0000000..de17caf
--- /dev/null
+++ b/Penguloon/Levels/LevelBase.cs
@@ -0,0 +1,52 @@
+using Microsoft.Xna.Framework.Graphics;
+using Microsoft.Xna.Framework.Input.Touch;
+using Penguloon.Scenes;
+
+namespace Penguloon.Levels
+{
+ public abstract class LevelBase
+ {
+ public SceneBase ParentScene { get; set; }
+
+ public Texture2D SplashArt { get; set; }
+
+ public Map Map { get; set; }
+
+ public LevelBase()
+ {
+
+ }
+
+ public abstract void CreateMap();
+
+ public virtual void Initialize(SceneBase sceneBase)
+ {
+ this.ParentScene = sceneBase;
+ CreateMap();
+ }
+
+ public void Draw(float deltaTime)
+ {
+ Map.Draw(deltaTime);
+
+ DrawUnique(deltaTime);
+ }
+
+ public void Update(float deltaTime, TouchLocation[] touchLocations)
+ {
+ Map.Update(deltaTime);
+
+ UpdateUnique(deltaTime, touchLocations);
+ }
+
+ public virtual void DrawUnique(float deltaTime)
+ {
+
+ }
+
+ public virtual void UpdateUnique(float deltaTime, TouchLocation[] touchLocations)
+ {
+
+ }
+ }
+} \ No newline at end of file