aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/mangos.sql3
-rw-r--r--sql/updates/7558_01_mangos_mangos_string.sql2
-rw-r--r--sql/updates/7560_01_mangos_gameobject_template.sql4
-rw-r--r--src/game/GameObject.h1
-rw-r--r--src/game/QueryHandler.cpp4
-rw-r--r--src/shared/Database/SQLStorage.cpp4
6 files changed, 13 insertions, 5 deletions
diff --git a/sql/mangos.sql b/sql/mangos.sql
index ada50d50803..a80eaa80f5c 100644
--- a/sql/mangos.sql
+++ b/sql/mangos.sql
@@ -22,7 +22,7 @@
DROP TABLE IF EXISTS `db_version`;
CREATE TABLE `db_version` (
`version` varchar(120) default NULL,
- `required_7558_02_mangos_command` bit(1) default NULL
+ `required_7560_01_mangos_gameobject_template` bit(1) default NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Used DB version notes';
--
@@ -1408,6 +1408,7 @@ CREATE TABLE `gameobject_template` (
`type` tinyint(3) unsigned NOT NULL default '0',
`displayId` mediumint(8) unsigned NOT NULL default '0',
`name` varchar(100) NOT NULL default '',
+ `IconName` varchar(100) NOT NULL default '',
`castBarCaption` varchar(100) NOT NULL default '',
`faction` smallint(5) unsigned NOT NULL default '0',
`flags` int(10) unsigned NOT NULL default '0',
diff --git a/sql/updates/7558_01_mangos_mangos_string.sql b/sql/updates/7558_01_mangos_mangos_string.sql
index 79012b791ad..c0b856a9814 100644
--- a/sql/updates/7558_01_mangos_mangos_string.sql
+++ b/sql/updates/7558_01_mangos_mangos_string.sql
@@ -1,6 +1,6 @@
ALTER TABLE db_version CHANGE COLUMN required_7544_01_mangos_uptime required_7558_01_mangos_mangos_string bit;
-DELETE FROM mangos_string WHERE entry IN (1123,1124,1125);
+DELETE FROM mangos_string WHERE entry IN (1123,1124,1125,1126,1127);
INSERT INTO mangos_string VALUES
(1123,'Not pet found',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),
(1124,'Wrong pet type',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),
diff --git a/sql/updates/7560_01_mangos_gameobject_template.sql b/sql/updates/7560_01_mangos_gameobject_template.sql
new file mode 100644
index 00000000000..f980687c777
--- /dev/null
+++ b/sql/updates/7560_01_mangos_gameobject_template.sql
@@ -0,0 +1,4 @@
+ALTER TABLE db_version CHANGE COLUMN required_7558_02_mangos_command required_7560_01_mangos_gameobject_template bit;
+
+ALTER TABLE gameobject_template
+ ADD COLUMN IconName varchar(100) NOT NULL default '' AFTER name;
diff --git a/src/game/GameObject.h b/src/game/GameObject.h
index 89786d6b2d8..3b08fdf7139 100644
--- a/src/game/GameObject.h
+++ b/src/game/GameObject.h
@@ -41,6 +41,7 @@ struct GameObjectInfo
uint32 type;
uint32 displayId;
char *name;
+ char *IconName;
char *castBarCaption;
uint32 faction;
uint32 flags;
diff --git a/src/game/QueryHandler.cpp b/src/game/QueryHandler.cpp
index 09d8f2f838d..b27620e7857 100644
--- a/src/game/QueryHandler.cpp
+++ b/src/game/QueryHandler.cpp
@@ -223,9 +223,11 @@ void WorldSession::HandleGameObjectQueryOpcode( WorldPacket & recv_data )
{
std::string Name;
+ std::string IconName;
std::string CastBarCaption;
Name = info->name;
+ IconName = info->IconName;
CastBarCaption = info->castBarCaption;
int loc_idx = GetSessionDbLocaleIndex();
@@ -247,7 +249,7 @@ void WorldSession::HandleGameObjectQueryOpcode( WorldPacket & recv_data )
data << uint32(info->displayId);
data << Name;
data << uint8(0) << uint8(0) << uint8(0); // name2, name3, name4
- data << uint8(0); // 2.0.3, string
+ data << IconName; // 2.0.3, string. Icon name to use instead of default icon for go's (ex: "Attack" makes sword)
data << CastBarCaption; // 2.0.3, string. Text will appear in Cast Bar when using GO (ex: "Collecting")
data << uint8(0); // 2.0.3, string
data.append(info->raw.data, 24);
diff --git a/src/shared/Database/SQLStorage.cpp b/src/shared/Database/SQLStorage.cpp
index 83649e77641..b5e7508afe5 100644
--- a/src/shared/Database/SQLStorage.cpp
+++ b/src/shared/Database/SQLStorage.cpp
@@ -33,8 +33,8 @@ const char CreatureDataAddonInfofmt[]="iiiiiiiis";
const char CreatureModelfmt[]="iffbi";
const char CreatureInfoAddonInfofmt[]="iiiiiiiis";
const char EquipmentInfofmt[]="iiii";
-const char GameObjectInfosrcfmt[]="iiissiifiiiiiiiiiiiiiiiiiiiiiiiis";
-const char GameObjectInfodstfmt[]="iiissiifiiiiiiiiiiiiiiiiiiiiiiiii";
+const char GameObjectInfosrcfmt[]="iiisssiifiiiiiiiiiiiiiiiiiiiiiiiis";
+const char GameObjectInfodstfmt[]="iiisssiifiiiiiiiiiiiiiiiiiiiiiiiii";
const char ItemPrototypesrcfmt[]="iiiisiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiffiffiffiffiffiiiiiiiiiifiiifiiiiiifiiiiiifiiiiiifiiiiiifiiiisiiiiiiiiiiiiiiiiiiiiiiiiifiisiiii";
const char ItemPrototypedstfmt[]="iiiisiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiffiffiffiffiffiiiiiiiiiifiiifiiiiiifiiiiiifiiiiiifiiiiiifiiiisiiiiiiiiiiiiiiiiiiiiiiiiifiiiiiii";
const char PageTextfmt[]="isi";