2023-02-14 02:55:44 +00:00
|
|
|
#ifndef __MERGESTRIPSMESSAGE__H__
|
|
|
|
#define __MERGESTRIPSMESSAGE__H__
|
|
|
|
|
2024-01-03 13:34:38 +00:00
|
|
|
#include "Action.h"
|
2023-02-16 17:30:33 +00:00
|
|
|
#include "ActionContext.h"
|
2023-02-14 02:55:44 +00:00
|
|
|
#include "BehaviorMessageBase.h"
|
|
|
|
|
|
|
|
class AMFArrayValue;
|
|
|
|
|
2023-02-16 17:30:33 +00:00
|
|
|
/**
|
|
|
|
* @brief Sent when a player adds the first Action of Strip A to a Strip B
|
|
|
|
*
|
|
|
|
*/
|
2023-02-14 02:55:44 +00:00
|
|
|
class MergeStripsMessage : public BehaviorMessageBase {
|
|
|
|
public:
|
2024-02-18 06:38:26 +00:00
|
|
|
MergeStripsMessage(const AMFArrayValue* arguments);
|
|
|
|
|
|
|
|
[[nodiscard]] int32_t GetDstActionIndex() const noexcept { return m_DstActionIndex; }
|
|
|
|
|
|
|
|
[[nodiscard]] const ActionContext& GetSourceActionContext() const noexcept { return m_SourceActionContext; }
|
|
|
|
|
|
|
|
[[nodiscard]] const ActionContext& GetDestinationActionContext() const noexcept { return m_DestinationActionContext; }
|
|
|
|
|
|
|
|
[[nodiscard]] const std::vector<Action>& GetMigratedActions() const noexcept { return m_MigratedActions; }
|
|
|
|
|
|
|
|
void SetMigratedActions(std::vector<Action>::const_iterator start, std::vector<Action>::const_iterator end) { m_MigratedActions.assign(start, end); };
|
|
|
|
|
2023-02-14 02:55:44 +00:00
|
|
|
private:
|
2024-02-18 06:38:26 +00:00
|
|
|
int32_t m_DstActionIndex;
|
|
|
|
std::vector<Action> m_MigratedActions;
|
|
|
|
ActionContext m_SourceActionContext;
|
|
|
|
ActionContext m_DestinationActionContext;
|
2023-02-14 02:55:44 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif //!__MERGESTRIPSMESSAGE__H__
|