aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Miscellaneous/Language.h2
-rw-r--r--src/server/scripts/Commands/cs_npc.cpp12
2 files changed, 10 insertions, 4 deletions
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();