1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-16 21:49:55 +00:00
openmw-tes3mp/components/openmw-mp/Base/BaseActor.hpp
David Cernat 7c8dd7380f Merge pull request #421 from TES3MP/0.6.3 while resolving conflicts
Conflicts:
	apps/openmw-mp/Script/Functions/Actors.cpp
	apps/openmw-mp/Script/Functions/Actors.hpp
	apps/openmw-mp/Script/Functions/Cells.cpp
2018-05-12 18:01:01 +03:00

78 lines
1.4 KiB
C++

#ifndef OPENMW_BASEACTOR_HPP
#define OPENMW_BASEACTOR_HPP
#include <components/esm/loadcell.hpp>
#include <components/openmw-mp/Base/BaseStructs.hpp>
#include <components/openmw-mp/Base/BaseNetCreature.hpp>
#include <RakNetTypes.h>
#include <memory>
namespace mwmp
{
class BaseActor : public BaseNetCreature
{
public:
BaseActor()
{
hasPositionData = false;
hasStatsDynamicData = false;
refNumIndex = 0;
mpNum = 0;
drawState = 0;
isFlying = false;
}
enum class AIAction : uint8_t
{
Follow = 0
};
std::string refId;
unsigned refNumIndex;
unsigned mpNum;
std::string sound;
Animation animation;
bool hasAiTarget;
Target aiTarget;
AIAction aiAction;
bool hasPositionData;
bool hasStatsDynamicData;
};
class BaseActorList
{
public:
BaseActorList()
{
cell.blank();
}
enum class Action: uint8_t
{
Set = 0,
Add,
Remove,
Request
};
RakNet::RakNetGUID guid;
std::vector<std::shared_ptr<BaseActor>> baseActors;
ESM::Cell cell;
Action action;
bool isValid;
};
}
#endif //OPENMW_BASEACTOR_HPP