2023-02-14 02:55:44 +00:00
|
|
|
#ifndef __SPLITSTRIPMESSAGE__H__
|
|
|
|
#define __SPLITSTRIPMESSAGE__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"
|
2023-02-16 17:30:33 +00:00
|
|
|
#include "StripUiPosition.h"
|
2023-02-14 02:55:44 +00:00
|
|
|
|
|
|
|
class AMFArrayValue;
|
|
|
|
|
2023-02-16 17:30:33 +00:00
|
|
|
/**
|
|
|
|
* @brief Sent when a player takes an Action from Strip A and does not add it to an existing strip
|
|
|
|
*
|
|
|
|
*/
|
2023-02-14 02:55:44 +00:00
|
|
|
class SplitStripMessage : public BehaviorMessageBase {
|
|
|
|
public:
|
|
|
|
SplitStripMessage(AMFArrayValue* arguments);
|
2024-01-03 13:34:38 +00:00
|
|
|
ActionContext GetSourceActionContext() const { return sourceActionContext; };
|
|
|
|
ActionContext GetDestinationActionContext() const { return destinationActionContext; };
|
|
|
|
int32_t GetSrcActionIndex() const { return srcActionIndex; };
|
|
|
|
StripUiPosition GetPosition() const { return destinationPosition; };
|
|
|
|
const std::vector<Action>& GetTransferredActions() const { return transferredActions; };
|
|
|
|
void SetTransferredActions(std::vector<Action>::const_iterator begin, std::vector<Action>::const_iterator end) { transferredActions.assign(begin, end); };
|
2023-02-14 02:55:44 +00:00
|
|
|
private:
|
2023-02-16 17:30:33 +00:00
|
|
|
ActionContext sourceActionContext;
|
|
|
|
ActionContext destinationActionContext;
|
2024-01-03 13:34:38 +00:00
|
|
|
int32_t srcActionIndex;
|
2023-02-16 17:30:33 +00:00
|
|
|
StripUiPosition destinationPosition;
|
2024-01-03 13:34:38 +00:00
|
|
|
|
|
|
|
std::vector<Action> transferredActions;
|
2023-02-14 02:55:44 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif //!__SPLITSTRIPMESSAGE__H__
|