aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRat <gmstreetrat@gmail.com>2015-04-06 21:03:50 +0200
committerRat <gmstreetrat@gmail.com>2015-04-06 21:03:50 +0200
commit9b746368db5634053c918ed8e67349b73a6fbd16 (patch)
tree2b7a51041be7c32e5103a7540fcf5069186199d8
parent11f6b9af0bb59458721abc8486757ce5e1e4b6b0 (diff)
Core/Database: removed old questItem fields
-rw-r--r--sql/updates/world/2015_04_06_01_world.sql2
-rw-r--r--sql/updates/world/2015_04_06_02_world.sql29
-rw-r--r--src/server/game/Globals/ObjectMgr.cpp37
-rw-r--r--src/server/shared/Database/Implementation/WorldDatabase.cpp2
4 files changed, 48 insertions, 22 deletions
diff --git a/sql/updates/world/2015_04_06_01_world.sql b/sql/updates/world/2015_04_06_01_world.sql
index a47def6c50c..862ee222679 100644
--- a/sql/updates/world/2015_04_06_01_world.sql
+++ b/sql/updates/world/2015_04_06_01_world.sql
@@ -12,4 +12,4 @@ CREATE TABLE `gameobject_questitem` (
`Idx` int(10) unsigned NOT NULL DEFAULT '0',
`ItemId` int(10) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`GameObjectEntry`,`Idx`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8; \ No newline at end of file
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
diff --git a/sql/updates/world/2015_04_06_02_world.sql b/sql/updates/world/2015_04_06_02_world.sql
new file mode 100644
index 00000000000..ea118adbb50
--- /dev/null
+++ b/sql/updates/world/2015_04_06_02_world.sql
@@ -0,0 +1,29 @@
+INSERT INTO gameobject_questitem (`GameObjectEntry`, `Idx`, `ItemId`)
+(SELECT gameobject_template.entry, 0, gameobject_template.questItem1 FROM gameobject_template WHERE gameobject_template.questItem1 != 0);
+INSERT INTO gameobject_questitem (`GameObjectEntry`, `Idx`, `ItemId`)
+(SELECT gameobject_template.entry, 1, gameobject_template.questItem2 FROM gameobject_template WHERE gameobject_template.questItem2 != 0);
+INSERT INTO gameobject_questitem (`GameObjectEntry`, `Idx`, `ItemId`)
+(SELECT gameobject_template.entry, 2, gameobject_template.questItem3 FROM gameobject_template WHERE gameobject_template.questItem3 != 0);
+INSERT INTO gameobject_questitem (`GameObjectEntry`, `Idx`, `ItemId`)
+(SELECT gameobject_template.entry, 3, gameobject_template.questItem4 FROM gameobject_template WHERE gameobject_template.questItem4 != 0);
+INSERT INTO gameobject_questitem (`GameObjectEntry`, `Idx`, `ItemId`)
+(SELECT gameobject_template.entry, 4, gameobject_template.questItem5 FROM gameobject_template WHERE gameobject_template.questItem5 != 0);
+INSERT INTO gameobject_questitem (`GameObjectEntry`, `Idx`, `ItemId`)
+(SELECT gameobject_template.entry, 5, gameobject_template.questItem6 FROM gameobject_template WHERE gameobject_template.questItem6 != 0);
+
+INSERT INTO creature_questitem (`CreatureEntry`, `Idx`, `ItemId`)
+(SELECT creature_template.entry, 0, creature_template.questItem1 FROM creature_template WHERE creature_template.questItem1 != 0);
+INSERT INTO creature_questitem (`CreatureEntry`, `Idx`, `ItemId`)
+(SELECT creature_template.entry, 1, creature_template.questItem2 FROM creature_template WHERE creature_template.questItem2 != 0);
+INSERT INTO creature_questitem (`CreatureEntry`, `Idx`, `ItemId`)
+(SELECT creature_template.entry, 2, creature_template.questItem3 FROM creature_template WHERE creature_template.questItem3 != 0);
+INSERT INTO creature_questitem (`CreatureEntry`, `Idx`, `ItemId`)
+(SELECT creature_template.entry, 3, creature_template.questItem4 FROM creature_template WHERE creature_template.questItem4 != 0);
+INSERT INTO creature_questitem (`CreatureEntry`, `Idx`, `ItemId`)
+(SELECT creature_template.entry, 4, creature_template.questItem5 FROM creature_template WHERE creature_template.questItem5 != 0);
+INSERT INTO creature_questitem (`CreatureEntry`, `Idx`, `ItemId`)
+(SELECT creature_template.entry, 5, creature_template.questItem6 FROM creature_template WHERE creature_template.questItem6 != 0);
+
+ALTER TABLE `creature_template` DROP `questItem1`, DROP `questItem2`, DROP `questItem3`, DROP `questItem4`, DROP `questItem5`, DROP `questItem6`;
+ALTER TABLE `gameobject_template` DROP `questItem1`, DROP `questItem2`, DROP `questItem3`, DROP `questItem4`, DROP `questItem5`, DROP `questItem6`;
+
diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp
index 0316c31794c..da1529a5730 100644
--- a/src/server/game/Globals/ObjectMgr.cpp
+++ b/src/server/game/Globals/ObjectMgr.cpp
@@ -434,11 +434,8 @@ void ObjectMgr::LoadCreatureTemplates()
"spell1, spell2, spell3, spell4, spell5, spell6, spell7, spell8, PetSpellDataId, VehicleId, mingold, maxgold, AIName, MovementType, "
// 64 65 66 67 68 69 70 71 72
"InhabitType, HoverHeight, HealthModifier, HealthModifierExtra, ManaModifier, ManaModifierExtra, ArmorModifier, DamageModifier, ExperienceModifier, "
- // 73 74 75 76 77 78 79
- "RacialLeader, questItem1, questItem2, questItem3, questItem4, questItem5, questItem6, "
- // 80 81 82 83 84
- "movementId, RegenHealth, mechanic_immune_mask, flags_extra, ScriptName "
- "FROM creature_template");
+ // 73 74 75 76 77 78
+ "RacialLeader, movementId, RegenHealth, mechanic_immune_mask, flags_extra, ScriptName FROM creature_template");
if (!result)
{
@@ -539,11 +536,11 @@ void ObjectMgr::LoadCreatureTemplate(Field* fields)
creatureTemplate.ModExperience = fields[72].GetFloat();
creatureTemplate.RacialLeader = fields[73].GetBool();
- creatureTemplate.movementId = fields[80].GetUInt32();
- creatureTemplate.RegenHealth = fields[81].GetBool();
- creatureTemplate.MechanicImmuneMask = fields[82].GetUInt32();
- creatureTemplate.flags_extra = fields[83].GetUInt32();
- creatureTemplate.ScriptID = GetScriptId(fields[84].GetCString());
+ creatureTemplate.movementId = fields[74].GetUInt32();
+ creatureTemplate.RegenHealth = fields[75].GetBool();
+ creatureTemplate.MechanicImmuneMask = fields[76].GetUInt32();
+ creatureTemplate.flags_extra = fields[77].GetUInt32();
+ creatureTemplate.ScriptID = GetScriptId(fields[78].GetCString());
}
void ObjectMgr::LoadCreatureTemplateAddons()
@@ -6191,13 +6188,13 @@ void ObjectMgr::LoadGameObjectTemplate()
{
uint32 oldMSTime = getMSTime();
- // 0 1 2 3 4 5 6 7 8 9 10 11 12
- QueryResult result = WorldDatabase.Query("SELECT entry, type, displayId, name, IconName, castBarCaption, unk1, faction, flags, size, questItem1, questItem2, questItem3, "
- // 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
- "questItem4, questItem5, questItem6, Data0, Data1, Data2, Data3, Data4, Data5, Data6, Data7, Data8, Data9, Data10, Data11, Data12, "
- // 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
+ // 0 1 2 3 4 5 6 7 8 9
+ QueryResult result = WorldDatabase.Query("SELECT entry, type, displayId, name, IconName, castBarCaption, unk1, faction, flags, size, "
+ // 10 11 12 13 14 15 16 17 18 19 20 21 22
+ "Data0, Data1, Data2, Data3, Data4, Data5, Data6, Data7, Data8, Data9, Data10, Data11, Data12, "
+ // 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
"Data13, Data14, Data15, Data16, Data17, Data18, Data19, Data20, Data21, Data22, Data23, Data24, Data25, Data26, Data27, Data28, "
- // 45 46 47 48 49 50 51
+ // 39 40 41 42 43 44 45
"Data29, Data30, Data31, Data32, unkInt32, AIName, ScriptName "
"FROM gameobject_template");
@@ -6229,11 +6226,11 @@ void ObjectMgr::LoadGameObjectTemplate()
got.size = fields[9].GetFloat();
for (uint8 i = 0; i < MAX_GAMEOBJECT_DATA; ++i)
- got.raw.data[i] = fields[16 + i].GetUInt32();
+ got.raw.data[i] = fields[10 + i].GetUInt32();
- got.unkInt32 = fields[49].GetInt32();
- got.AIName = fields[50].GetString();
- got.ScriptId = GetScriptId(fields[51].GetCString());
+ got.unkInt32 = fields[43].GetInt32();
+ got.AIName = fields[44].GetString();
+ got.ScriptId = GetScriptId(fields[45].GetCString());
// Checks
diff --git a/src/server/shared/Database/Implementation/WorldDatabase.cpp b/src/server/shared/Database/Implementation/WorldDatabase.cpp
index eeecc563854..28c4f43b1ea 100644
--- a/src/server/shared/Database/Implementation/WorldDatabase.cpp
+++ b/src/server/shared/Database/Implementation/WorldDatabase.cpp
@@ -76,7 +76,7 @@ void WorldDatabaseConnection::DoPrepareStatements()
PrepareStatement(WORLD_SEL_WAYPOINT_SCRIPT_ID_BY_GUID, "SELECT id FROM waypoint_scripts WHERE guid = ?", CONNECTION_SYNCH);
PrepareStatement(WORLD_DEL_CREATURE, "DELETE FROM creature WHERE guid = ?", CONNECTION_ASYNC);
PrepareStatement(WORLD_SEL_COMMANDS, "SELECT name, permission, help FROM command", CONNECTION_SYNCH);
- PrepareStatement(WORLD_SEL_CREATURE_TEMPLATE, "SELECT entry, difficulty_entry_1, difficulty_entry_2, difficulty_entry_3, KillCredit1, KillCredit2, modelid1, modelid2, modelid3, modelid4, name, femaleName, subname, IconName, gossip_menu_id, minlevel, maxlevel, exp, exp_unk, faction, npcflag, speed_walk, speed_run, scale, rank, dmgschool, BaseAttackTime, RangeAttackTime, BaseVariance, RangeVariance, unit_class, unit_flags, unit_flags2, dynamicflags, family, trainer_type, trainer_class, trainer_race, type, type_flags, type_flags2, lootid, pickpocketloot, skinloot, resistance1, resistance2, resistance3, resistance4, resistance5, resistance6, spell1, spell2, spell3, spell4, spell5, spell6, spell7, spell8, PetSpellDataId, VehicleId, mingold, maxgold, AIName, MovementType, InhabitType, HoverHeight, HealthModifier, HealthModifierExtra, ManaModifier, ManaModifierExtra, ArmorModifier, DamageModifier, ExperienceModifier, RacialLeader, questItem1, questItem2, questItem3, questItem4, questItem5, questItem6, movementId, RegenHealth, mechanic_immune_mask, flags_extra, ScriptName FROM creature_template WHERE entry = ?", CONNECTION_SYNCH);
+ PrepareStatement(WORLD_SEL_CREATURE_TEMPLATE, "SELECT entry, difficulty_entry_1, difficulty_entry_2, difficulty_entry_3, KillCredit1, KillCredit2, modelid1, modelid2, modelid3, modelid4, name, femaleName, subname, IconName, gossip_menu_id, minlevel, maxlevel, exp, exp_unk, faction, npcflag, speed_walk, speed_run, scale, rank, dmgschool, BaseAttackTime, RangeAttackTime, BaseVariance, RangeVariance, unit_class, unit_flags, unit_flags2, dynamicflags, family, trainer_type, trainer_class, trainer_race, type, type_flags, type_flags2, lootid, pickpocketloot, skinloot, resistance1, resistance2, resistance3, resistance4, resistance5, resistance6, spell1, spell2, spell3, spell4, spell5, spell6, spell7, spell8, PetSpellDataId, VehicleId, mingold, maxgold, AIName, MovementType, InhabitType, HoverHeight, HealthModifier, HealthModifierExtra, ManaModifier, ManaModifierExtra, ArmorModifier, DamageModifier, ExperienceModifier, RacialLeader, movementId, RegenHealth, mechanic_immune_mask, flags_extra, ScriptName FROM creature_template WHERE entry = ?", CONNECTION_SYNCH);
PrepareStatement(WORLD_SEL_WAYPOINT_SCRIPT_BY_ID, "SELECT guid, delay, command, datalong, datalong2, dataint, x, y, z, o FROM waypoint_scripts WHERE id = ?", CONNECTION_SYNCH);
PrepareStatement(WORLD_SEL_CREATURE_BY_ID, "SELECT guid FROM creature WHERE id = ?", CONNECTION_SYNCH);
PrepareStatement(WORLD_SEL_GAMEOBJECT_NEAREST, "SELECT guid, id, position_x, position_y, position_z, map, (POW(position_x - ?, 2) + POW(position_y - ?, 2) + POW(position_z - ?, 2)) AS order_ FROM gameobject WHERE map = ? AND (POW(position_x - ?, 2) + POW(position_y - ?, 2) + POW(position_z - ?, 2)) <= ? ORDER BY order_", CONNECTION_SYNCH);