summaryrefslogtreecommitdiff
path: root/BuildingConfiguration.cpp
diff options
context:
space:
mode:
authorJonas Ask2009-11-27 15:35:35 +0000
committerJonas Ask2009-11-27 15:35:35 +0000
commitcf382c626ec583ab1abcbef7d1f38afaaaf91d67 (patch)
treea8b2287de5c24c5ef5a967eca4008c43232adf5b /BuildingConfiguration.cpp
parent0a9fcbb2889a3db04c7bc96c3539d4a68ff8b623 (diff)
downloadstonesense-cf382c626ec583ab1abcbef7d1f38afaaaf91d67.tar.gz
stonesense-cf382c626ec583ab1abcbef7d1f38afaaaf91d67.tar.bz2
stonesense-cf382c626ec583ab1abcbef7d1f38afaaaf91d67.tar.xz
Started working on a unified system for loading content configuration.
Diffstat (limited to 'BuildingConfiguration.cpp')
-rw-r--r--BuildingConfiguration.cpp20
1 files changed, 11 insertions, 9 deletions
diff --git a/BuildingConfiguration.cpp b/BuildingConfiguration.cpp
index ce29a20..5b299c3 100644
--- a/BuildingConfiguration.cpp
+++ b/BuildingConfiguration.cpp
@@ -1,6 +1,7 @@
#include "SpriteMaps.h"
#include "BuildingConfiguration.h"
#include "GameBuildings.h"
+#include "ContentLoader.h"
bool BuildingNamesTranslatedFromGame = false;
@@ -28,27 +29,28 @@ BuildingConfiguration::~BuildingConfiguration(void)
void DumpBuildingNamesToDisk(){
FILE* fp = fopen("buildingdump.txt", "w");
if(!fp) return;
- for(uint32_t j=0; j < v_buildingtypes.size(); j++){
- fprintf(fp, "%i:%s\n",j, v_buildingtypes[j].c_str());
+ for(uint32_t j=0; j < contentLoader.buildingNameStrings.size(); j++){
+ fprintf(fp, "%i:%s\n",j, contentLoader.buildingNameStrings[j].c_str());
}
fclose(fp);
}
-void TranslateBuildingNames(){
+void TranslateBuildingNames( vector<BuildingConfiguration>& configs, vector<string>& buildingNames ){
+
//for each config, find it's integer ID
- for(uint32_t i=0; i < buildingTypes.size(); i++){
- char* ptr = buildingTypes[i].gameIDstr;
+ for(uint32_t i=0; i < configs.size(); i++){
+ char* ptr = configs[i].gameIDstr;
uint32_t j;
- uint32_t num = (uint32_t)v_buildingtypes.size();
+ uint32_t num = (uint32_t)buildingNames.size();
for(j=0; j < num; j++){
- if( strcmp( ptr, v_buildingtypes[j].c_str()) == 0){
+ if( strcmp( ptr, buildingNames[j].c_str()) == 0){
//assign ID
- buildingTypes[i].gameID = j;
+ configs[i].gameID = j;
//jump to next buildingType
break;
}
}
- if(j >= v_buildingtypes.size())
+ if(j >= buildingNames.size())
WriteErr("Unable to match building '%s' to anything in-game\n", ptr);
}