1 /***************************************************************************** 2 * Copyright (c) 2014-2020 OpenRCT2 developers 3 * 4 * For a complete list of all authors, please refer to contributors.md 5 * Interested in contributing? Visit https://github.com/OpenRCT2/OpenRCT2 6 * 7 * OpenRCT2 is licensed under the GNU General Public License version 3. 8 *****************************************************************************/ 9 10 #pragma once 11 12 #include "../peep/Staff.h" 13 #include "GameAction.h" 14 15 class StaffSetCostumeAction final : public GameActionBase<GameCommand::SetStaffCostume> 16 { 17 private: 18 uint16_t _spriteIndex{ SPRITE_INDEX_NULL }; 19 EntertainerCostume _costume = EntertainerCostume::Count; 20 21 public: 22 StaffSetCostumeAction() = default; 23 StaffSetCostumeAction(uint16_t spriteIndex, EntertainerCostume costume); 24 25 uint16_t GetActionFlags() const override; 26 27 void Serialise(DataSerialiser& stream) override; 28 GameActions::Result::Ptr Query() const override; 29 GameActions::Result::Ptr Execute() const override; 30 }; 31