Add support for waypoint teleporting

This commit is contained in:
AconiteGodOfSWG
2020-11-18 18:04:16 -05:00
parent 742b312b9b
commit be88a4de4f
3 changed files with 18 additions and 0 deletions
@@ -885,6 +885,21 @@ void Client::receiveClientMessage(const GameNetworkMessage &message) {
break;
}
case constcrc("handleWaypointWarp") : {
Archive::ReadIterator ri = static_cast<const GameNetworkMessage &>(message).getByteStream().begin();
GenericValueTypeMessage <std::pair<NetworkId, std::string>> const msg(ri);
CreatureObject *creatureObject = dynamic_cast<CreatureObject *>(getCharacterObject());
if (creatureObject != nullptr) {
GameScriptObject *gameScriptObject = creatureObject->getScriptObject();
if (gameScriptObject != nullptr) {
ScriptParams p;
p.addParam(msg.getValue().first);
IGNORE_RETURN(gameScriptObject->trigAllScripts(Scripting::TRIG_WAYPOINT_WARP, p));
}
}
break;
}
//----------------------------------------------------------------------
@@ -431,6 +431,8 @@ static const Scripting::ScriptFuncTable ScriptFuncList[] =
{Scripting::TRIG_ON_ABANDON_PLAYER_QUEST, "OnAbandonPlayerQuest", "O"},
{Scripting::TRIG_ON_GCW_SCORE_CATEGORY_PERCENTILE_CHANGE, "OnGcwScoreCategoryPercentileChange", "sii"},
{Scripting::TRIG_WAYPOINT_WARP, "OnWaypointWarpRequested", "O"},
//-- finish it up
@@ -479,6 +479,7 @@ enum TrigId
TRIG_ON_RATING_FINISHED = 301,
TRIG_ON_ABANDON_PLAYER_QUEST = 302,
TRIG_ON_GCW_SCORE_CATEGORY_PERCENTILE_CHANGE = 303,
TRIG_WAYPOINT_WARP = 304,
TRIG_LAST_TRIGGER
};