aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/game/Entities/Creature/Creature.cpp2
-rw-r--r--src/server/game/Entities/GameObject/GameObject.h76
-rw-r--r--src/server/game/Entities/Transport/Transport.cpp2
-rw-r--r--src/server/game/Garrison/Garrison.cpp4
-rw-r--r--src/server/game/Globals/ObjectMgr.cpp4
-rw-r--r--src/server/scripts/Commands/cs_misc.cpp2
-rw-r--r--src/server/scripts/Commands/cs_npc.cpp2
-rw-r--r--src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp4
8 files changed, 70 insertions, 26 deletions
diff --git a/src/server/game/Entities/Creature/Creature.cpp b/src/server/game/Entities/Creature/Creature.cpp
index 553b4f0babc..679238ecb17 100644
--- a/src/server/game/Entities/Creature/Creature.cpp
+++ b/src/server/game/Entities/Creature/Creature.cpp
@@ -1054,7 +1054,7 @@ void Creature::SaveToDB()
return;
}
- uint32 mapId = GetTransport() ? GetTransport()->GetGOInfo()->moTransport.mapID : GetMapId();
+ uint32 mapId = GetTransport() ? GetTransport()->GetGOInfo()->moTransport.SpawnMap : GetMapId();
SaveToDB(mapId, data->spawnMask, GetPhaseMask());
}
diff --git a/src/server/game/Entities/GameObject/GameObject.h b/src/server/game/Entities/GameObject/GameObject.h
index ada26800505..b52dbed8994 100644
--- a/src/server/game/Entities/GameObject/GameObject.h
+++ b/src/server/game/Entities/GameObject/GameObject.h
@@ -57,7 +57,7 @@ struct GameObjectTemplate
uint32 closeTextID; // 5 closeTextID, References: BroadcastText, NoValue = 0
uint32 IgnoredByPathing; // 6 Ignored By Pathing, enum { false, true, }; Default: false
uint32 conditionID1; // 7 conditionID1, References: PlayerCondition, NoValue = 0
- uint32 EnablePortalsonopen; // 8 Enable Portals on open, enum { false, true, }; Default: false
+ uint32 DoorisOpaque; // 8 Door is Opaque (Disable portal on close), enum { false, true, }; Default: true
uint32 GiganticAOI; // 9 Gigantic AOI, enum { false, true, }; Default: false
uint32 InfiniteAOI; // 10 Infinite AOI, enum { false, true, }; Default: false
} door;
@@ -112,9 +112,9 @@ struct GameObjectTemplate
uint32 usegrouplootrules; // 15 use group loot rules, enum { false, true, }; Default: false
uint32 floatingTooltip; // 16 floatingTooltip, enum { false, true, }; Default: false
uint32 conditionID1; // 17 conditionID1, References: PlayerCondition, NoValue = 0
- int32 xpLevel; // 18 xpLevel, int, Min value: -1, Max value: 100, Default value: 0
- uint32 xpDifficulty; // 19 xpDifficulty, enum { No Exp, Trivial, Very Small, Small, Substandard, Standard, High, Epic, Dungeon, Placeholder2, }; Default: No Exp
- uint32 lootLevel; // 20 lootLevel, int, Min value: 0, Max value: 100, Default value: 0
+ int32 xpLevel; // 18 xpLevel, int, Min value: -1, Max value: 123, Default value: 0
+ uint32 xpDifficulty; // 19 xpDifficulty, enum { No Exp, Trivial, Very Small, Small, Substandard, Standard, High, Epic, Dungeon, 5, }; Default: No Exp
+ uint32 lootLevel; // 20 lootLevel, int, Min value: 0, Max value: 123, Default value: 0
uint32 GroupXP; // 21 Group XP, enum { false, true, }; Default: false
uint32 DamageImmuneOK; // 22 Damage Immune OK, enum { false, true, }; Default: false
uint32 trivialSkillLow; // 23 trivialSkillLow, int, Min value: 0, Max value: 65535, Default value: 0
@@ -222,7 +222,7 @@ struct GameObjectTemplate
uint32 allowMounted; // 17 allowMounted, enum { false, true, }; Default: false
uint32 floatingTooltip; // 18 floatingTooltip, enum { false, true, }; Default: false
uint32 gossipID; // 19 gossipID, References: Gossip, NoValue = 0
- uint32 WorldStateSetsState; // 20 WorldStateSetsState, enum { false, true, }; Default: false
+ uint32 AllowMultiInteract; // 20 Allow Multi-Interact, enum { false, true, }; Default: false
uint32 floatOnWater; // 21 floatOnWater, enum { false, true, }; Default: false
uint32 conditionID1; // 22 conditionID1, References: PlayerCondition, NoValue = 0
uint32 playerCast; // 23 playerCast, enum { false, true, }; Default: false
@@ -242,7 +242,7 @@ struct GameObjectTemplate
uint32 autoClose; // 2 autoClose (ms), int, Min value: 0, Max value: 2147483647, Default value: 0
uint32 Reached1stfloor; // 3 Reached 1st floor, References: GameEvents, NoValue = 0
uint32 Reached2ndfloor; // 4 Reached 2nd floor, References: GameEvents, NoValue = 0
- int32 mapID; // 5 mapID, References: Map, NoValue = -1
+ int32 SpawnMap; // 5 Spawn Map, References: Map, NoValue = -1
uint32 Timeto3rdfloor; // 6 Time to 3rd floor (ms), int, Min value: 0, Max value: 2147483647, Default value: 0
uint32 Reached3rdfloor; // 7 Reached 3rd floor, References: GameEvents, NoValue = 0
uint32 Timeto4thfloor; // 8 Time to 4th floor (ms), int, Min value: 0, Max value: 2147483647, Default value: 0
@@ -296,7 +296,7 @@ struct GameObjectTemplate
uint32 startEventID; // 3 startEventID, References: GameEvents, NoValue = 0
uint32 stopEventID; // 4 stopEventID, References: GameEvents, NoValue = 0
uint32 transportPhysics; // 5 transportPhysics, References: TransportPhysics, NoValue = 0
- int32 mapID; // 6 mapID, References: Map, NoValue = -1
+ int32 SpawnMap; // 6 Spawn Map, References: Map, NoValue = -1
uint32 worldState1; // 7 worldState1, References: WorldState, NoValue = 0
uint32 allowstopping; // 8 allow stopping, enum { false, true, }; Default: false
uint32 InitStopped; // 9 Init Stopped, enum { false, true, }; Default: false
@@ -534,13 +534,13 @@ struct GameObjectTemplate
// 38 GAMEOBJECT_TYPE_GARRISON_BUILDING
struct
{
- int32 mapID; // 0 mapID, References: Map, NoValue = -1
+ int32 SpawnMap; // 0 Spawn Map, References: Map, NoValue = -1
} garrisonBuilding;
// 39 GAMEOBJECT_TYPE_GARRISON_PLOT
struct
{
uint32 PlotInstance; // 0 Plot Instance, References: GarrPlotInstance, NoValue = 0
- int32 mapID; // 1 mapID, References: Map, NoValue = -1
+ int32 SpawnMap; // 1 Spawn Map, References: Map, NoValue = -1
} garrisonPlot;
// 40 GAMEOBJECT_TYPE_CLIENT_CREATURE
struct
@@ -583,10 +583,10 @@ struct GameObjectTemplate
// 43 GAMEOBJECT_TYPE_PHASEABLE_MO
struct
{
- int32 mapID; // 0 mapID, References: Map, NoValue = -1
- int32 namedset; // 1 named set (Area Names), int, Min value: -2147483648, Max value: 2147483647, Default value: 0
- uint32 Primarydoodadset; // 2 Primary doodad set, int, Min value: -2147483648, Max value: 2147483647, Default value: 0
- uint32 Secondarydoodadset; // 3 Secondary doodad set, int, Min value: -2147483648, Max value: 2147483647, Default value: 0
+ int32 SpawnMap; // 0 Spawn Map, References: Map, NoValue = -1
+ uint32 AreaNameSet; // 1 Area Name Set (Index), int, Min value: -2147483648, Max value: 2147483647, Default value: 0
+ uint32 DoodadSetA; // 2 Doodad Set A, int, Min value: 0, Max value: 2147483647, Default value: 0
+ uint32 DoodadSetB; // 3 Doodad Set B, int, Min value: 0, Max value: 2147483647, Default value: 0
} phaseableMO;
// 44 GAMEOBJECT_TYPE_GARRISON_MONUMENT
struct
@@ -606,15 +606,59 @@ struct GameObjectTemplate
{
uint32 TrophyInstanceID; // 0 Trophy Instance ID, References: TrophyInstance, NoValue = 0
} garrisonMonumentPlaque;
- // 47 GAMEOBJECT_TYPE_DO_NOT_USE_3
+ // 47 GAMEOBJECT_TYPE_ARTIFACT_FORGE
struct
{
- } DONOTUSE3;
+ uint32 conditionID1; // 0 conditionID1, References: PlayerCondition, NoValue = 0
+ uint32 LargeAOI; // 1 Large AOI, enum { false, true, }; Default: false
+ uint32 IgnoreBoundingBox; // 2 Ignore Bounding Box, enum { false, true, }; Default: false
+ uint32 CameraMode; // 3 Camera Mode, References: CameraMode, NoValue = 0
+ uint32 FadeRegionRadius; // 4 Fade Region Radius, int, Min value: 0, Max value: 2147483647, Default value: 0
+ } artifactForge;
// 48 GAMEOBJECT_TYPE_UI_LINK
struct
{
- uint32 UILinkType; // 0 UI Link Type, Type id: 10
+ uint32 UILinkType; // 0 UI Link Type, enum { Adventure Journal, Obliterum Forge, }; Default: Adventure Journal
+ uint32 allowMounted; // 1 allowMounted, enum { false, true, }; Default: false
+ uint32 GiganticAOI; // 2 Gigantic AOI, enum { false, true, }; Default: false
+ uint32 spellFocusType; // 3 spellFocusType, References: SpellFocusObject, NoValue = 0
+ uint32 radius; // 4 radius, int, Min value: 0, Max value: 50, Default value: 10
} UILink;
+ // 49 GAMEOBJECT_TYPE_KEYSTONE_RECEPTACLE
+ struct
+ {
+ } KeystoneReceptacle;
+ // 50 GAMEOBJECT_TYPE_GATHERING_NODE
+ struct
+ {
+ uint32 open; // 0 open, References: Lock_, NoValue = 0
+ uint32 chestLoot; // 1 chestLoot, References: Treasure, NoValue = 0
+ uint32 level; // 2 level, int, Min value: 0, Max value: 65535, Default value: 0
+ uint32 notInCombat; // 3 notInCombat, enum { false, true, }; Default: false
+ uint32 trivialSkillLow; // 4 trivialSkillLow, int, Min value: 0, Max value: 65535, Default value: 0
+ uint32 trivialSkillHigh; // 5 trivialSkillHigh, int, Min value: 0, Max value: 65535, Default value: 0
+ uint32 ObjectDespawnDelay; // 6 Object Despawn Delay, int, Min value: 0, Max value: 600, Default value: 15
+ uint32 triggeredEvent; // 7 triggeredEvent, References: GameEvents, NoValue = 0
+ uint32 requireLOS; // 8 require LOS, enum { false, true, }; Default: false
+ uint32 openTextID; // 9 openTextID, References: BroadcastText, NoValue = 0
+ uint32 floatingTooltip; // 10 floatingTooltip, enum { false, true, }; Default: false
+ uint32 conditionID1; // 11 conditionID1, References: PlayerCondition, NoValue = 0
+ uint32 xpLevel; // 12 xpLevel, int, Min value: -1, Max value: 123, Default value: 0
+ uint32 xpDifficulty; // 13 xpDifficulty, enum { No Exp, Trivial, Very Small, Small, Substandard, Standard, High, Epic, Dungeon, 5, }; Default: No Exp
+ uint32 spell; // 14 spell, References: Spell, NoValue = 0
+ uint32 GiganticAOI; // 15 Gigantic AOI, enum { false, true, }; Default: false
+ uint32 LargeAOI; // 16 Large AOI, enum { false, true, }; Default: false
+ uint32 SpawnVignette; // 17 Spawn Vignette, References: vignette, NoValue = 0
+ uint32 MaxNumberofLoots; // 18 Max Number of Loots, int, Min value: 1, Max value: 40, Default value: 10
+ uint32 logloot; // 19 log loot, enum { false, true, }; Default: false
+ uint32 linkedTrap; // 20 linkedTrap, References: GameObjects, NoValue = 0
+ } gatheringNode;
+ // 51 GAMEOBJECT_TYPE_CHALLENGE_MODE_REWARD
+ struct
+ {
+ uint32 chestLoot; // 0 chestLoot, References: Treasure, NoValue = 0
+ uint32 WhenAvailable; // 1 When Available, References: GameObjectDisplayInfo, NoValue = 0
+ } challengeModeReward;
struct
{
uint32 data[MAX_GAMEOBJECT_DATA];
diff --git a/src/server/game/Entities/Transport/Transport.cpp b/src/server/game/Entities/Transport/Transport.cpp
index 58a9b68e0e5..ca89c6bc055 100644
--- a/src/server/game/Entities/Transport/Transport.cpp
+++ b/src/server/game/Entities/Transport/Transport.cpp
@@ -525,7 +525,7 @@ void Transport::UpdatePosition(float x, float y, float z, float o)
void Transport::LoadStaticPassengers()
{
- if (uint32 mapId = GetGOInfo()->moTransport.mapID)
+ if (uint32 mapId = GetGOInfo()->moTransport.SpawnMap)
{
CellObjectGuidsMap const& cells = sObjectMgr->GetMapObjectGuids(mapId, GetMap()->GetSpawnMode());
CellGuidSet::const_iterator guidEnd;
diff --git a/src/server/game/Garrison/Garrison.cpp b/src/server/game/Garrison/Garrison.cpp
index 2789978a7fe..468648da78c 100644
--- a/src/server/game/Garrison/Garrison.cpp
+++ b/src/server/game/Garrison/Garrison.cpp
@@ -745,9 +745,9 @@ GameObject* Garrison::Plot::CreateGameObject(Map* map, GarrisonFactionIndex fact
}
}
- if (building->GetGoType() == GAMEOBJECT_TYPE_GARRISON_BUILDING && building->GetGOInfo()->garrisonBuilding.mapID)
+ if (building->GetGoType() == GAMEOBJECT_TYPE_GARRISON_BUILDING && building->GetGOInfo()->garrisonBuilding.SpawnMap)
{
- for (CellObjectGuidsMap::value_type const& cellGuids : sObjectMgr->GetMapObjectGuids(building->GetGOInfo()->garrisonBuilding.mapID, map->GetSpawnMode()))
+ for (CellObjectGuidsMap::value_type const& cellGuids : sObjectMgr->GetMapObjectGuids(building->GetGOInfo()->garrisonBuilding.SpawnMap, map->GetSpawnMode()))
{
for (ObjectGuid::LowType spawnId : cellGuids.second.creatures)
if (Creature* spawn = BuildingSpawnHelper<Creature, &Creature::SetHomePosition>(building, spawnId, map))
diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp
index 5f7039b4b10..60035178292 100644
--- a/src/server/game/Globals/ObjectMgr.cpp
+++ b/src/server/game/Globals/ObjectMgr.cpp
@@ -6729,7 +6729,7 @@ void ObjectMgr::LoadGameObjectTemplate()
TC_LOG_ERROR("sql.sql", "GameObject (Entry: %u GoType: %u) have data0=%u but TaxiPath (Id: %u) not exist.",
entry, got.type, got.moTransport.taxiPathID, got.moTransport.taxiPathID);
}
- if (uint32 transportMap = got.moTransport.mapID)
+ if (uint32 transportMap = got.moTransport.SpawnMap)
_transportMaps.insert(transportMap);
break;
}
@@ -6772,7 +6772,7 @@ void ObjectMgr::LoadGameObjectTemplate()
}
break;
case GAMEOBJECT_TYPE_GARRISON_BUILDING:
- if (uint32 transportMap = got.garrisonBuilding.mapID)
+ if (uint32 transportMap = got.garrisonBuilding.SpawnMap)
_transportMaps.insert(transportMap);
break;
}
diff --git a/src/server/scripts/Commands/cs_misc.cpp b/src/server/scripts/Commands/cs_misc.cpp
index 236197b84c9..dd36281cb72 100644
--- a/src/server/scripts/Commands/cs_misc.cpp
+++ b/src/server/scripts/Commands/cs_misc.cpp
@@ -242,7 +242,7 @@ public:
object->GetPositionX(), object->GetPositionY(), object->GetPositionZ(), object->GetOrientation());
if (Transport* transport = object->GetTransport())
handler->PSendSysMessage(LANG_TRANSPORT_POSITION,
- transport->GetGOInfo()->moTransport.mapID, object->GetTransOffsetX(), object->GetTransOffsetY(), object->GetTransOffsetZ(), object->GetTransOffsetO(),
+ transport->GetGOInfo()->moTransport.SpawnMap, object->GetTransOffsetX(), object->GetTransOffsetY(), object->GetTransOffsetZ(), object->GetTransOffsetO(),
transport->GetEntry(), transport->GetName().c_str());
handler->PSendSysMessage(LANG_GRID_POSITION,
cell.GridX(), cell.GridY(), cell.CellX(), cell.CellY(), object->GetInstanceId(),
diff --git a/src/server/scripts/Commands/cs_npc.cpp b/src/server/scripts/Commands/cs_npc.cpp
index d9d54353246..5fd9ff8028a 100644
--- a/src/server/scripts/Commands/cs_npc.cpp
+++ b/src/server/scripts/Commands/cs_npc.cpp
@@ -268,7 +268,7 @@ public:
Creature* creature = trans->CreateNPCPassenger(guid, &data);
- creature->SaveToDB(trans->GetGOInfo()->moTransport.mapID, 1 << map->GetSpawnMode(), chr->GetPhaseMask());
+ creature->SaveToDB(trans->GetGOInfo()->moTransport.SpawnMap, 1 << map->GetSpawnMode(), chr->GetPhaseMask());
sObjectMgr->AddCreatureToGrid(guid, &data);
return true;
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp b/src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp
index 1d6b1ffb61e..037b6a2988e 100644
--- a/src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp
+++ b/src/server/scripts/Northrend/IcecrownCitadel/instance_icecrown_citadel.cpp
@@ -384,8 +384,8 @@ class instance_icecrown_citadel : public InstanceMapScript
break;
case NPC_ZAFOD_BOOMBOX:
if (GameObjectTemplate const* go = sObjectMgr->GetGameObjectTemplate(GO_THE_SKYBREAKER_A))
- if ((TeamInInstance == ALLIANCE && data->mapid == go->moTransport.mapID) ||
- (TeamInInstance == HORDE && data->mapid != go->moTransport.mapID))
+ if ((TeamInInstance == ALLIANCE && data->mapid == go->moTransport.SpawnMap) ||
+ (TeamInInstance == HORDE && data->mapid != go->moTransport.SpawnMap))
return entry;
return 0;
case NPC_IGB_MURADIN_BRONZEBEARD: