diff options
author | Clyne Sullivan <tullivan99@gmail.com> | 2015-12-01 07:29:25 -0500 |
---|---|---|
committer | Clyne Sullivan <tullivan99@gmail.com> | 2015-12-01 07:29:25 -0500 |
commit | 80bc1b24bcf6862a7fbd3223a3d6988ce4e389e0 (patch) | |
tree | 74dfe8e4e44fd4918fb7d849d528f9892a1e708d /src/world.cpp | |
parent | 45bca98b792f8ced1a57ef8c5beed2a90a79d47f (diff) |
memory fixes
Diffstat (limited to 'src/world.cpp')
-rw-r--r-- | src/world.cpp | 38 |
1 files changed, 33 insertions, 5 deletions
diff --git a/src/world.cpp b/src/world.cpp index c977c7f..36f0f69 100644 --- a/src/world.cpp +++ b/src/world.cpp @@ -71,6 +71,18 @@ World::World(void){ memset(star,0,100*sizeof(vec2)); } +World::~World(void){ + delete bgTex; + delete[] star; + delete[] line; + + delete &mob; + delete &npc; + delete &build; + delete &object; + delete &entity; +} + void World::generate(unsigned int width){ // Generates the world and sets all variables contained in the World class. unsigned int i; float inc; @@ -196,10 +208,6 @@ void World::generateFunc(unsigned int width,float(*func)(float)){ } } -World::~World(void){ - delete[] line; -} - void World::update(Player *p,unsigned int delta){ p->loc.y+= p->vel.y *delta; p->loc.x+=(p->vel.x*p->speed)*delta; @@ -836,7 +844,15 @@ IndoorWorld::IndoorWorld(void){ } IndoorWorld::~IndoorWorld(void){ - delete[] line; //free(line); + delete bgTex; + delete[] star; + delete[] line; + + delete &mob; + delete &npc; + delete &build; + delete &object; + delete &entity; } void IndoorWorld::generate(unsigned int width){ // Generates a flat area of width 'width' @@ -897,6 +913,18 @@ Arena::Arena(World *leave,Player *p){ pxy = p->loc; } +Arena::~Arena(void){ + delete bgTex; + delete[] star; + delete[] line; + + delete &mob; + delete &npc; + delete &build; + delete &object; + delete &entity; +} + World *Arena::exitArena(Player *p){ npc[0]->loc.x = door.x; npc[0]->loc.y = door.y; |