diff --git a/Source/Game/Entities/GameObject/GameObject.cs b/Source/Game/Entities/GameObject/GameObject.cs index 503583938..f32f8486b 100644 --- a/Source/Game/Entities/GameObject/GameObject.cs +++ b/Source/Game/Entities/GameObject/GameObject.cs @@ -1800,6 +1800,8 @@ namespace Game.Entities ChairListSlots[nearest_slot] = player.GetGUID(); //this slot in now used by player player.TeleportTo(GetMapId(), x_lowest, y_lowest, GetPositionZ(), GetOrientation(), (TeleportToOptions.NotLeaveTransport | TeleportToOptions.NotLeaveCombat | TeleportToOptions.NotUnSummonPet)); player.SetStandState(UnitStandStateType.SitLowChair + (byte)info.Chair.chairheight); + if (info.Chair.triggeredEvent != 0) + GameEvents.Trigger(info.Chair.triggeredEvent, player, this); return; } } @@ -2217,6 +2219,9 @@ namespace Game.Entities bg.EventPlayerClickedOnFlag(player, this); break; } + + if (info.FlagDrop.eventID != 0) + GameEvents.Trigger(info.FlagDrop.eventID, player, this); } //this cause to call return, all flags must be deleted here!! spellId = 0; @@ -2591,6 +2596,9 @@ namespace Game.Entities player.SendPacket(packet); } + if (change < 0 && GetGoInfo().DestructibleBuilding.DamageEvent != 0) + GameEvents.Trigger(GetGoInfo().DestructibleBuilding.DamageEvent, attackerOrHealer, this); + GameObjectDestructibleState newState = GetDestructibleState(); if (m_goValue.Building.Health == 0) diff --git a/Source/Game/Entities/GameObject/GameObjectData.cs b/Source/Game/Entities/GameObject/GameObjectData.cs index 6dcdd5896..ba6174f01 100644 --- a/Source/Game/Entities/GameObject/GameObjectData.cs +++ b/Source/Game/Entities/GameObject/GameObjectData.cs @@ -481,6 +481,8 @@ namespace Game.Entities return Goober.eventID; case GameObjectTypes.Chest: return Chest.triggeredEvent; + case GameObjectTypes.Chair: + return Chest.triggeredEvent; case GameObjectTypes.Camera: return Camera.eventID; case GameObjectTypes.GatheringNode: