oserra Posted November 5, 2018 at 11:36 PM Share Posted November 5, 2018 at 11:36 PM (edited) Olá, resolvi adicionar este trigger há uns tempos, pode dar jeito a alguém então fica aqui. O trigger é ativado quando o jogador clica no "recomeçar aqui". Tutorial: Spoiler quest.h: Spoiler Procurar: QUEST_ITEM_INFORMER_EVENT, em baixo: QUEST_RESPAWN_EVENT, questmanager.cpp: Spoiler Procurar: m_mapEventName.insert(TEventNameMap::value_type("item_informer", QUEST_ITEM_INFORMER_EVENT)); por baixo: m_mapEventName.insert(TEventNameMap::value_type("respawn", QUEST_RESPAWN_EVENT)); Procurar: void CQuestManager::Login(unsigned int pc, const char * c_pszQuest) por baixo da função inteira: Spoiler void CQuestManager::Respawn(unsigned int pc) { PC * pPC; //sys_log(0, "CQuestManager::OnRespawn QUEST_RESPAWN_EVENT (pc=%d, npc=%d)", pc, npc); if ((pPC = GetPC(pc))) { if (!CheckQuestLoaded(pPC)) return; m_mapNPC[QUEST_NO_NPC].OnRespawn(*pPC); //if (m_mapNPC[QUEST_NO_NPC].OnRespawn(*pPC)) //return; } else sys_err("QUEST: no such pc id : %d", pc); } questmanager.h: Spoiler Procurar: void Login(unsigned int pc, const char * c_pszQuestName = NULL); por baixo: void Respawn(unsigned int pc); questnpc.cpp: Spoiler Procurar: bool NPC::OnLogin(PC& pc, const char * c_pszQuestName) por baixo da função inteira: bool NPC::OnRespawn(PC& pc) { return HandleReceiveAllEvent(pc, QUEST_RESPAWN_EVENT); } questnpc.h: Spoiler Procurar: bool OnLogin(PC& pc, const char * c_pszQuestName = NULL); por baixo: bool OnRespawn(PC& pc); cmd_general.cpp: Spoiler Procurar: ACMD(do_restart) procurar na função: case SCMD_RESTART_HERE: depois da segunda ocorrência, colocar ANTES do break: quest::CQuestManager::instance().Respawn(ch->GetPlayerID()); Dúvidas? Correções? Maneiras de melhorar o código? Coloquem nos comentários. Síntaxe: when respawn begin chat("You just respawned!") end Edited November 5, 2018 at 11:38 PM by oserra Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now