mirror of
https://github.com/DarkflameUniverse/DarkflameServer
synced 2024-08-30 18:43:58 +00:00
b261e63233
* chore: Change entity and component logic to use bitstream references * merge
43 lines
853 B
C++
43 lines
853 B
C++
#pragma once
|
|
#include "Behavior.h"
|
|
|
|
class MovementSwitchBehavior final : public Behavior
|
|
{
|
|
private:
|
|
/*
|
|
* Members
|
|
*/
|
|
Behavior* m_airAction;
|
|
|
|
Behavior* m_doubleJumpAction;
|
|
|
|
Behavior* m_fallingAction;
|
|
|
|
Behavior* m_groundAction;
|
|
|
|
Behavior* m_jetpackAction;
|
|
|
|
Behavior* m_jumpAction;
|
|
|
|
Behavior* m_movingAction;
|
|
|
|
/**
|
|
* @brief Loads a movement type from the database into a behavior
|
|
*
|
|
* @param movementType The movement type to lookup in the database
|
|
* @param behaviorToLoad The Behavior where the result will be stored
|
|
*/
|
|
Behavior* LoadMovementType(std::string movementType);
|
|
|
|
public:
|
|
/*
|
|
* Inherited
|
|
*/
|
|
explicit MovementSwitchBehavior(const uint32_t behavior_id) : Behavior(behavior_id) {
|
|
}
|
|
|
|
void Handle(BehaviorContext* context, RakNet::BitStream& bitStream, BehaviorBranchContext branch) override;
|
|
|
|
void Load() override;
|
|
};
|