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.cpp79
1 files changed, 39 insertions, 40 deletions
diff --git a/src/game/Level3.cpp b/src/game/Level3.cpp
index a095be0a531..35c73617b56 100644
--- a/src/game/Level3.cpp
+++ b/src/game/Level3.cpp
@@ -54,6 +54,7 @@
#include "InstanceData.h"
#include "AuctionHouseBot.h"
#include "CreatureEventAIMgr.h"
+#include "DBCEnums.h"
bool ChatHandler::HandleAHBotOptionsCommand(const char *args)
{
@@ -559,7 +560,6 @@ bool ChatHandler::HandleReloadAllCommand(const char*)
HandleReloadAllLocalesCommand("");
HandleReloadAccessRequirementCommand("");
- HandleReloadMailLevelRewardCommand("");
HandleReloadCommandCommand("");
HandleReloadReservedNameCommand("");
HandleReloadTrinityStringCommand("");
@@ -881,12 +881,12 @@ bool ChatHandler::HandleReloadLootTemplatesProspectingCommand(const char*)
return true;
}
-bool ChatHandler::HandleReloadLootTemplatesMailCommand(const char*)
+bool ChatHandler::HandleReloadLootTemplatesQuestMailCommand(const char*)
{
- sLog.outString( "Re-Loading Loot Tables... (`mail_loot_template`)" );
- LoadLootTemplates_Mail();
- LootTemplates_Mail.CheckLootRefs();
- SendGlobalSysMessage("DB table `mail_loot_template` reloaded.");
+ sLog.outString( "Re-Loading Loot Tables... (`quest_mail_loot_template`)" );
+ LoadLootTemplates_QuestMail();
+ LootTemplates_QuestMail.CheckLootRefs();
+ SendGlobalGMSysMessage("DB table `quest_mail_loot_template` reloaded.");
return true;
}
@@ -1366,14 +1366,6 @@ bool ChatHandler::HandleReloadLocalesQuestCommand(const char* /*arg*/)
return true;
}
-bool ChatHandler::HandleReloadMailLevelRewardCommand(const char* /*arg*/)
-{
- sLog.outString( "Re-Loading Player level dependent mail rewards..." );
- objmgr.LoadMailLevelRewards();
- SendGlobalSysMessage("DB table `mail_level_reward` reloaded.");
- return true;
-}
-
bool ChatHandler::HandleLoadScriptsCommand(const char *args)
{
if(!LoadScriptingModule(args)) return true;
@@ -3108,9 +3100,7 @@ bool ChatHandler::HandleGameObjectStateCommand(const char *args)
gobj->SendObjectDeSpawnAnim(gobj->GetGUID());
else if(type == -2)
{
- WorldPacket data(SMSG_GAMEOBJECT_SPAWN_ANIM_OBSOLETE, 8);
- data << gobj->GetGUID();
- gobj->SendMessageToSet(&data,true);
+ return false;
}
return true;
}
@@ -3933,7 +3923,7 @@ bool ChatHandler::HandleLookupMapCommand(const char *args)
if(!*args)
return false;
- std::string namepart = args;
+ /*std::string namepart = args;
std::wstring wnamepart;
// converting string that we try to find to lower case
@@ -4000,6 +3990,7 @@ bool ChatHandler::HandleLookupMapCommand(const char *args)
ss << GetTrinityString(LANG_HEROIC);
uint32 ResetTimeRaid = MapInfo->resetTimeRaid;
+
std::string ResetTimeRaidStr;
if(ResetTimeRaid)
ResetTimeRaidStr = secsToTimeString(ResetTimeRaid, true, false);
@@ -4029,7 +4020,7 @@ bool ChatHandler::HandleLookupMapCommand(const char *args)
if(!found)
SendSysMessage(LANG_COMMAND_NOMAPFOUND);
-
+ */
return true;
}
@@ -5410,6 +5401,14 @@ bool ChatHandler::HandleServerShutDownCommand(const char *args)
char* time_str = strtok ((char*) args, " ");
char* exitcode_str = strtok (NULL, "");
+ char* tailStr = *args!='"' ? strtok(NULL, "") : (char*)args;
+ if(!tailStr)
+ return false;
+
+ char* reason = extractQuotedArg(tailStr);
+ if(!reason)
+ return false;
+
int32 time = atoi (time_str);
///- Prevent interpret wrong arg value as 0 secs shutdown time
@@ -5675,7 +5674,7 @@ bool ChatHandler::HandleQuestComplete(const char *args)
}
// Add quest items for quests that require items
- for (uint8 x = 0; x < QUEST_OBJECTIVES_COUNT; ++x)
+ for (uint8 x = 0; x < QUEST_ITEM_OBJECTIVES_COUNT; ++x)
{
uint32 id = pQuest->ReqItemId[x];
uint32 count = pQuest->ReqItemCount[x];
@@ -6800,14 +6799,14 @@ bool ChatHandler::HandleInstanceListBindsCommand(const char* /*args*/)
Player* player = getSelectedPlayer();
if (!player) player = m_session->GetPlayer();
uint32 counter = 0;
- for (uint8 i = 0; i < TOTAL_DIFFICULTIES; ++i)
+ for (uint8 i = 0; i < MAX_DIFFICULTY; ++i)
{
- Player::BoundInstancesMap &binds = player->GetBoundInstances(i);
+ Player::BoundInstancesMap &binds = player->GetBoundInstances(Difficulty(i));
for (Player::BoundInstancesMap::const_iterator itr = binds.begin(); itr != binds.end(); ++itr)
{
InstanceSave *save = itr->second.save;
std::string timeleft = GetTimeString(save->GetResetTime() - time(NULL));
- PSendSysMessage("map: %d inst: %d perm: %s diff: %s canReset: %s TTR: %s", itr->first, save->GetInstanceId(), itr->second.perm ? "yes" : "no", save->GetDifficulty() == DIFFICULTY_NORMAL ? "normal" : "heroic", save->CanReset() ? "yes" : "no", timeleft.c_str());
+ PSendSysMessage("map: %d inst: %d perm: %s diff: %d canReset: %s TTR: %s", itr->first, save->GetInstanceId(), itr->second.perm ? "yes" : "no", save->GetDifficulty(), save->CanReset() ? "yes" : "no", timeleft.c_str());
counter++;
}
}
@@ -6816,15 +6815,14 @@ bool ChatHandler::HandleInstanceListBindsCommand(const char* /*args*/)
Group *group = player->GetGroup();
if(group)
{
- for (uint8 i = 0; i < TOTAL_DIFFICULTIES; ++i)
+ for (uint8 i = 0; i < MAX_DIFFICULTY; ++i)
{
- Group::BoundInstancesMap &binds = group->GetBoundInstances(i);
+ Group::BoundInstancesMap &binds = group->GetBoundInstances(Difficulty(i));
for (Group::BoundInstancesMap::const_iterator itr = binds.begin(); itr != binds.end(); ++itr)
{
InstanceSave *save = itr->second.save;
std::string timeleft = GetTimeString(save->GetResetTime() - time(NULL));
- PSendSysMessage("map: %d inst: %d perm: %s diff: %s canReset: %s TTR: %s", itr->first, save->GetInstanceId(), itr->second.perm ? "yes" : "no", save->GetDifficulty() == DIFFICULTY_NORMAL ? "normal" : "heroic", save->CanReset() ? "yes" : "no", timeleft.c_str());
- counter++;
+ PSendSysMessage("map: %d inst: %d perm: %s diff: %d canReset: %s TTR: %s", itr->first, save->GetInstanceId(), itr->second.perm ? "yes" : "no", save->GetDifficulty(), save->CanReset() ? "yes" : "no", timeleft.c_str()); counter++;
}
}
}
@@ -6844,17 +6842,17 @@ bool ChatHandler::HandleInstanceUnbindCommand(const char *args)
Player* player = getSelectedPlayer();
if (!player) player = m_session->GetPlayer();
uint32 counter = 0;
- for (uint8 i = 0; i < TOTAL_DIFFICULTIES; ++i)
+ for (uint8 i = 0; i < MAX_DIFFICULTY; ++i)
{
- Player::BoundInstancesMap &binds = player->GetBoundInstances(i);
+ Player::BoundInstancesMap &binds = player->GetBoundInstances(Difficulty(i));
for (Player::BoundInstancesMap::iterator itr = binds.begin(); itr != binds.end();)
{
if(itr->first != player->GetMapId())
{
InstanceSave *save = itr->second.save;
std::string timeleft = GetTimeString(save->GetResetTime() - time(NULL));
- PSendSysMessage("unbinding map: %d inst: %d perm: %s diff: %s canReset: %s TTR: %s", itr->first, save->GetInstanceId(), itr->second.perm ? "yes" : "no", save->GetDifficulty() == DIFFICULTY_NORMAL ? "normal" : "heroic", save->CanReset() ? "yes" : "no", timeleft.c_str());
- player->UnbindInstance(itr, i);
+ PSendSysMessage("unbinding map: %d inst: %d perm: %s diff: %d canReset: %s TTR: %s", itr->first, save->GetInstanceId(), itr->second.perm ? "yes" : "no", save->GetDifficulty(), save->CanReset() ? "yes" : "no", timeleft.c_str());
+ player->UnbindInstance(itr, Difficulty(i));
counter++;
}
else
@@ -7102,23 +7100,25 @@ bool ChatHandler::HandleSendItemsCommand(const char *args)
}
// from console show not existed sender
- MailSender sender(MAIL_NORMAL,m_session ? m_session->GetPlayer()->GetGUIDLow() : 0, MAIL_STATIONERY_GM);
+ uint32 sender_guidlo = m_session ? m_session->GetPlayer()->GetGUIDLow() : 0;
+ uint32 messagetype = MAIL_NORMAL;
+ uint32 stationery = MAIL_STATIONERY_GM;
uint32 itemTextId = !text.empty() ? objmgr.CreateItemText( text ) : 0;
// fill mail
- MailDraft draft(subject, itemTextId);
+ MailItemsInfo mi; // item list preparing
for (ItemPairs::const_iterator itr = items.begin(); itr != items.end(); ++itr)
{
if(Item* item = Item::CreateItem(itr->first,itr->second,m_session ? m_session->GetPlayer() : 0))
{
item->SaveToDB(); // save for prevent lost at next mail load, if send fail then item will deleted
- draft.AddItem(item);
+ mi.AddItem(item->GetGUIDLow(), item->GetEntry(), item);
}
}
- draft.SendMailTo(MailReceiver(receiver,GUID_LOPART(receiver_guid)), sender);
+ WorldSession::SendMailTo(receiver,messagetype, stationery, sender_guidlo, GUID_LOPART(receiver_guid), subject, itemTextId, &mi, 0, 0, MAIL_CHECK_MASK_NONE);
std::string nameLink = playerLink(receiver_name);
PSendSysMessage(LANG_MAIL_SENT, nameLink.c_str());
@@ -7162,13 +7162,13 @@ bool ChatHandler::HandleSendMoneyCommand(const char *args)
std::string text = msgText;
// from console show not existed sender
- MailSender sender(MAIL_NORMAL,m_session ? m_session->GetPlayer()->GetGUIDLow() : 0, MAIL_STATIONERY_GM);
+ uint32 sender_guidlo = m_session ? m_session->GetPlayer()->GetGUIDLow() : 0;
+ uint32 messagetype = MAIL_NORMAL;
+ uint32 stationery = MAIL_STATIONERY_GM;
uint32 itemTextId = !text.empty() ? objmgr.CreateItemText( text ) : 0;
- MailDraft(subject, itemTextId)
- .AddMoney(money)
- .SendMailTo(MailReceiver(receiver,GUID_LOPART(receiver_guid)),sender);
+ WorldSession::SendMailTo(receiver,messagetype, stationery, sender_guidlo, GUID_LOPART(receiver_guid), subject, itemTextId, NULL, money, 0, MAIL_CHECK_MASK_NONE);
std::string nameLink = playerLink(receiver_name);
PSendSysMessage(LANG_MAIL_SENT, nameLink.c_str());
@@ -7537,4 +7537,3 @@ bool ChatHandler::HandleUnbindSightCommand(const char *args)
m_session->GetPlayer()->StopCastingBindSight();
return true;
}
-