2017-04-05 09:52:27 +00:00
|
|
|
#ifndef OPENMW_BASEACTOR_HPP
|
|
|
|
#define OPENMW_BASEACTOR_HPP
|
|
|
|
|
|
|
|
#include <components/esm/loadcell.hpp>
|
2017-04-16 13:42:07 +00:00
|
|
|
|
2017-04-08 05:59:21 +00:00
|
|
|
#include <components/openmw-mp/Base/BaseStructs.hpp>
|
2017-08-27 16:15:56 +00:00
|
|
|
#include <components/openmw-mp/Base/BaseNetCreature.hpp>
|
2017-04-16 13:42:07 +00:00
|
|
|
|
2017-04-09 07:50:35 +00:00
|
|
|
#include <RakNetTypes.h>
|
2017-08-27 16:15:56 +00:00
|
|
|
#include <memory>
|
2017-04-05 09:52:27 +00:00
|
|
|
|
|
|
|
namespace mwmp
|
|
|
|
{
|
2017-08-27 16:15:56 +00:00
|
|
|
class BaseActor : public BaseNetCreature
|
2017-04-05 09:52:27 +00:00
|
|
|
{
|
|
|
|
public:
|
|
|
|
|
|
|
|
BaseActor()
|
|
|
|
{
|
2017-05-01 17:18:22 +00:00
|
|
|
hasPositionData = false;
|
|
|
|
hasStatsDynamicData = false;
|
2017-08-27 16:15:56 +00:00
|
|
|
refNumIndex = 0;
|
|
|
|
mpNum = 0;
|
|
|
|
drawState = 0;
|
|
|
|
isFlying = false;
|
2017-04-05 09:52:27 +00:00
|
|
|
}
|
|
|
|
|
2017-04-09 13:32:44 +00:00
|
|
|
std::string refId;
|
2017-12-10 01:07:40 +00:00
|
|
|
unsigned refNumIndex;
|
|
|
|
unsigned mpNum;
|
2017-04-09 13:32:44 +00:00
|
|
|
|
2017-04-16 15:43:13 +00:00
|
|
|
std::string sound;
|
|
|
|
|
2017-04-08 05:59:21 +00:00
|
|
|
Animation animation;
|
2017-05-01 16:44:23 +00:00
|
|
|
|
|
|
|
bool hasPositionData;
|
|
|
|
bool hasStatsDynamicData;
|
2017-04-05 09:52:27 +00:00
|
|
|
};
|
2017-04-09 07:50:35 +00:00
|
|
|
|
2017-04-09 13:32:44 +00:00
|
|
|
class BaseActorList
|
2017-04-09 07:50:35 +00:00
|
|
|
{
|
|
|
|
public:
|
|
|
|
|
2017-04-09 13:32:44 +00:00
|
|
|
BaseActorList()
|
2017-04-09 07:50:35 +00:00
|
|
|
{
|
2017-08-27 16:15:56 +00:00
|
|
|
cell.blank();
|
2017-04-09 07:50:35 +00:00
|
|
|
}
|
|
|
|
|
2018-01-05 01:40:11 +00:00
|
|
|
enum class Action: uint8_t
|
2017-04-09 13:32:44 +00:00
|
|
|
{
|
2018-01-05 01:40:11 +00:00
|
|
|
Set = 0,
|
|
|
|
Add,
|
2018-01-19 11:32:51 +00:00
|
|
|
Remove,
|
2018-01-05 01:40:11 +00:00
|
|
|
Request
|
2017-04-09 13:32:44 +00:00
|
|
|
};
|
|
|
|
|
2017-04-09 07:50:35 +00:00
|
|
|
RakNet::RakNetGUID guid;
|
|
|
|
|
2017-08-27 16:15:56 +00:00
|
|
|
std::vector<std::shared_ptr<BaseActor>> baseActors;
|
2017-04-16 13:42:07 +00:00
|
|
|
|
2017-04-09 07:50:35 +00:00
|
|
|
ESM::Cell cell;
|
2017-04-09 13:32:44 +00:00
|
|
|
|
2018-01-05 01:40:11 +00:00
|
|
|
Action action;
|
2017-05-16 11:20:40 +00:00
|
|
|
|
|
|
|
bool isValid;
|
2017-04-09 07:50:35 +00:00
|
|
|
};
|
2017-04-05 09:52:27 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
#endif //OPENMW_BASEACTOR_HPP
|