diff --git a/ryzom/client/src/interface_v3/action_handler_game.cpp b/ryzom/client/src/interface_v3/action_handler_game.cpp index f05ffb271..eac07fa64 100644 --- a/ryzom/client/src/interface_v3/action_handler_game.cpp +++ b/ryzom/client/src/interface_v3/action_handler_game.cpp @@ -497,7 +497,7 @@ REGISTER_ACTION_HANDLER(CHandlerContextCreateGuild, "context_create_guild"); // *************************************************************************** // GCM Mission option // *************************************************************************** -class CHandlerContextMissionOption : public IActionHandler +class CHandlerContextOpenMissionOption : public IActionHandler { public: void execute (CCtrlBase * /* pCaller */, const std::string &sParams) @@ -524,9 +524,25 @@ public: } } }; +REGISTER_ACTION_HANDLER(CHandlerContextOpenMissionOption, "open_mission_option"); + + +class CHandlerContextMissionOption : public IActionHandler +{ +public: + void execute (CCtrlBase * /* pCaller */, const std::string &sParams) + { + std::string id = getParam(sParams, "id"); + sint intId; + if (!fromString(id, intId)) return; + UserEntity->moveToMission(UserEntity->targetSlot(), 3.0, intId); + } +}; REGISTER_ACTION_HANDLER(CHandlerContextMissionOption, "mission_option"); + + // *************************************************************************** // GCM Missions // *************************************************************************** diff --git a/ryzom/client/src/user_entity.cpp b/ryzom/client/src/user_entity.cpp index 90d4b28b6..2f74ca19d 100644 --- a/ryzom/client/src/user_entity.cpp +++ b/ryzom/client/src/user_entity.cpp @@ -1611,7 +1611,7 @@ void CUserEntity::moveToAction(CEntityCL *ent) case CUserEntity::Mission: { string param = toString("id=%d", _MoveToMissionId); - CAHManager::getInstance()->runActionHandler("mission_option", 0, param); + CAHManager::getInstance()->runActionHandler("open_mission_option", 0, param); } break; // Dynamic Mission