aboutsummaryrefslogtreecommitdiff
path: root/src/game/Level3.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/Level3.cpp')
-rw-r--r--src/game/Level3.cpp58
1 files changed, 40 insertions, 18 deletions
diff --git a/src/game/Level3.cpp b/src/game/Level3.cpp
index fe61046897d..49efbe7fde7 100644
--- a/src/game/Level3.cpp
+++ b/src/game/Level3.cpp
@@ -55,6 +55,7 @@
#include "CreatureEventAIMgr.h"
#include "SpellAuraEffects.h"
#include "DBCEnums.h"
+#include "ConditionMgr.h"
bool ChatHandler::HandleAHBotOptionsCommand(const char *args)
{
@@ -591,6 +592,7 @@ bool ChatHandler::HandleReloadAllLootCommand(const char*)
sLog.outString("Re-Loading Loot Tables...");
LoadLootTables();
SendGlobalGMSysMessage("DB tables `*_loot_template` reloaded.");
+ sConditionMgr.LoadConditions(true);
return true;
}
@@ -655,7 +657,6 @@ bool ChatHandler::HandleReloadAllSpellCommand(const char*)
HandleReloadSpellLinkedSpellCommand("a");
HandleReloadSpellProcEventCommand("a");
HandleReloadSpellBonusesCommand("a");
- HandleReloadSpellScriptTargetCommand("a");
HandleReloadSpellTargetPositionCommand("a");
HandleReloadSpellThreatsCommand("a");
HandleReloadSpellGroupStackRulesCommand("a");
@@ -668,7 +669,6 @@ bool ChatHandler::HandleReloadAllItemCommand(const char*)
{
HandleReloadPageTextsCommand("a");
HandleReloadItemEnchantementsCommand("a");
- HandleReloadItemRequiredTragetCommand("a");
return true;
}
@@ -923,6 +923,7 @@ bool ChatHandler::HandleReloadGossipMenuCommand(const char*)
sLog.outString("Re-Loading `gossip_menu` Table!");
objmgr.LoadGossipMenu();
SendGlobalGMSysMessage("DB table `gossip_menu` reloaded.");
+ sConditionMgr.LoadConditions(true);
return true;
}
@@ -931,6 +932,7 @@ bool ChatHandler::HandleReloadGossipMenuOptionCommand(const char*)
sLog.outString("Re-Loading `gossip_menu_option` Table!");
objmgr.LoadGossipMenuItems();
SendGlobalGMSysMessage("DB table `gossip_menu_option` reloaded.");
+ sConditionMgr.LoadConditions(true);
return true;
}
@@ -977,6 +979,7 @@ bool ChatHandler::HandleReloadLootTemplatesCreatureCommand(const char*)
LoadLootTemplates_Creature();
LootTemplates_Creature.CheckLootRefs();
SendGlobalGMSysMessage("DB table `creature_loot_template` reloaded.");
+ sConditionMgr.LoadConditions(true);
return true;
}
@@ -986,6 +989,7 @@ bool ChatHandler::HandleReloadLootTemplatesDisenchantCommand(const char*)
LoadLootTemplates_Disenchant();
LootTemplates_Disenchant.CheckLootRefs();
SendGlobalGMSysMessage("DB table `disenchant_loot_template` reloaded.");
+ sConditionMgr.LoadConditions(true);
return true;
}
@@ -995,6 +999,7 @@ bool ChatHandler::HandleReloadLootTemplatesFishingCommand(const char*)
LoadLootTemplates_Fishing();
LootTemplates_Fishing.CheckLootRefs();
SendGlobalGMSysMessage("DB table `fishing_loot_template` reloaded.");
+ sConditionMgr.LoadConditions(true);
return true;
}
@@ -1004,6 +1009,7 @@ bool ChatHandler::HandleReloadLootTemplatesGameobjectCommand(const char*)
LoadLootTemplates_Gameobject();
LootTemplates_Gameobject.CheckLootRefs();
SendGlobalGMSysMessage("DB table `gameobject_loot_template` reloaded.");
+ sConditionMgr.LoadConditions(true);
return true;
}
@@ -1013,6 +1019,7 @@ bool ChatHandler::HandleReloadLootTemplatesItemCommand(const char*)
LoadLootTemplates_Item();
LootTemplates_Item.CheckLootRefs();
SendGlobalGMSysMessage("DB table `item_loot_template` reloaded.");
+ sConditionMgr.LoadConditions(true);
return true;
}
@@ -1022,6 +1029,7 @@ bool ChatHandler::HandleReloadLootTemplatesMillingCommand(const char*)
LoadLootTemplates_Milling();
LootTemplates_Milling.CheckLootRefs();
SendGlobalGMSysMessage("DB table `milling_loot_template` reloaded.");
+ sConditionMgr.LoadConditions(true);
return true;
}
@@ -1031,6 +1039,7 @@ bool ChatHandler::HandleReloadLootTemplatesPickpocketingCommand(const char*)
LoadLootTemplates_Pickpocketing();
LootTemplates_Pickpocketing.CheckLootRefs();
SendGlobalGMSysMessage("DB table `pickpocketing_loot_template` reloaded.");
+ sConditionMgr.LoadConditions(true);
return true;
}
@@ -1040,6 +1049,7 @@ bool ChatHandler::HandleReloadLootTemplatesProspectingCommand(const char*)
LoadLootTemplates_Prospecting();
LootTemplates_Prospecting.CheckLootRefs();
SendGlobalGMSysMessage("DB table `prospecting_loot_template` reloaded.");
+ sConditionMgr.LoadConditions(true);
return true;
}
@@ -1049,6 +1059,7 @@ bool ChatHandler::HandleReloadLootTemplatesMailCommand(const char*)
LoadLootTemplates_Mail();
LootTemplates_Mail.CheckLootRefs();
SendGlobalGMSysMessage("DB table `mail_loot_template` reloaded.");
+ sConditionMgr.LoadConditions(true);
return true;
}
@@ -1057,6 +1068,7 @@ bool ChatHandler::HandleReloadLootTemplatesReferenceCommand(const char*)
sLog.outString("Re-Loading Loot Tables... (`reference_loot_template`)");
LoadLootTemplates_Reference();
SendGlobalGMSysMessage("DB table `reference_loot_template` reloaded.");
+ sConditionMgr.LoadConditions(true);
return true;
}
@@ -1066,6 +1078,7 @@ bool ChatHandler::HandleReloadLootTemplatesSkinningCommand(const char*)
LoadLootTemplates_Skinning();
LootTemplates_Skinning.CheckLootRefs();
SendGlobalGMSysMessage("DB table `skinning_loot_template` reloaded.");
+ sConditionMgr.LoadConditions(true);
return true;
}
@@ -1075,6 +1088,7 @@ bool ChatHandler::HandleReloadLootTemplatesSpellCommand(const char*)
LoadLootTemplates_Spell();
LootTemplates_Spell.CheckLootRefs();
SendGlobalGMSysMessage("DB table `spell_loot_template` reloaded.");
+ sConditionMgr.LoadConditions(true);
return true;
}
@@ -1214,14 +1228,6 @@ bool ChatHandler::HandleReloadSpellBonusesCommand(const char*)
return true;
}
-bool ChatHandler::HandleReloadSpellScriptTargetCommand(const char*)
-{
- sLog.outString("Re-Loading SpellsScriptTarget...");
- spellmgr.LoadSpellScriptTarget();
- SendGlobalGMSysMessage("DB table `spell_script_target` (spell targets selection in case specific creature/GO requirements) reloaded.");
- return true;
-}
-
bool ChatHandler::HandleReloadSpellTargetPositionCommand(const char*)
{
sLog.outString("Re-Loading Spell target coordinates...");
@@ -1270,14 +1276,6 @@ bool ChatHandler::HandleReloadItemEnchantementsCommand(const char*)
return true;
}
-bool ChatHandler::HandleReloadItemRequiredTragetCommand(const char*)
-{
- sLog.outString("Re-Loading Item Required Targets Table...");
- objmgr.LoadItemRequiredTarget();
- SendGlobalGMSysMessage("DB table `item_required_target` reloaded.");
- return true;
-}
-
bool ChatHandler::HandleReloadGameObjectScriptsCommand(const char* arg)
{
if (sWorld.IsScriptScheduled())
@@ -1546,6 +1544,14 @@ bool ChatHandler::HandleReloadAuctionsCommand(const char * /*args*/)
return true;
}
+bool ChatHandler::HandleReloadConditions(const char* args)
+{
+ sLog.outString("Re-Loading Conditions...");
+ sConditionMgr.LoadConditions(true);
+ SendGlobalGMSysMessage("Conditions reloaded.");
+ return true;
+}
+
bool ChatHandler::HandleAccountSetGmLevelCommand(const char *args)
{
if (!*args)
@@ -6687,7 +6693,11 @@ bool ChatHandler::HandleCastCommand(const char *args)
SpellEntry const* spellInfo = sSpellStore.LookupEntry(spell);
if (!spellInfo)
+ {
+ PSendSysMessage(LANG_COMMAND_NOSPELLFOUND);
+ SetSentErrorMessage(true);
return false;
+ }
if (!SpellMgr::IsSpellValid(spellInfo,m_session->GetPlayer()))
{
@@ -6726,7 +6736,11 @@ bool ChatHandler::HandleCastBackCommand(const char *args)
// number or [name] Shift-click form |color|Hspell:spell_id|h[name]|h|r or Htalent form
uint32 spell = extractSpellIdFromLink((char*)args);
if (!spell || !sSpellStore.LookupEntry(spell))
+ {
+ PSendSysMessage(LANG_COMMAND_NOSPELLFOUND);
+ SetSentErrorMessage(true);
return false;
+ }
char* trig_str = strtok(NULL, " ");
if (trig_str)
@@ -6757,7 +6771,11 @@ bool ChatHandler::HandleCastDistCommand(const char *args)
SpellEntry const* spellInfo = sSpellStore.LookupEntry(spell);
if (!spellInfo)
+ {
+ PSendSysMessage(LANG_COMMAND_NOSPELLFOUND);
+ SetSentErrorMessage(true);
return false;
+ }
if (!SpellMgr::IsSpellValid(spellInfo,m_session->GetPlayer()))
{
@@ -6811,7 +6829,11 @@ bool ChatHandler::HandleCastTargetCommand(const char *args)
// number or [name] Shift-click form |color|Hspell:spell_id|h[name]|h|r or Htalent form
uint32 spell = extractSpellIdFromLink((char*)args);
if (!spell || !sSpellStore.LookupEntry(spell))
+ {
+ PSendSysMessage(LANG_COMMAND_NOSPELLFOUND);
+ SetSentErrorMessage(true);
return false;
+ }
char* trig_str = strtok(NULL, " ");
if (trig_str)