*Merge.
--HG-- branch : trunk
This commit is contained in:
@@ -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})
|
||||
+2
-1
@@ -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 },
|
||||
|
||||
@@ -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);
|
||||
|
||||
+16
-7
@@ -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
|
||||
|
||||
+2
-1
@@ -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
|
||||
|
||||
+97
-61
@@ -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))
|
||||
{
|
||||
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;
|
||||
}
|
||||
|
||||
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))
|
||||
{
|
||||
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);
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user