mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2024-09-19 09:01:31 +00:00
4bc4624bc9
* add movement ai skeleton Zone loading code is tested to load and read the correct values using logs. other ldf data is unaffected as I walked around crux and dragons/apes can still spawn and be killed. * format
60 lines
1.7 KiB
C++
60 lines
1.7 KiB
C++
|
|
#ifndef __EWAYPOINTCOMMANDTYPES__H__
|
|
#define __EWAYPOINTCOMMANDTYPES__H__
|
|
|
|
#include <cstdint>
|
|
|
|
enum class eWaypointCommandType : uint32_t {
|
|
INVALID,
|
|
BOUNCE,
|
|
STOP,
|
|
GROUP_EMOTE,
|
|
SET_VARIABLE,
|
|
CAST_SKILL,
|
|
EQUIP_INVENTORY,
|
|
UNEQUIP_INVENTORY,
|
|
DELAY,
|
|
EMOTE,
|
|
TELEPORT,
|
|
PATH_SPEED,
|
|
REMOVE_NPC,
|
|
CHANGE_WAYPOINT,
|
|
DELETE_SELF,
|
|
KILL_SELF,
|
|
SPAWN_OBJECT,
|
|
PLAY_SOUND,
|
|
};
|
|
|
|
class WaypointCommandType {
|
|
public:
|
|
static eWaypointCommandType StringToWaypointCommandType(std::string commandString) {
|
|
const std::map<std::string, eWaypointCommandType> WaypointCommandTypeMap = {
|
|
{"bounce", eWaypointCommandType::BOUNCE},
|
|
{"stop", eWaypointCommandType::STOP},
|
|
{"groupemote", eWaypointCommandType::GROUP_EMOTE},
|
|
{"setvar", eWaypointCommandType::SET_VARIABLE},
|
|
{"castskill", eWaypointCommandType::CAST_SKILL},
|
|
{"eqInvent", eWaypointCommandType::EQUIP_INVENTORY},
|
|
{"unInvent", eWaypointCommandType::UNEQUIP_INVENTORY},
|
|
{"delay", eWaypointCommandType::DELAY},
|
|
{"femote", eWaypointCommandType::EMOTE},
|
|
{"emote", eWaypointCommandType::EMOTE},
|
|
{"teleport", eWaypointCommandType::TELEPORT},
|
|
{"pathspeed", eWaypointCommandType::PATH_SPEED},
|
|
{"removeNPC", eWaypointCommandType::REMOVE_NPC},
|
|
{"changeWP", eWaypointCommandType::CHANGE_WAYPOINT},
|
|
{"DeleteSelf", eWaypointCommandType::DELETE_SELF},
|
|
{"killself", eWaypointCommandType::KILL_SELF},
|
|
{"removeself", eWaypointCommandType::DELETE_SELF},
|
|
{"spawnOBJ", eWaypointCommandType::SPAWN_OBJECT},
|
|
{"playSound", eWaypointCommandType::PLAY_SOUND},
|
|
};
|
|
|
|
auto intermed = WaypointCommandTypeMap.find(commandString);
|
|
return (intermed != WaypointCommandTypeMap.end()) ? intermed->second : eWaypointCommandType::INVALID;
|
|
};
|
|
};
|
|
|
|
|
|
#endif //!__EWAYPOINTCOMMANDTYPES__H__
|