aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/game/Chat.cpp1
-rw-r--r--src/game/Chat.h1
-rw-r--r--src/game/Language.h6
-rw-r--r--src/game/Level2.cpp31
4 files changed, 38 insertions, 1 deletions
diff --git a/src/game/Chat.cpp b/src/game/Chat.cpp
index c23ee76ee7d..643b18b7e00 100644
--- a/src/game/Chat.cpp
+++ b/src/game/Chat.cpp
@@ -235,6 +235,7 @@ ChatCommand * ChatHandler::getCommandTable()
{ "activate", SEC_GAMEMASTER, false, &ChatHandler::HandleActivateObjectCommand, "", NULL },
{ "add", SEC_GAMEMASTER, false, &ChatHandler::HandleGameObjectAddCommand, "", NULL },
{ "delete", SEC_GAMEMASTER, false, &ChatHandler::HandleGameObjectDeleteCommand, "", NULL },
+ { "info", SEC_GAMEMASTER, false, &ChatHandler::HandleGOInfoCommand, "", NULL },
{ "move", SEC_GAMEMASTER, false, &ChatHandler::HandleGameObjectMoveCommand, "", NULL },
{ "near", SEC_GAMEMASTER, false, &ChatHandler::HandleGameObjectNearCommand, "", NULL },
{ "state", SEC_GAMEMASTER, false, &ChatHandler::HandleGameObjectStateCommand, "", NULL },
diff --git a/src/game/Chat.h b/src/game/Chat.h
index 9d2d89d09de..8ecef9bbcc2 100644
--- a/src/game/Chat.h
+++ b/src/game/Chat.h
@@ -192,6 +192,7 @@ class ChatHandler
bool HandleGameObjectAddCommand(const char* args);
bool HandleGameObjectDeleteCommand(const char* args);
+ bool HandleGOInfoCommand(const char* args);
bool HandleGameObjectMoveCommand(const char* args);
bool HandleGameObjectNearCommand(const char* args);
bool HandleGameObjectPhaseCommand(const char* args);
diff --git a/src/game/Language.h b/src/game/Language.h
index f83ef222b6b..4e5e3de4a9d 100644
--- a/src/game/Language.h
+++ b/src/game/Language.h
@@ -879,7 +879,11 @@ enum TrinityStrings
LANG_NPCINFO_ARMOR = 5021,
LANG_CHANNEL_NOT_PUBLIC = 5022,
LANG_CHANNEL_PUBLIC_CHANGED = 5023,
- // Room for more Trinity strings 5024-9999
+ LANG_GOINFO_ENTRY = 5024,
+ LANG_GOINFO_TYPE = 5025,
+ LANG_GOINFO_DISPLAYID = 5026,
+ LANG_GOINFO_NAME = 5027,
+ // Room for more Trinity strings 5028-9999
// Used for GM Announcements
LANG_GM_BROADCAST = 6613,
LANG_GM_NOTIFY = 6614,
diff --git a/src/game/Level2.cpp b/src/game/Level2.cpp
index 62fc94b541a..56b28aabd9b 100644
--- a/src/game/Level2.cpp
+++ b/src/game/Level2.cpp
@@ -2123,6 +2123,37 @@ bool ChatHandler::HandleModifyPhaseCommand(const char* args)
return true;
}
+//show info of gameobject
+bool ChatHandler::HandleGOInfoCommand(const char* args)
+{
+ uint32 entry = atoi((char*)args);
+ uint32 type = 0;
+ uint32 displayid = 0;
+ std::string name;
+
+ if(!*args)
+ {
+ WorldObject * obj = getSelectedObject();
+ entry = obj->GetEntry();
+ }
+
+ QueryResult_AutoPtr result = WorldDatabase.PQuery("SELECT `type` `displayid` `name` FROM gameobject_template WHERE entry = %u", entry);
+
+ if(!result)
+ return false;
+
+ Field * fields = result->Fetch();
+ type = fields[0].GetUInt32();
+ displayid = fields[1].GetUInt32();
+ name = fields[3].GetString();
+
+ PSendSysMessage(LANG_GOINFO_ENTRY, entry);
+ PSendSysMessage(LANG_GOINFO_TYPE, type);
+ PSendSysMessage(LANG_GOINFO_DISPLAYID, displayid);
+ PSendSysMessage(LANG_GOINFO_NAME, name.c_str());
+
+ return true;
+}
//show info of player
bool ChatHandler::HandlePInfoCommand(const char* args)