summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorglx <glx@openttd.org>2008-01-07 00:43:03 +0000
committerglx <glx@openttd.org>2008-01-07 00:43:03 +0000
commit119b03ea703c5d37454de4fe1a5e6da4dee0ac1b (patch)
tree6d9b10c3d232e375d017ca2e61ce1372755a37f7 /src
parentacc7c9eb01b24b31334860594bbb00c85ccd8546 (diff)
downloadopenttd-119b03ea703c5d37454de4fe1a5e6da4dee0ac1b.tar.xz
(svn r11772) -Change: add some extra checking in the hope to find the cause of FS#1335
Diffstat (limited to 'src')
-rw-r--r--src/date.cpp12
-rw-r--r--src/stdafx.h1
2 files changed, 13 insertions, 0 deletions
diff --git a/src/date.cpp b/src/date.cpp
index 12364dcd4..7c9ac1226 100644
--- a/src/date.cpp
+++ b/src/date.cpp
@@ -15,6 +15,7 @@
#include "vehicle_base.h"
#ifdef DEBUG_DUMP_COMMANDS
#include "saveload.h"
+#include "town_map.h"
#endif
Year _cur_year;
@@ -267,6 +268,17 @@ void IncreaseDate()
/* yes, call various monthly loops */
if (_game_mode != GM_MENU) {
#ifdef DEBUG_DUMP_COMMANDS
+ std::map<TownID, uint32> town_pop;
+ for (TileIndex t = 0; t < MapSize(); t++) {
+ if (GetTileType(t) == MP_HOUSE && IsHouseCompleted(t)) {
+ uint32 pop = GetHouseSpecs(GetHouseType(t))->population;
+ town_pop[GetTownIndex(t)] += pop;
+ }
+ }
+
+ Town *t;
+ FOR_ALL_TOWNS(t) assert(t->population == town_pop[t->index]);
+
char name[MAX_PATH];
snprintf(name, lengthof(name), "dmp_cmds_%d.sav", _date);
SaveOrLoad(name, SL_SAVE, AUTOSAVE_DIR);
diff --git a/src/stdafx.h b/src/stdafx.h
index 40e58cb8c..aed9ba36b 100644
--- a/src/stdafx.h
+++ b/src/stdafx.h
@@ -4,6 +4,7 @@
#ifndef STDAFX_H
#define STDAFX_H
+#define DEBUG_DUMP_COMMANDS
/* It seems that we need to include stdint.h before anything else
* We need INT64_MAX, which for most systems comes from stdint.h. However, MSVC