Found the culprit for bug #45

This commit is contained in:
Kayne Ruse
2015-08-24 03:37:44 +10:00
parent 626435974e
commit 188a6805bf
4 changed files with 10 additions and 1 deletions
@@ -223,6 +223,7 @@ std::list<BoundingBox> World::GenerateCollisionGrid(Entity* ptr, int tileWidth,
//inner loop
wallBounds.y = snapToBase((double)wallBounds.h, ptr->GetOrigin().y);
while(wallBounds.y < (ptr->GetOrigin() + ptr->GetBounds()).y + ptr->GetBounds().h) {
//BUG: #45 this is the culprit; it's pulling regions into existance
//check to see if this tile is solid
if (regionPager.GetSolid(wallBounds.x / wallBounds.w, wallBounds.y / wallBounds.h)) {
//push onto the box set
+6
View File
@@ -241,6 +241,12 @@ void World::KeyDown(SDL_KeyboardEvent const& event) {
//TODO: (3) the escape key should actually control menus and stuff
SendLogoutRequest();
return;
case SDLK_SPACE:
//DEBUG: testing bug #45
//reset the map
regionPager.UnloadAll();
return;
}
//character movement
+2 -1
View File
@@ -29,12 +29,13 @@
//static functions
//-------------------------
//TODO: proper checksum
static int regionChecksum(Region* const region) {
int sum = 0;
for(int i = 0; i < REGION_WIDTH; i++) {
for (int j = 0; j < REGION_HEIGHT; j++) {
for (int k = 0; k < REGION_DEPTH; k++) {
sum += region->GetTile(i, j, k);
sum |= region->GetTile(i, j, k);
}
}
}
+1
View File
@@ -51,6 +51,7 @@ SplashScreen::~SplashScreen() {
//-------------------------
void SplashScreen::FrameStart() {
//TODO: config flag to change the delay
if (std::chrono::steady_clock::now() - startTick > std::chrono::duration<int>(3)) {
SetSceneSignal(SceneSignal::MAINMENU);
}