- allow mod's to change player colors

This commit is contained in:
Mark Vejvoda 2011-12-14 22:42:38 +00:00
parent 3e7b8a5aa8
commit 157c052a82
2 changed files with 16 additions and 1 deletions

View File

@ -3474,9 +3474,17 @@ int glestMain(int argc, char** argv) {
// Cache Player textures - START
string data_path = getGameReadWritePath(GameConstants::path_data_CacheLookupKey);
string playerColorTexturePath = getGameCustomCoreDataPath(data_path, "") + "data/core/faction_textures/faction*.tga";
vector<string> playerColorTextureFilenames;
findAll(playerColorTexturePath, playerColorTextureFilenames, false, false);
std::map<int,Texture2D *> &crcPlayerTextureCache = CacheManager::getCachedItem< std::map<int,Texture2D *> >(GameConstants::playerTextureCacheLookupKey);
for(int index = 0; index < GameConstants::maxPlayers; ++index) {
string playerTexture = data_path + "data/core/faction_textures/faction" + intToStr(index) + ".tga";
if(playerColorTextureFilenames.size() > 0) {
playerTexture = getGameCustomCoreDataPath(data_path, "") + "data/core/faction_textures/faction" + intToStr(index) + ".tga";
}
if(fileExists(playerTexture) == true) {
Texture2D *texture = Renderer::getInstance().newTexture2D(rsGlobal);
if(texture) {

View File

@ -490,8 +490,15 @@ void Faction::init(
texture= Renderer::getInstance().newTexture2D(rsGame);
string data_path = getGameReadWritePath(GameConstants::path_data_CacheLookupKey);
if(texture) {
texture->load(data_path + "data/core/faction_textures/faction"+intToStr(startLocationIndex)+".tga");
string playerColorTexture = getGameCustomCoreDataPath(data_path, "") + "data/core/faction_textures/faction" + intToStr(startLocationIndex) + ".tga";
if(fileExists(playerColorTexture) == true) {
texture->load(getGameCustomCoreDataPath(data_path, "") + "data/core/faction_textures/faction" + intToStr(startLocationIndex) + ".tga");
}
else {
texture->load(data_path + "data/core/faction_textures/faction" + intToStr(startLocationIndex) + ".tga");
}
}
if( game->getGameSettings()->getPathFinderType() == pfBasic &&