aboutsummaryrefslogtreecommitdiffstats
path: root/include/entities.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/entities.h')
-rw-r--r--include/entities.h36
1 files changed, 32 insertions, 4 deletions
diff --git a/include/entities.h b/include/entities.h
index e0c0887..dbaf9f5 100644
--- a/include/entities.h
+++ b/include/entities.h
@@ -34,22 +34,48 @@ enum MOB_SUB {
MS_TRIGGER
};
-struct Particles{
+enum BUILD_SUB{
+ TOWN_HALL = 1,
+ HOUSE,
+ HOUSE2,
+ HOUSE3,
+ HOUSE4,
+ FOUNTAIN
+};
+
+class Particles{
+public:
vec2 loc;
float width;
float height;
+ float velx;
+ float vely;
Color color;
- Particles(float x, float y, float w, float h, Color c){
+ int duration;
+ bool canMove;
+ Particles(float x, float y, float w, float h, float vx, float vy, Color c, int d){
loc.x = (x);
loc.y = (y);
width = (w);
height = (h);
+ velx = vx;
+ vely = vy;
color.red = (c.red);
color.green = (c.green);
color.blue = (c.blue);
+ duration = d;
}
+ ~Particles(){}
void draw(){
- std::cout << "Drawing Particles\n";
+ glColor3f(color.red,color.green,color.blue);
+ glRectf(loc.x,loc.y,loc.x+width,loc.y+height);
+ }
+ bool kill(float delta){
+ duration -= delta;
+ if(duration <= 0){
+ return true;
+ }
+ else return false;
}
};
@@ -77,6 +103,7 @@ public:
bool canMove; // Enables movement
bool right,left; // Direction faced by Entity
bool alive;
+ bool hit;
unsigned char ground; // Shows how the Entity is grounded (if it is)
/*
@@ -137,11 +164,12 @@ class Structures : public Entity{
public:
void *inWorld;
void *inside;
+ BUILD_SUB bsubtype;
Structures();
~Structures();
- unsigned int spawn(_TYPE, float, float);
+ unsigned int spawn(_TYPE, BUILD_SUB, float, float);
};
class Mob : public Entity{