aboutsummaryrefslogtreecommitdiff
path: root/src/game
diff options
context:
space:
mode:
authormegamage <none@none>2009-01-17 13:33:07 -0600
committermegamage <none@none>2009-01-17 13:33:07 -0600
commitc5dfe7dac27a0441192af758dc55e6c71c83ccb4 (patch)
treee9075c32f9cd1176090e1530f5aaae247d3bc867 /src/game
parent88fd7455323b0e58ea2b808510d8c7e5aa1cd599 (diff)
parentadeb696f756739e2ed5b9c3ef4f7551ce023ff2b (diff)
*Merge.
--HG-- branch : trunk
Diffstat (limited to 'src/game')
-rw-r--r--src/game/CMakeLists.txt266
-rw-r--r--src/game/Chat.cpp3
-rw-r--r--src/game/Chat.h2
-rw-r--r--src/game/Language.h23
-rw-r--r--src/game/Level0.cpp3
-rw-r--r--src/game/Level1.cpp158
-rw-r--r--src/game/TicketMgr.cpp4
7 files changed, 387 insertions, 72 deletions
diff --git a/src/game/CMakeLists.txt b/src/game/CMakeLists.txt
new file mode 100644
index 00000000000..db1e31f2414
--- /dev/null
+++ b/src/game/CMakeLists.txt
@@ -0,0 +1,266 @@
+
+########### next target ###############
+
+SET(game_STAT_SRCS
+ AccountMgr.cpp
+ AccountMgr.h
+ AddonHandler.cpp
+ AddonHandler.h
+ AggressorAI.cpp
+ AggressorAI.h
+ AnimalRandomMovementGenerator.h
+ ArenaTeam.cpp
+ ArenaTeam.h
+ ArenaTeamHandler.cpp
+ AuctionHouse.cpp
+ AuctionHouseObject.h
+ Bag.cpp
+ Bag.h
+ BattleGround.cpp
+ BattleGroundAA.cpp
+ BattleGroundAB.cpp
+ BattleGroundAV.cpp
+ BattleGroundBE.cpp
+ BattleGroundEY.cpp
+ BattleGroundNA.cpp
+ BattleGroundRL.cpp
+ BattleGroundWS.cpp
+ BattleGround.h
+ BattleGroundAA.h
+ BattleGroundAB.h
+ BattleGroundAV.h
+ BattleGroundBE.h
+ BattleGroundEY.h
+ BattleGroundNA.h
+ BattleGroundRL.h
+ BattleGroundWS.h
+ BattleGroundHandler.cpp
+ BattleGroundMgr.cpp
+ BattleGroundMgr.h
+ Cell.h
+ CellImpl.h
+ Channel.cpp
+ Channel.h
+ ChannelHandler.cpp
+ ChannelMgr.h
+ CharacterHandler.cpp
+ Chat.cpp
+ Chat.h
+ ChatHandler.cpp
+ CombatHandler.cpp
+ ConfusedMovementGenerator.cpp
+ ConfusedMovementGenerator.h
+ Corpse.cpp
+ Corpse.h
+ CreatureAI.cpp
+ CreatureAI.h
+ CreatureAIImpl.h
+ CreatureAIRegistry.cpp
+ CreatureAIRegistry.h
+ CreatureAISelector.cpp
+ CreatureAISelector.h
+ Creature.cpp
+ Creature.h
+ CreatureGroups.cpp
+ CreatureGroups.h
+ debugcmds.cpp
+ DestinationHolder.cpp
+ DestinationHolder.h
+ DestinationHolderImp.h
+ DuelHandler.cpp
+ DynamicObject.cpp
+ DynamicObject.h
+ FleeingMovementGenerator.cpp
+ FleeingMovementGenerator.h
+ Formulas.h
+ GameEvent.cpp
+ GameEvent.h
+ GameObject.cpp
+ GameObject.h
+ GlobalEvents.cpp
+ GlobalEvents.h
+ GossipDef.cpp
+ GossipDef.h
+ GridDefines.h
+ GridNotifiers.cpp
+ GridNotifiers.h
+ GridNotifiersImpl.h
+ GridStates.cpp
+ GridStates.h
+ Group.cpp
+ Group.h
+ GroupHandler.cpp
+ GuardAI.cpp
+ GuardAI.h
+ Guild.cpp
+ Guild.h
+ GuildHandler.cpp
+ HomeMovementGenerator.cpp
+ HomeMovementGenerator.h
+ HostilRefManager.cpp
+ HostilRefManager.h
+ IdleMovementGenerator.cpp
+ IdleMovementGenerator.h
+ InstanceData.cpp
+ InstanceData.h
+ InstanceSaveMgr.cpp
+ InstanceSaveMgr.h
+ Item.cpp
+ Item.h
+ ItemEnchantmentMgr.cpp
+ ItemEnchantmentMgr.h
+ ItemHandler.cpp
+ ItemPrototype.h
+ Language.h
+ Level0.cpp
+ Level1.cpp
+ Level2.cpp
+ Level3.cpp
+ LFGHandler.cpp
+ LootHandler.cpp
+ LootMgr.cpp
+ LootMgr.h
+ Mail.cpp
+ Mail.h
+ Map.cpp
+ Map.h
+ MapInstanced.cpp
+ MapInstanced.h
+ MapManager.cpp
+ MapManager.h
+ MiscHandler.cpp
+ MotionMaster.cpp
+ MotionMaster.h
+ MovementGenerator.cpp
+ MovementGenerator.h
+ MovementGeneratorImpl.h
+ MovementHandler.cpp
+ NPCHandler.cpp
+ NPCHandler.h
+ NullCreatureAI.cpp
+ NullCreatureAI.h
+ ObjectAccessor.cpp
+ ObjectAccessor.h
+ Object.cpp
+ ObjectDefines.h
+ ObjectGridLoader.cpp
+ ObjectGridLoader.h
+ Object.h
+ ObjectMgr.cpp
+ ObjectMgr.h
+ Opcodes.cpp
+ Opcodes.h
+ OutdoorPvP.cpp
+ OutdoorPvP.h
+ OutdoorPvPEP.cpp
+ OutdoorPvPEP.h
+ OutdoorPvPHP.cpp
+ OutdoorPvPHP.h
+ OutdoorPvPMgr.cpp
+ OutdoorPvPMgr.h
+ OutdoorPvPNA.cpp
+ OutdoorPvPNA.h
+ OutdoorPvPObjectiveAI.cpp
+ OutdoorPvPObjectiveAI.h
+ OutdoorPvPSI.cpp
+ OutdoorPvPSI.h
+ OutdoorPvPTF.cpp
+ OutdoorPvPTF.h
+ OutdoorPvPZM.cpp
+ OutdoorPvPZM.h
+ Path.h
+ PetAI.cpp
+ PetAI.h
+ Pet.cpp
+ Pet.h
+ PetHandler.cpp
+ PetitionsHandler.cpp
+ Player.cpp
+ Player.h
+ PlayerDump.cpp
+ PlayerDump.h
+ PointMovementGenerator.cpp
+ PointMovementGenerator.h
+ PossessedAI.cpp
+ PossessedAI.h
+ QueryHandler.cpp
+ QuestDef.cpp
+ QuestDef.h
+ QuestHandler.cpp
+ RandomMovementGenerator.cpp
+ RandomMovementGenerator.h
+ ReactorAI.cpp
+ ReactorAI.h
+ ScriptCalls.cpp
+ ScriptCalls.h
+ SharedDefines.h
+ SkillHandler.cpp
+ SpellAuraDefines.h
+ SpellAuras.cpp
+ SpellAuras.h
+ Spell.cpp
+ SpellEffects.cpp
+ Spell.h
+ SkillDiscovery.cpp
+ SkillDiscovery.h
+ SkillExtraItems.cpp
+ SkillExtraItems.h
+ SpellHandler.cpp
+ SocialMgr.cpp
+ SocialMgr.h
+ SpellMgr.cpp
+ SpellMgr.h
+ StatSystem.cpp
+ TargetedMovementGenerator.cpp
+ TargetedMovementGenerator.h
+ TaxiHandler.cpp
+ TemporarySummon.cpp
+ TemporarySummon.h
+ TicketHandler.cpp
+ TicketMgr.cpp
+ TicketMgr.h
+ tools.cpp
+ Tools.h
+ TotemAI.cpp
+ TotemAI.h
+ Totem.cpp
+ Totem.h
+ TradeHandler.cpp
+ Transports.cpp
+ Transports.h
+ ThreatManager.cpp
+ ThreatManager.h
+ Traveller.h
+ Unit.cpp
+ Unit.h
+ UnitEvents.h
+ UpdateData.cpp
+ UpdateData.h
+ UpdateFields.h
+ UpdateMask.h
+ VoiceChatHandler.cpp
+ WaypointManager.cpp
+ WaypointManager.h
+ WaypointMovementGenerator.cpp
+ WaypointMovementGenerator.h
+ Weather.cpp
+ Weather.h
+ World.cpp
+ World.h
+ WorldLog.cpp
+ WorldLog.h
+ WorldSession.cpp
+ WorldSession.h
+ WorldSocket.cpp
+ WorldSocket.h
+ WorldSocketMgr.cpp
+ WorldSocketMgr.h
+ FollowerReference.cpp
+ FollowerReference.h
+ FollowerRefManager.h
+ GroupReference.cpp
+ GroupReference.h
+ GroupRefManager.h
+)
+
+add_library(game STATIC ${game_STAT_SRCS})
diff --git a/src/game/Chat.cpp b/src/game/Chat.cpp
index 43811f8e3e7..fc25216a55e 100644
--- a/src/game/Chat.cpp
+++ b/src/game/Chat.cpp
@@ -512,6 +512,7 @@ ChatCommand * ChatHandler::getCommandTable()
{ "viewname", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketGetByNameCommand, "", NULL },
{ "viewid", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketGetByIdCommand, "", NULL },
{ "close", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketCloseByIdCommand, "", NULL },
+ { "closedlist", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketListClosedCommand, "", NULL },
{ "delete", SEC_ADMINISTRATOR, false, &ChatHandler::HandleGMTicketDeleteByIdCommand, "", NULL },
{ "assign", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketAssignToCommand, "", NULL },
{ "unassign", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketUnAssignCommand, "", NULL },
@@ -523,7 +524,7 @@ ChatCommand * ChatHandler::getCommandTable()
{
{ "account", SEC_PLAYER, true, NULL, "", accountCommandTable },
{ "gm", SEC_MODERATOR, true, NULL, "", gmCommandTable },
- { "ticket", SEC_MODERATOR, true, NULL, "", ticketCommandTable },
+ { "ticket", SEC_MODERATOR, false, NULL, "", ticketCommandTable },
{ "npc", SEC_MODERATOR, false, NULL, "", npcCommandTable },
{ "go", SEC_MODERATOR, false, NULL, "", goCommandTable },
{ "learn", SEC_MODERATOR, false, NULL, "", learnCommandTable },
diff --git a/src/game/Chat.h b/src/game/Chat.h
index 39aa3cb025f..1b7224c3f0d 100644
--- a/src/game/Chat.h
+++ b/src/game/Chat.h
@@ -68,6 +68,7 @@ class ChatHandler
void SendSysMessage( int32 entry);
void PSendSysMessage( const char *format, ...) ATTR_PRINTF(2,3);
void PSendSysMessage( int32 entry, ... );
+ std::string PGetParseString(int32 entry, ...);
int ParseCommands(const char* text);
@@ -412,6 +413,7 @@ class ChatHandler
// GM ticket command handlers
bool HandleGMTicketListCommand(const char* args);
bool HandleGMTicketListOnlineCommand(const char* args);
+ bool HandleGMTicketListClosedCommand(const char* args);
bool HandleGMTicketGetByIdCommand(const char* args);
bool HandleGMTicketGetByNameCommand(const char* args);
bool HandleGMTicketCloseByIdCommand(const char* args);
diff --git a/src/game/Language.h b/src/game/Language.h
index 3875ac092cc..d95489b056f 100644
--- a/src/game/Language.h
+++ b/src/game/Language.h
@@ -758,23 +758,32 @@ enum TrinityStrings
LANG_YOU_CHANGE_GENDER = 1120,
LANG_YOUR_GENDER_CHANGED = 1121,
- // Ticket Strings 2000-2020
+ // Ticket Strings 2000-2029
LANG_COMMAND_TICKETNEW = 2000,
- LANG_COMMAND_TICKETUPDATED = 2001,
+ LANG_COMMAND_TICKETUPDATED = 2001,
LANG_COMMAND_TICKETPLAYERABANDON = 2002,
LANG_COMMAND_TICKETCLOSED = 2003,
LANG_COMMAND_TICKETDELETED = 2004,
LANG_COMMAND_TICKETNOTEXIST = 2005,
- LANG_COMMAND_TICKETCLOSEFIRST = 2007,
- LANG_COMMAND_TICKETALREADYASSIGNED = 2008,
- LANG_COMMAND_TICKETRELOAD = 2009,
- LANG_COMMAND_TICKETSHOWLIST = 2010,
- LANG_COMMAND_TICKETSHOWONLINELIST = 2011,
+ LANG_COMMAND_TICKETCLOSEFIRST = 2006,
+ LANG_COMMAND_TICKETALREADYASSIGNED = 2007,
+ LANG_COMMAND_TICKETRELOAD = 2008,
+ LANG_COMMAND_TICKETSHOWLIST = 2009,
+ LANG_COMMAND_TICKETSHOWONLINELIST = 2010,
+ LANG_COMMAND_TICKETSHOWCLOSEDLIST = 2011,
LANG_COMMAND_TICKETASSIGNERROR_A = 2012,
LANG_COMMAND_TICKETASSIGNERROR_B = 2013,
LANG_COMMAND_TICKETNOTASSIGNED = 2014,
LANG_COMMAND_TICKETUNASSIGNSECURITY = 2015,
LANG_COMMAND_TICKETCANNOTCLOSE = 2016,
+ LANG_COMMAND_TICKETLISTGUID = 2017,
+ LANG_COMMAND_TICKETLISTNAME = 2018,
+ LANG_COMMAND_TICKETLISTAGE = 2019,
+ LANG_COMMAND_TICKETLISTASSIGNEDTO = 2020,
+ LANG_COMMAND_TICKETLISTUNASSIGNED = 2021,
+ LANG_COMMAND_TICKETLISTMESSAGE = 2022,
+ LANG_COMMAND_TICKETLISTCOMMENT = 2023,
+ LANG_COMMAND_TICKETLISTADDCOMMENT = 2024,
// Trinity strings 5000-9999
diff --git a/src/game/Level0.cpp b/src/game/Level0.cpp
index 63a015f9802..ff7d58f8da1 100644
--- a/src/game/Level0.cpp
+++ b/src/game/Level0.cpp
@@ -31,6 +31,7 @@
#include "Language.h"
#include "AccountMgr.h"
#include "SystemConfig.h"
+#include "revision.h"
#include "Util.h"
bool ChatHandler::HandleHelpCommand(const char* args)
@@ -95,7 +96,7 @@ bool ChatHandler::HandleServerInfoCommand(const char* /*args*/)
std::string str = secsToTimeString(sWorld.GetUptime());
uint32 updateTime = sWorld.GetUpdateTime();
- PSendSysMessage(_FULLVERSION); //char const* full;
+ PSendSysMessage(_FULLVERSION);
//if(m_session)
// full = _FULLVERSION(REVISION_DATE,REVISION_TIME,"|cffffffff|Hurl:" REVISION_ID "|h" REVISION_ID "|h|r");
//else
diff --git a/src/game/Level1.cpp b/src/game/Level1.cpp
index d1f02ad507f..8dacbc4954b 100644
--- a/src/game/Level1.cpp
+++ b/src/game/Level1.cpp
@@ -267,6 +267,16 @@ bool ChatHandler::HandleGMChatCommand(const char* args)
return false;
}
+std::string ChatHandler::PGetParseString(int32 entry, ...)
+{
+ const char *format = GetTrinityString(entry);
+ va_list ap;
+ char str [1024];
+ va_start(ap, entry);
+ vsnprintf(str,1024,format, ap );
+ va_end(ap);
+ return (std::string)str;
+}
bool ChatHandler::HandleGMTicketListCommand(const char* args)
{
SendSysMessage(LANG_COMMAND_TICKETSHOWLIST);
@@ -274,18 +284,16 @@ bool ChatHandler::HandleGMTicketListCommand(const char* args)
{
if((*itr)->closed != 0)
continue;
-
- std::stringstream message;
- message << "|cff00ff00Ticket|r: |cff00ccff" << (*itr)->guid;
- message << ".|r |cff00ff00created by:|r |cff00ccff" << (*itr)->name;
- message << ".|r |cff00ff00Last change:|r |cff00ccff " << secsToTimeString(time(NULL) - (*itr)->timestamp, true, false) << " ago.";
- if((*itr)->assignedToGM != 0)
+ std::string gmname;
+ std::stringstream ss;
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, (*itr)->guid);
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, (*itr)->name.c_str());
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTAGE, (secsToTimeString(time(NULL) - (*itr)->timestamp, true, false)).c_str());
+ if(objmgr.GetPlayerNameByGUID((*itr)->assignedToGM, gmname))
{
- std::string gmname;
- objmgr.GetPlayerNameByGUID((*itr)->assignedToGM, gmname);
- message << "|r |cff00ff00Assigned to:|r |cff00ccff " << gmname;
- }
- SendSysMessage(message.str().c_str());
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTASSIGNEDTO, gmname.c_str());
+ }
+ SendSysMessage(ss.str().c_str());
}
return true;
}
@@ -299,17 +307,38 @@ bool ChatHandler::HandleGMTicketListOnlineCommand(const char* args)
if((*itr)->closed != 0 || !objmgr.GetPlayer((*itr)->playerGuid))
continue;
- std::stringstream message;
- message << "|cff00ff00Ticket|r: |cff00ccff" << (*itr)->guid;
- message << ".|r |cff00ff00created by:|r |cff00ccff" << (*itr)->name;
- message << ".|r |cff00ff00Last change:|r |cff00ccff " << secsToTimeString((time(NULL) - (*itr)->timestamp), true, false) << " ago.";
- if((*itr)->assignedToGM != 0 && objmgr.GetPlayer((*itr)->assignedToGM))
+ std::string gmname;
+ std::stringstream ss;
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, (*itr)->guid);
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, (*itr)->name.c_str());
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTAGE, (secsToTimeString(time(NULL) - (*itr)->timestamp, true, false)).c_str());
+ if(objmgr.GetPlayerNameByGUID((*itr)->assignedToGM, gmname))
+ {
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTASSIGNEDTO, gmname.c_str());
+ }
+ SendSysMessage(ss.str().c_str());
+ }
+ return true;
+}
+
+bool ChatHandler::HandleGMTicketListClosedCommand(const char* args)
+{
+ SendSysMessage(LANG_COMMAND_TICKETSHOWCLOSEDLIST);
+ for(GmTicketList::iterator itr = ticketmgr.GM_TicketList.begin(); itr != ticketmgr.GM_TicketList.end(); ++itr)
+ {
+ if((*itr)->closed == 0)
+ continue;
+
+ std::string gmname;
+ std::stringstream ss;
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, (*itr)->guid);
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, (*itr)->name.c_str());
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTAGE, (secsToTimeString(time(NULL) - (*itr)->timestamp, true, false)).c_str());
+ if(objmgr.GetPlayerNameByGUID((*itr)->assignedToGM, gmname))
{
- std::string gmname;
- objmgr.GetPlayerNameByGUID((*itr)->assignedToGM, gmname);
- message << "|r |cff00ff00Assigned to:|r |cff00ccff " << gmname;
- }
- SendSysMessage(message.str().c_str());
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTASSIGNEDTO, gmname.c_str());
+ }
+ SendSysMessage(ss.str().c_str());
}
return true;
}
@@ -327,22 +356,21 @@ bool ChatHandler::HandleGMTicketGetByIdCommand(const char* args)
return true;
}
- std::stringstream message;
- message << "|cff00ff00Ticket|r: |cff00ccff" << ticket->guid;
- message << ".|r |cff00ff00created by:|r |cff00ccff" << ticket->name;
- message << ".|r |cff00ff00Last change:|r |cff00ccff " << secsToTimeString((time(NULL)-ticket->timestamp), true, false) << " ago.";
- if(ticket->assignedToGM != 0 && objmgr.GetPlayer(ticket->assignedToGM))
+ std::string gmname;
+ std::stringstream ss;
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, ticket->guid);
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, ticket->name.c_str());
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTAGE, (secsToTimeString(time(NULL) - ticket->timestamp, true, false)).c_str());
+ if(objmgr.GetPlayerNameByGUID(ticket->assignedToGM, gmname))
{
- std::string gmname;
- objmgr.GetPlayerNameByGUID(ticket->assignedToGM, gmname);
- message << "|r |cff00ff00Assigned to:|r |cff00ccff " << gmname;
- }
- message << "|r\n|cff00ff00Message:|r " << ticket->message;
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTASSIGNEDTO, gmname.c_str());
+ }
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTMESSAGE, ticket->message.c_str());
if(ticket->comment != "")
{
- message << "|r |cff00ff00Comment:|r |cff00ccff " << ticket->comment;
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTCOMMENT, ticket->comment.c_str());
}
- SendSysMessage(message.str().c_str());
+ SendSysMessage(ss.str().c_str());
return true;
}
@@ -358,22 +386,21 @@ bool ChatHandler::HandleGMTicketGetByNameCommand(const char* args)
return true;
}
- std::stringstream message;
- message << "|cff00ff00Ticket|r: |cff00ccff" << ticket->guid;
- message << ".|r |cff00ff00created by:|r |cff00ccff" << ticket->name;
- message << ".|r |cff00ff00Last change:|r |cff00ccff " << secsToTimeString((time(NULL)-ticket->timestamp), true, false) << " ago.";
- if(ticket->assignedToGM != 0 && objmgr.GetPlayer(ticket->assignedToGM))
+ std::string gmname;
+ std::stringstream ss;
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, ticket->guid);
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, ticket->name.c_str());
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTAGE, (secsToTimeString(time(NULL) - ticket->timestamp, true, false)).c_str());
+ if(objmgr.GetPlayerNameByGUID(ticket->assignedToGM, gmname))
{
- std::string gmname;
- objmgr.GetPlayerNameByGUID(ticket->assignedToGM, gmname);
- message << "|r |cff00ff00Assigned to:|r |cff00ccff " << gmname;
- }
- message << "|r\n|cff00ff00Message:|r " << ticket->message;
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTASSIGNEDTO, gmname.c_str());
+ }
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTMESSAGE, ticket->message.c_str());
if(ticket->comment != "")
{
- message << "|r |cff00ff00Comment:|r |cff00ccff " << ticket->comment;
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTCOMMENT, ticket->comment.c_str());
}
- SendSysMessage(message.str().c_str());
+ SendSysMessage(ss.str().c_str());
return true;
}
@@ -394,7 +421,11 @@ bool ChatHandler::HandleGMTicketCloseByIdCommand(const char* args)
PSendSysMessage(LANG_COMMAND_TICKETCANNOTCLOSE, ticket->guid);
return true;
}
- sWorld.SendGMText(LANG_COMMAND_TICKETCLOSED, m_session->GetPlayer()->GetName(), ticket->guid);
+ std::stringstream ss;
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, ticket->guid);
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, ticket->name.c_str());
+ ss << PGetParseString(LANG_COMMAND_TICKETCLOSED, m_session->GetPlayer()->GetName());
+ SendGlobalGMSysMessage(ss.str().c_str());
ticketmgr.RemoveGMTicket(ticket->guid, m_session->GetPlayer()->GetGUID());
Player *plr = objmgr.GetPlayer(ticket->playerGuid);
@@ -457,10 +488,9 @@ bool ChatHandler::HandleGMTicketAssignToCommand(const char* args)
ticket->assignedToGM = tarGUID;
ticketmgr.UpdateGMTicket(ticket);
std::stringstream ss;
- ss << "|cff00ff00Ticket:|r ";
- ss << "|cffff00ff" << ticket->guid << ". " << cplr->GetName() << "|r";
- ss << "|cff00ff00 assigned to:|r ";
- ss << "|cffff00ff\"" << gmname << "\".";
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, ticket->guid);
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, ticket->name.c_str());
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTASSIGNEDTO, gmname.c_str());
SendGlobalGMSysMessage(ss.str().c_str());
return true;
}
@@ -481,7 +511,7 @@ bool ChatHandler::HandleGMTicketUnAssignCommand(const char* args)
}
if(ticket->assignedToGM == 0)
{
- SendSysMessage(LANG_COMMAND_TICKETNOTASSIGNED);
+ PSendSysMessage(LANG_COMMAND_TICKETNOTASSIGNED, ticket->guid);
return true;
}
@@ -495,9 +525,10 @@ bool ChatHandler::HandleGMTicketUnAssignCommand(const char* args)
}
std::stringstream ss;
- ss << "|cff00ff00Ticket:|r ";
- ss << "|cffff00ff" << ticket->guid << ". " << cplr->GetName() << "|r";
- ss << "|cff00ff00 unassigned.|r";
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, ticket->guid);
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, ticket->name.c_str());
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTASSIGNEDTO, gmname.c_str());
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTUNASSIGNED, cplr->GetName());
SendGlobalGMSysMessage(ss.str().c_str());
ticket->assignedToGM = 0;
ticketmgr.UpdateGMTicket(ticket);
@@ -530,13 +561,18 @@ bool ChatHandler::HandleGMTicketCommentCommand(const char* args)
return true;
}
+ std::string gmname;
+ objmgr.GetPlayerNameByGUID(ticket->assignedToGM, gmname);
ticket->comment = comment;
ticketmgr.UpdateGMTicket(ticket);
std::stringstream ss;
- ss << "|cff00ff00Ticket:|r ";
- ss << "|cffff00ff" << ticket->guid << ". " << cplr->GetName() << "|r";
- ss << "|cff00ff00 added comment:|r ";
- ss << "|cffff00ff\"" << ticket->comment << "\".";
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, ticket->guid);
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, ticket->name.c_str());
+ if(objmgr.GetPlayerNameByGUID(ticket->assignedToGM, gmname))
+ {
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTASSIGNEDTO, gmname.c_str());
+ }
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTADDCOMMENT, cplr->GetName(), ticket->comment.c_str());
SendGlobalGMSysMessage(ss.str().c_str());
return true;
}
@@ -560,9 +596,9 @@ bool ChatHandler::HandleGMTicketDeleteByIdCommand(const char* args)
}
std::stringstream ss;
- ss << "|cff00ff00Ticket:|r ";
- ss << "|cffff00ff" << m_session->GetPlayer()->GetName() << "|r";
- ss << "|cff00ff00 deleted.|r";
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, ticket->guid);
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, ticket->name.c_str());
+ ss << PGetParseString(LANG_COMMAND_TICKETDELETED, m_session->GetPlayer()->GetName());
SendGlobalGMSysMessage(ss.str().c_str());
Player *plr = objmgr.GetPlayer(ticket->playerGuid);
ticketmgr.DeleteGMTicketPermanently(ticket->guid);
diff --git a/src/game/TicketMgr.cpp b/src/game/TicketMgr.cpp
index 1e28c2a2ec1..111e1ed27ad 100644
--- a/src/game/TicketMgr.cpp
+++ b/src/game/TicketMgr.cpp
@@ -111,7 +111,7 @@ void TicketMgr::LoadGMTickets()
InitTicketID();
// Delete all out of object holder
GM_TicketList.clear();
- QueryResult *result = CharacterDatabase.Query( "SELECT `guid`, `playerGuid`, `name`, `message`, `timestamp`, `closed`, `assignedto`, `comment` FROM `gm_tickets` WHERE `closed` = '0'" );
+ QueryResult *result = CharacterDatabase.Query( "SELECT `guid`, `playerGuid`, `name`, `message`, `timestamp`, `closed`, `assignedto`, `comment` FROM `gm_tickets`" );
GM_Ticket *ticket;
if(!result)
@@ -197,7 +197,7 @@ void TicketMgr::InitTicketID()
QueryResult *result = CharacterDatabase.Query("SELECT MAX(guid) FROM gm_tickets");
if(result)
{
- m_ticketid = result->Fetch()[0].GetUInt64() + 1;
+ m_ticketid = result->Fetch()[0].GetUInt64();
delete result;
}
}