diff options
| author | Vincent-Michael <vincent_michael@gmx.de> | 2016-06-05 16:43:41 +0200 |
|---|---|---|
| committer | Vincent-Michael <vincent_michael@gmx.de> | 2016-06-05 16:43:41 +0200 |
| commit | 9d7a17d9f5f29c928e14d175479da68b2118add9 (patch) | |
| tree | 4c249066ac3bba56c0d5f131b75666c20c5fe339 | |
| parent | 18aa8df320e736daf506876bcdf6143405c10bc6 (diff) | |
Core/Commands: Added ".npc set phase" command error message for invalid phaseid
Closes #14927
| -rw-r--r-- | sql/updates/world/6.x/2016_06_05_04_world.sql | 3 | ||||
| -rw-r--r-- | src/server/game/Miscellaneous/Language.h | 2 | ||||
| -rw-r--r-- | src/server/scripts/Commands/cs_npc.cpp | 12 |
3 files changed, 13 insertions, 4 deletions
diff --git a/sql/updates/world/6.x/2016_06_05_04_world.sql b/sql/updates/world/6.x/2016_06_05_04_world.sql new file mode 100644 index 00000000000..36b52243afd --- /dev/null +++ b/sql/updates/world/6.x/2016_06_05_04_world.sql @@ -0,0 +1,3 @@ +DELETE FROM `trinity_string` WHERE `entry`=5007; +INSERT INTO `trinity_string` (`entry`,`content_default`) VALUES +(5007,"Uses invalid phaseID."); diff --git a/src/server/game/Miscellaneous/Language.h b/src/server/game/Miscellaneous/Language.h index a4051c7e865..6f1f4cb2409 100644 --- a/src/server/game/Miscellaneous/Language.h +++ b/src/server/game/Miscellaneous/Language.h @@ -1069,7 +1069,7 @@ enum TrinityStrings LANG_COMMAND_NO_FROZEN_PLAYERS = 5004, LANG_COMMAND_LIST_FREEZE = 5005, LANG_COMMAND_PERMA_FROZEN_PLAYER = 5006, - // = 5007, unused + LANG_PHASE_NOTFOUND = 5007, LANG_INSTANCE_CLOSED = 5008, LANG_COMMAND_PLAYED_TO_ALL = 5009, LANG_NPCINFO_LINKGUID = 5010, diff --git a/src/server/scripts/Commands/cs_npc.cpp b/src/server/scripts/Commands/cs_npc.cpp index d9d54353246..c71e0f01940 100644 --- a/src/server/scripts/Commands/cs_npc.cpp +++ b/src/server/scripts/Commands/cs_npc.cpp @@ -1106,7 +1106,13 @@ public: if (!*args) return false; - uint32 phase = (uint32) atoi((char*)args); + uint32 phaseID = uint32(atoi((char*)args)); + if (!sPhaseStore.LookupEntry(phaseID)) + { + handler->SendSysMessage(LANG_PHASE_NOTFOUND); + handler->SetSentErrorMessage(true); + return false; + } Creature* creature = handler->getSelectedCreature(); if (!creature || creature->IsPet()) @@ -1117,8 +1123,8 @@ public: } creature->ClearPhases(); - creature->SetInPhase(phase, true, true); - creature->SetDBPhase(phase); + creature->SetInPhase(phaseID, true, true); + creature->SetDBPhase(phaseID); creature->SaveToDB(); |
