diff options
-rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 10 | ||||
-rw-r--r-- | src/server/game/Entities/Player/Player.h | 1 |
2 files changed, 11 insertions, 0 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index e38e45e80a8..9103ac5561b 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -6054,6 +6054,16 @@ bool Player::IsActionButtonDataValid(uint8 button, uint32 action, uint8 type) co return false; } break; + case ACTION_BUTTON_COMPANION: + { + if (!GetSession()->GetBattlePetMgr()->GetPet(ObjectGuid::Create<HighGuid::BattlePet>(action))) + { + TC_LOG_ERROR("entities.player", "Player::IsActionButtonDataValid: Companion action %u not added into button %u for player %s (%s): companion does not exist", + action, button, GetName().c_str(), GetGUID().ToString().c_str()); + return false; + } + break; + } case ACTION_BUTTON_MOUNT: { auto mount = sDB2Manager.GetMountById(action); diff --git a/src/server/game/Entities/Player/Player.h b/src/server/game/Entities/Player/Player.h index d1b716bba3f..f3b6e250726 100644 --- a/src/server/game/Entities/Player/Player.h +++ b/src/server/game/Entities/Player/Player.h @@ -312,6 +312,7 @@ enum ActionButtonType ACTION_BUTTON_DROPDOWN = 0x30, ACTION_BUTTON_MACRO = 0x40, ACTION_BUTTON_CMACRO = ACTION_BUTTON_C | ACTION_BUTTON_MACRO, + ACTION_BUTTON_COMPANION = 0x50, ACTION_BUTTON_MOUNT = 0x60, ACTION_BUTTON_ITEM = 0x80 }; |