renamed/fixed lua function enableHunger to enableConsume and disableAI now disables consume too ( to stay somehow compatible with the former behaviour )

This commit is contained in:
Titus Tscharntke
2010-09-08 19:00:22 +00:00
parent 1a9ec91eeb
commit 8552f76798
3 changed files with 49 additions and 53 deletions

View File

@@ -50,7 +50,7 @@ public:
PlayerModifiers::PlayerModifiers(){ PlayerModifiers::PlayerModifiers(){
winner = false; winner = false;
aiEnabled = true; aiEnabled = true;
hungerEnabled = true; consumeEnabled = true;
} }
// ===================================================== // =====================================================
@@ -88,9 +88,9 @@ void ScriptManager::init(World* world, GameCamera *gameCamera){
luaScript.registerFunction(disableAi, "disableAi"); luaScript.registerFunction(disableAi, "disableAi");
luaScript.registerFunction(enableAi, "enableAi"); luaScript.registerFunction(enableAi, "enableAi");
luaScript.registerFunction(getAiEnabled, "getAiEnabled"); luaScript.registerFunction(getAiEnabled, "getAiEnabled");
luaScript.registerFunction(disableHunger, "disableHunger"); luaScript.registerFunction(disableConsume, "disableConsume");
luaScript.registerFunction(enableHunger, "enableHunger"); luaScript.registerFunction(enableConsume, "enableConsume");
luaScript.registerFunction(getHungerEnabled, "getHungerEnabled"); luaScript.registerFunction(getConsumeEnabled, "getConsumeEnabled");
luaScript.registerFunction(setPlayerAsWinner, "setPlayerAsWinner"); luaScript.registerFunction(setPlayerAsWinner, "setPlayerAsWinner");
luaScript.registerFunction(endGame, "endGame"); luaScript.registerFunction(endGame, "endGame");
@@ -420,6 +420,7 @@ void ScriptManager::disableAi(int factionIndex){
ScriptManager_STREFLOP_Wrapper streflopWrapper; ScriptManager_STREFLOP_Wrapper streflopWrapper;
if(factionIndex<GameConstants::maxPlayers){ if(factionIndex<GameConstants::maxPlayers){
playerModifiers[factionIndex].disableAi(); playerModifiers[factionIndex].disableAi();
disableConsume(factionIndex); // by this we stay somehow compatible with old behaviour
} }
} }
@@ -437,24 +438,24 @@ bool ScriptManager::getAiEnabled(int factionIndex){
} }
} }
void ScriptManager::disableHunger(int factionIndex){ void ScriptManager::disableConsume(int factionIndex){
ScriptManager_STREFLOP_Wrapper streflopWrapper; ScriptManager_STREFLOP_Wrapper streflopWrapper;
if(factionIndex<GameConstants::maxPlayers){ if(factionIndex<GameConstants::maxPlayers){
playerModifiers[factionIndex].disableHunger(); playerModifiers[factionIndex].disableConsume();
} }
} }
void ScriptManager::enableHunger(int factionIndex){ void ScriptManager::enableConsume(int factionIndex){
ScriptManager_STREFLOP_Wrapper streflopWrapper; ScriptManager_STREFLOP_Wrapper streflopWrapper;
if(factionIndex<GameConstants::maxPlayers){ if(factionIndex<GameConstants::maxPlayers){
playerModifiers[factionIndex].enableHunger(); playerModifiers[factionIndex].enableConsume();
} }
} }
bool ScriptManager::getHungerEnabled(int factionIndex){ bool ScriptManager::getConsumeEnabled(int factionIndex){
ScriptManager_STREFLOP_Wrapper streflopWrapper; ScriptManager_STREFLOP_Wrapper streflopWrapper;
if(factionIndex<GameConstants::maxPlayers){ if(factionIndex<GameConstants::maxPlayers){
return playerModifiers[factionIndex].getHungerEnabled(); return playerModifiers[factionIndex].getConsumeEnabled();
} }
} }
@@ -804,21 +805,21 @@ int ScriptManager::getAiEnabled(LuaHandle* luaHandle){
return luaArguments.getReturnCount(); return luaArguments.getReturnCount();
} }
int ScriptManager::disableHunger(LuaHandle* luaHandle){ int ScriptManager::disableConsume(LuaHandle* luaHandle){
LuaArguments luaArguments(luaHandle); LuaArguments luaArguments(luaHandle);
thisScriptManager->disableHunger(luaArguments.getInt(-1)); thisScriptManager->disableConsume(luaArguments.getInt(-1));
return luaArguments.getReturnCount(); return luaArguments.getReturnCount();
} }
int ScriptManager::enableHunger(LuaHandle* luaHandle){ int ScriptManager::enableConsume(LuaHandle* luaHandle){
LuaArguments luaArguments(luaHandle); LuaArguments luaArguments(luaHandle);
thisScriptManager->enableHunger(luaArguments.getInt(-1)); thisScriptManager->enableConsume(luaArguments.getInt(-1));
return luaArguments.getReturnCount(); return luaArguments.getReturnCount();
} }
int ScriptManager::getHungerEnabled(LuaHandle* luaHandle){ int ScriptManager::getConsumeEnabled(LuaHandle* luaHandle){
LuaArguments luaArguments(luaHandle); LuaArguments luaArguments(luaHandle);
bool result = thisScriptManager->getHungerEnabled(luaArguments.getInt(-1)); bool result = thisScriptManager->getConsumeEnabled(luaArguments.getInt(-1));
luaArguments.returnInt(result); luaArguments.returnInt(result);
return luaArguments.getReturnCount(); return luaArguments.getReturnCount();
} }

View File

@@ -57,18 +57,18 @@ public:
void setAsWinner() {winner= true;} void setAsWinner() {winner= true;}
void disableHunger() {hungerEnabled= false;} void disableConsume() {consumeEnabled= false;}
void enableHunger() {hungerEnabled= true;} void enableConsume() {consumeEnabled= true;}
bool getWinner() const {return winner;} bool getWinner() const {return winner;}
bool getAiEnabled() const {return aiEnabled;} bool getAiEnabled() const {return aiEnabled;}
bool getHungerEnabled() const {return hungerEnabled;} bool getConsumeEnabled() const {return consumeEnabled;}
private: private:
bool winner; bool winner;
bool aiEnabled; bool aiEnabled;
bool hungerEnabled; bool consumeEnabled;
}; };
// ===================================================== // =====================================================
@@ -183,8 +183,8 @@ private:
void giveUpgradeCommand(int unitId, const string &upgradeName); void giveUpgradeCommand(int unitId, const string &upgradeName);
void disableAi(int factionIndex); void disableAi(int factionIndex);
void enableAi(int factionIndex); void enableAi(int factionIndex);
void disableHunger(int factionIndex); void disableConsume(int factionIndex);
void enableHunger(int factionIndex); void enableConsume(int factionIndex);
int registerCellTriggerEventForUnitToUnit(int sourceUnitId, int destUnitId); int registerCellTriggerEventForUnitToUnit(int sourceUnitId, int destUnitId);
int registerCellTriggerEventForUnitToLocation(int sourceUnitId, const Vec2i &pos); int registerCellTriggerEventForUnitToLocation(int sourceUnitId, const Vec2i &pos);
@@ -200,7 +200,7 @@ private:
int getTimerTriggeredEventId(); int getTimerTriggeredEventId();
bool getAiEnabled(int factionIndex); bool getAiEnabled(int factionIndex);
bool getHungerEnabled(int factionIndex); bool getConsumeEnabled(int factionIndex);
void setPlayerAsWinner(int factionIndex); void setPlayerAsWinner(int factionIndex);
void endGame(); void endGame();
@@ -239,11 +239,11 @@ private:
static int disableAi(LuaHandle* luaHandle); static int disableAi(LuaHandle* luaHandle);
static int enableAi(LuaHandle* luaHandle); static int enableAi(LuaHandle* luaHandle);
static int disableHunger(LuaHandle* luaHandle); static int disableConsume(LuaHandle* luaHandle);
static int enableHunger(LuaHandle* luaHandle); static int enableConsume(LuaHandle* luaHandle);
static int getAiEnabled(LuaHandle* luaHandle); static int getAiEnabled(LuaHandle* luaHandle);
static int getHungerEnabled(LuaHandle* luaHandle); static int getConsumeEnabled(LuaHandle* luaHandle);
static int registerCellTriggerEventForUnitToUnit(LuaHandle* luaHandle); static int registerCellTriggerEventForUnitToUnit(LuaHandle* luaHandle);
static int registerCellTriggerEventForUnitToLocation(LuaHandle* luaHandle); static int registerCellTriggerEventForUnitToLocation(LuaHandle* luaHandle);

View File

@@ -363,10 +363,6 @@ void Faction::applyCostsOnInterval(){
} }
//decrement consumables //decrement consumables
if((getCpuControl() == false) ||
(getCpuControl() == true &&
scriptManager->getPlayerModifiers(this->index)->getAiEnabled() == true))
{
for(int j=0; j<getUnitCount(); ++j){ for(int j=0; j<getUnitCount(); ++j){
Unit *unit= getUnit(j); Unit *unit= getUnit(j);
assert(unit != NULL); assert(unit != NULL);
@@ -376,10 +372,10 @@ void Faction::applyCostsOnInterval(){
if(resource->getType()->getClass()==rcConsumable && resource->getAmount()>0){ if(resource->getType()->getClass()==rcConsumable && resource->getAmount()>0){
incResourceAmount(resource->getType(), -resource->getAmount()); incResourceAmount(resource->getType(), -resource->getAmount());
SystemFlags::OutputDebug(SystemFlags::debugSystem,"In [%s::%s Line: %d] hunger setting for faction index = %d, hunger = %d, getResource(resource->getType())->getAmount() = %d\n",__FILE__,__FUNCTION__,__LINE__,this->index,scriptManager->getPlayerModifiers(this->index)->getHungerEnabled(),getResource(resource->getType())->getAmount()); SystemFlags::OutputDebug(SystemFlags::debugSystem,"In [%s::%s Line: %d] consume setting for faction index = %d, consume = %d, getResource(resource->getType())->getAmount() = %d\n",__FILE__,__FUNCTION__,__LINE__,this->index,scriptManager->getPlayerModifiers(this->index)->getConsumeEnabled(),getResource(resource->getType())->getAmount());
//decrease unit hp //decrease unit hp
if(scriptManager->getPlayerModifiers(this->index)->getHungerEnabled() == true && if(scriptManager->getPlayerModifiers(this->index)->getConsumeEnabled() == true &&
getResource(resource->getType())->getAmount() < 0) { getResource(resource->getType())->getAmount() < 0) {
resetResourceAmount(resource->getType()); resetResourceAmount(resource->getType());
bool decHpResult=unit->decHp(unit->getType()->getMaxHp()/3); bool decHpResult=unit->decHp(unit->getType()->getMaxHp()/3);
@@ -397,7 +393,6 @@ void Faction::applyCostsOnInterval(){
} }
} }
} }
}
bool Faction::checkCosts(const ProducibleType *pt){ bool Faction::checkCosts(const ProducibleType *pt){
assert(pt != NULL); assert(pt != NULL);