aboutsummaryrefslogtreecommitdiffstats
path: root/include/world.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/world.h')
-rw-r--r--include/world.h19
1 files changed, 15 insertions, 4 deletions
diff --git a/include/world.h b/include/world.h
index 98ca54a..5021fbb 100644
--- a/include/world.h
+++ b/include/world.h
@@ -8,6 +8,9 @@
#ifndef WORLD_H
#define WORLD_H
+#include <ostream>
+#include <istream>
+
#include <common.h>
#include <entities.h>
@@ -26,7 +29,7 @@
* Defines how many game ticks it takes for a day to elapse.
*/
-#define DAY_CYCLE 3000
+#define DAY_CYCLE 12000
/**
* The background type enum.
@@ -51,6 +54,11 @@ typedef enum {
RAIN /**< Rain (not implemented :) )*/
} WEATHER;
+
+typedef struct{
+ vec2 loc;
+ Color color;
+}Light;
/**
* The line structure.
* This structure is used to store the world's ground, stored in vertical
@@ -128,6 +136,7 @@ protected:
*/
Texturec *bgTex;
+ WORLD_BG_TYPE bgType;
/**
* The Mix_Music object that holds the background soundtrack for the world.
@@ -165,14 +174,16 @@ public:
std::vector<Entity *> entity;
std::vector<Object *> object;
std::vector<Particles *> particles;
+ std::vector<Light > light;
void addStructure(_TYPE t,BUILD_SUB sub,float x,float y,World *inside);
- void addVillage(int bCount, int npcMin, int npcMax,_TYPE t,float x,float y,World *outside);
+ void addVillage(int bCount, int npcMin, int npcMax,_TYPE t,World *inside);
void addMob(int t,float x,float y);
void addMob(int t,float x,float y,void (*hey)(Mob *));
void addNPC(float x,float y);
void addObject(ITEM_ID, bool, const char *, float, float);
void addParticle(float, float, float, float, float, float, Color color, int);
+ void addLight(vec2, Color);
NPC *getAvailableNPC(void);
@@ -262,8 +273,8 @@ public:
int getTheWidth(void);
- void save(FILE *);
- void load(FILE *);
+ void save(std::ofstream *);
+ void load(std::ifstream *);
};
/*