- updated some new lua commands
This commit is contained in:
parent
041289770e
commit
a5a6cf76d6
|
@ -84,6 +84,7 @@ void ScriptManager::init(World* world, GameCamera *gameCamera){
|
||||||
luaScript.registerFunction(createUnit, "createUnit");
|
luaScript.registerFunction(createUnit, "createUnit");
|
||||||
luaScript.registerFunction(destroyUnit, "destroyUnit");
|
luaScript.registerFunction(destroyUnit, "destroyUnit");
|
||||||
luaScript.registerFunction(morphToUnit, "morphToUnit");
|
luaScript.registerFunction(morphToUnit, "morphToUnit");
|
||||||
|
luaScript.registerFunction(moveToUnit, "moveToUnit");
|
||||||
luaScript.registerFunction(playStaticSound, "playStaticSound");
|
luaScript.registerFunction(playStaticSound, "playStaticSound");
|
||||||
luaScript.registerFunction(playStreamingSound, "playStreamingSound");
|
luaScript.registerFunction(playStreamingSound, "playStreamingSound");
|
||||||
luaScript.registerFunction(stopStreamingSound, "stopStreamingSound");
|
luaScript.registerFunction(stopStreamingSound, "stopStreamingSound");
|
||||||
|
@ -461,6 +462,12 @@ void ScriptManager::morphToUnit(int unitId,const string &morphName, int ignoreRe
|
||||||
world->morphToUnit(unitId,morphName,(ignoreRequirements == 1));
|
world->morphToUnit(unitId,morphName,(ignoreRequirements == 1));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ScriptManager::moveToUnit(int unitId,int destUnitId) {
|
||||||
|
SystemFlags::OutputDebug(SystemFlags::debugLUA,"In [%s::%s Line: %d] unit [%d] destUnitId [%d]\n",__FILE__,__FUNCTION__,__LINE__,unitId,destUnitId);
|
||||||
|
ScriptManager_STREFLOP_Wrapper streflopWrapper;
|
||||||
|
world->moveToUnit(unitId,destUnitId);
|
||||||
|
}
|
||||||
|
|
||||||
void ScriptManager::giveResource(const string &resourceName, int factionIndex, int amount){
|
void ScriptManager::giveResource(const string &resourceName, int factionIndex, int amount){
|
||||||
SystemFlags::OutputDebug(SystemFlags::debugLUA,"In [%s::%s Line: %d]\n",__FILE__,__FUNCTION__,__LINE__);
|
SystemFlags::OutputDebug(SystemFlags::debugLUA,"In [%s::%s Line: %d]\n",__FILE__,__FUNCTION__,__LINE__);
|
||||||
ScriptManager_STREFLOP_Wrapper streflopWrapper;
|
ScriptManager_STREFLOP_Wrapper streflopWrapper;
|
||||||
|
@ -865,6 +872,15 @@ int ScriptManager::morphToUnit(LuaHandle* luaHandle) {
|
||||||
return luaArguments.getReturnCount();
|
return luaArguments.getReturnCount();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int ScriptManager::moveToUnit(LuaHandle* luaHandle) {
|
||||||
|
LuaArguments luaArguments(luaHandle);
|
||||||
|
|
||||||
|
SystemFlags::OutputDebug(SystemFlags::debugLUA,"In [%s::%s Line: %d] unit [%d] dest unit [%d]\n",__FILE__,__FUNCTION__,__LINE__,luaArguments.getInt(-2),luaArguments.getInt(-1));
|
||||||
|
|
||||||
|
thisScriptManager->moveToUnit(luaArguments.getInt(-2),luaArguments.getInt(-1));
|
||||||
|
return luaArguments.getReturnCount();
|
||||||
|
}
|
||||||
|
|
||||||
int ScriptManager::playStaticSound(LuaHandle* luaHandle) {
|
int ScriptManager::playStaticSound(LuaHandle* luaHandle) {
|
||||||
LuaArguments luaArguments(luaHandle);
|
LuaArguments luaArguments(luaHandle);
|
||||||
SystemFlags::OutputDebug(SystemFlags::debugLUA,"In [%s::%s Line: %d] sound [%s]\n",__FILE__,__FUNCTION__,__LINE__,luaArguments.getString(-1).c_str());
|
SystemFlags::OutputDebug(SystemFlags::debugLUA,"In [%s::%s Line: %d] sound [%s]\n",__FILE__,__FUNCTION__,__LINE__,luaArguments.getString(-1).c_str());
|
||||||
|
|
|
@ -179,6 +179,7 @@ private:
|
||||||
|
|
||||||
void destroyUnit(int unitId);
|
void destroyUnit(int unitId);
|
||||||
void morphToUnit(int unitId,const string &morphName, int ignoreRequirements);
|
void morphToUnit(int unitId,const string &morphName, int ignoreRequirements);
|
||||||
|
void moveToUnit(int unitId,int destUnitId);
|
||||||
void giveAttackStoppedCommand(int unitId, const string &valueName,int ignoreRequirements);
|
void giveAttackStoppedCommand(int unitId, const string &valueName,int ignoreRequirements);
|
||||||
void playStaticSound(const string &playSound);
|
void playStaticSound(const string &playSound);
|
||||||
void playStreamingSound(const string &playSound);
|
void playStreamingSound(const string &playSound);
|
||||||
|
@ -243,6 +244,7 @@ private:
|
||||||
|
|
||||||
static int destroyUnit(LuaHandle* luaHandle);
|
static int destroyUnit(LuaHandle* luaHandle);
|
||||||
static int morphToUnit(LuaHandle* luaHandle);
|
static int morphToUnit(LuaHandle* luaHandle);
|
||||||
|
static int moveToUnit(LuaHandle* luaHandle);
|
||||||
static int giveAttackStoppedCommand(LuaHandle* luaHandle);
|
static int giveAttackStoppedCommand(LuaHandle* luaHandle);
|
||||||
static int playStaticSound(LuaHandle* luaHandle);
|
static int playStaticSound(LuaHandle* luaHandle);
|
||||||
static int playStreamingSound(LuaHandle* luaHandle);
|
static int playStreamingSound(LuaHandle* luaHandle);
|
||||||
|
|
|
@ -918,6 +918,22 @@ void World::stopAllSound() {
|
||||||
soundRenderer.stopAllSounds();
|
soundRenderer.stopAllSounds();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void World::moveToUnit(int unitId, int destUnitId) {
|
||||||
|
Unit* unit= findUnitById(unitId);
|
||||||
|
if(unit != NULL) {
|
||||||
|
CommandClass cc= ccMove;
|
||||||
|
SystemFlags::OutputDebug(SystemFlags::debugUnitCommands,"In [%s::%s Line: %d] cc = %d Unit [%s]\n",__FILE__,__FUNCTION__,__LINE__,cc,unit->getFullName().c_str());
|
||||||
|
Unit* destUnit = findUnitById(destUnitId);
|
||||||
|
if(destUnit != NULL) {
|
||||||
|
SystemFlags::OutputDebug(SystemFlags::debugUnitCommands,"In [%s::%s Line: %d] cc = %d Unit [%s] destUnit [%s]\n",__FILE__,__FUNCTION__,__LINE__,cc,unit->getFullName().c_str(),destUnit->getFullName().c_str());
|
||||||
|
unit->giveCommand(new Command( unit->getType()->getFirstCtOfClass(cc), destUnit));
|
||||||
|
SystemFlags::OutputDebug(SystemFlags::debugUnitCommands,"In [%s::%s Line: %d]\n",__FILE__,__FUNCTION__,__LINE__);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
throw runtime_error("Invalid unitId index in followUnit: " + intToStr(unitId));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void World::giveUpgradeCommand(int unitId, const string &upgradeName) {
|
void World::giveUpgradeCommand(int unitId, const string &upgradeName) {
|
||||||
Unit *unit= findUnitById(unitId);
|
Unit *unit= findUnitById(unitId);
|
||||||
|
|
|
@ -201,6 +201,7 @@ public:
|
||||||
void playStreamingSound(const string &playSound);
|
void playStreamingSound(const string &playSound);
|
||||||
void stopStreamingSound(const string &playSound);
|
void stopStreamingSound(const string &playSound);
|
||||||
void stopAllSound();
|
void stopAllSound();
|
||||||
|
void moveToUnit(int unitId, int destUnitId);
|
||||||
|
|
||||||
void giveResource(const string &resourceName, int factionIndex, int amount);
|
void giveResource(const string &resourceName, int factionIndex, int amount);
|
||||||
int getResourceAmount(const string &resourceName, int factionIndex);
|
int getResourceAmount(const string &resourceName, int factionIndex);
|
||||||
|
|
Loading…
Reference in New Issue
Block a user