summaryrefslogtreecommitdiff
path: root/GameBuildings.cpp
diff options
context:
space:
mode:
authorPetr Mrázek2012-01-08 02:21:08 +0100
committerPetr Mrázek2012-01-08 02:21:08 +0100
commit92627e39cb3502812cd5a131716d3d1da8ef625a (patch)
treea72b9fd22206ee0eec62b06ec7bcaaf8833a56cc /GameBuildings.cpp
parent545b2730ed137935643778f1b8ba115ae11c50a2 (diff)
downloadstonesense-92627e39cb3502812cd5a131716d3d1da8ef625a.tar.gz
stonesense-92627e39cb3502812cd5a131716d3d1da8ef625a.tar.bz2
stonesense-92627e39cb3502812cd5a131716d3d1da8ef625a.tar.xz
Buildings aren't a module anymore.
Diffstat (limited to 'GameBuildings.cpp')
-rw-r--r--GameBuildings.cpp39
1 files changed, 8 insertions, 31 deletions
diff --git a/GameBuildings.cpp b/GameBuildings.cpp
index 75c29dd..438b3bd 100644
--- a/GameBuildings.cpp
+++ b/GameBuildings.cpp
@@ -62,43 +62,21 @@ dirTypes findWallCloseTo(WorldSegment* segment, Block* b){
return eSimpleSingle;
}
-void ReadBuildings(DFHack::Core& DF, vector<t_building>* buildingHolder)
+void ReadBuildings(DFHack::Core& DF, vector<Buildings::t_building>* buildingHolder)
{
if(config.skipBuildings)
return;
if(!buildingHolder) return;
- DFHack::Buildings * Bld;
- try
- {
- Bld = DF.getBuildings();
- }
- catch (exception &e)
- {
- WriteErr("DFhack exeption: %s\n", e.what());
- config.skipBuildings = true;
- return;
- }
-
vector<string> dummy;
- uint32_t numbuildings = 0;
- try
- {
- if (!Bld->Start(numbuildings)) return;
- }
- catch (exception &e)
- {
- WriteErr("DFhack exeption: %s\n", e.what());
- config.skipBuildings = true;
- return;
- }
- t_building tempbuilding;
+ uint32_t numbuildings = Buildings::getNumBuildings();
+ Buildings::t_building tempbuilding;
uint32_t index = 0;
while(index < numbuildings){
try
{
- Bld->Read(index, tempbuilding);
+ Buildings::Read(index, tempbuilding);
}
catch (exception &e)
{
@@ -109,12 +87,11 @@ void ReadBuildings(DFHack::Core& DF, vector<t_building>* buildingHolder)
buildingHolder->push_back(tempbuilding);
index++;
}
- Bld->Finish();
}
-void MergeBuildingsToSegment(vector<t_building>* buildings, WorldSegment* segment){
- t_building tempbuilding;
+void MergeBuildingsToSegment(vector<Buildings::t_building>* buildings, WorldSegment* segment){
+ Buildings::t_building tempbuilding;
uint32_t numBuildings = (uint32_t)buildings->size();
for(uint32_t i=0; i < numBuildings; i++){
tempbuilding = (*buildings)[i];
@@ -214,10 +191,10 @@ void loadBuildingSprites ( Block* b){
}
/*TODO: this function takes a massive amount of work, looping all buildings for every block*/
-bool BlockHasSuspendedBuilding(vector<t_building>* buildingList, Block* b){
+bool BlockHasSuspendedBuilding(vector<Buildings::t_building>* buildingList, Block* b){
uint32_t num = (uint32_t)buildingList->size();
for(uint32_t i=0; i < num; i++){
- t_building* building = &(*buildingList)[i];
+ Buildings::t_building* building = &(*buildingList)[i];
//boundry check
if(b->z != building->z) continue;