mirror of
https://github.com/Relintai/pandemonium_engine.git
synced 2024-12-27 22:27:15 +01:00
189 lines
9.7 KiB
C++
189 lines
9.7 KiB
C++
/*************************************************************************/
|
|
/* entity_enums.cpp */
|
|
/*************************************************************************/
|
|
/* This file is part of: */
|
|
/* PANDEMONIUM ENGINE */
|
|
/* https://github.com/Relintai/pandemonium_engine */
|
|
/*************************************************************************/
|
|
/* Copyright (c) 2022-present Péter Magyar. */
|
|
/* Copyright (c) 2014-2022 Godot Engine contributors (cf. AUTHORS.md). */
|
|
/* Copyright (c) 2007-2022 Juan Linietsky, Ariel Manzur. */
|
|
/* */
|
|
/* Permission is hereby granted, free of charge, to any person obtaining */
|
|
/* a copy of this software and associated documentation files (the */
|
|
/* "Software"), to deal in the Software without restriction, including */
|
|
/* without limitation the rights to use, copy, modify, merge, publish, */
|
|
/* distribute, sublicense, and/or sell copies of the Software, and to */
|
|
/* permit persons to whom the Software is furnished to do so, subject to */
|
|
/* the following conditions: */
|
|
/* */
|
|
/* The above copyright notice and this permission notice shall be */
|
|
/* included in all copies or substantial portions of the Software. */
|
|
/* */
|
|
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
|
|
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
|
|
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/
|
|
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
|
|
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
|
|
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
|
|
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
|
/*************************************************************************/
|
|
|
|
#include "entity_enums.h"
|
|
|
|
const String EntityEnums::BINDING_STRING_ENTITY_PLAYER_TYPES = "None,Player,Networked,AI,Display";
|
|
const String EntityEnums::BINDING_STRING_ENTITY_CONTOLLER = "None,Player,AI";
|
|
const String EntityEnums::BINDING_STRING_ENTITY_FLAGS = "Untargetable,Hidden,Interactable,Hostile";
|
|
const String EntityEnums::BINDING_STRING_ENTITY_STATE_TYPES = "None,Stun,Root,Frozen,Silenced,Disoriented,Feared,Burning,Cold,Cursed,Pacified";
|
|
const String EntityEnums::BINDING_STRING_COMMON_CHARCATER_SKELETON_POINTS = "Root,Pelvis,Spine,Spine 1,Spine 2,Neck,Head,Torso,Right Hip,Left Hip,Back,Left Hand,Right Hand,Weapon Left,Weapon Right,Weapon Left Back,Weapon Right Back,Weapon Left Shield,Weapon Right Shield";
|
|
const String EntityEnums::BINDING_STRING_AI_STATES = "Off,Rest,Patrol,Follow Path,Regenerate,Attack,Pet Follow,Pet Stop,Pet Attack";
|
|
const String EntityEnums::BINDING_STRING_ENTITY_IMMUNITY_FLAGS = "Stun,Root,Freeze,Silence,Disorient,Fear,Burning,Cold,Pacify,Magic,Poison,Physical,Curse,Bleed,Melee,Holy,Shadow,Nature,Fire,Frost,Lightning,Chaos,Slow,Crit,AOE,Damage,Fall Damage,Projectile,Debuff,Attacks";
|
|
const String EntityEnums::BINDING_STRING_ENTITY_RELATION_TYPE = "Neutral,Friendly,Hostile";
|
|
const String EntityEnums::BINDING_STRING_ENTITY_INTERACTION_TYPE = "Normal,Speak,Loot,Use,Train,Vendor,None";
|
|
const String EntityEnums::BINDING_STRING_ENTITY_PLAYSTYLE_TYPE = "Melee,Spell,Hybrid,None";
|
|
const String EntityEnums::BINDING_STRING_ENTITY_WINDOWS = "Loot,Container,Vendor,Trainer";
|
|
const String EntityEnums::BINDING_STRING_ENTITY_ENTITY_RESOURCE_INDICES = "Health,Speed,Resources Begin";
|
|
|
|
void EntityEnums::_bind_methods() {
|
|
BIND_ENUM_CONSTANT(ENTITY_PLAYER_TYPE_NONE);
|
|
BIND_ENUM_CONSTANT(ENTITY_PLAYER_TYPE_PLAYER);
|
|
BIND_ENUM_CONSTANT(ENTITY_PLAYER_TYPE_NETWORKED);
|
|
BIND_ENUM_CONSTANT(ENTITY_PLAYER_TYPE_AI);
|
|
BIND_ENUM_CONSTANT(ENTITY_PLAYER_TYPE_DISPLAY);
|
|
|
|
BIND_ENUM_CONSTANT(ENITIY_CONTROLLER_NONE);
|
|
BIND_ENUM_CONSTANT(ENITIY_CONTROLLER_PLAYER);
|
|
BIND_ENUM_CONSTANT(ENITIY_CONTROLLER_AI);
|
|
|
|
BIND_ENUM_CONSTANT(ENITIY_FLAGS_NONE);
|
|
BIND_ENUM_CONSTANT(ENTITY_FLAGS_UNTARGETALBE);
|
|
BIND_ENUM_CONSTANT(ENTITY_FLAGS_HIDDEN);
|
|
BIND_ENUM_CONSTANT(ENTITY_FLAGS_INTERACTABLE);
|
|
BIND_ENUM_CONSTANT(ENTITY_FLAGS_HOSTILE);
|
|
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_FLAG_NONE);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_FLAG_STUN);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_FLAG_ROOT);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_FLAG_FROZEN);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_FLAG_SILENCED);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_FLAG_DISORIENTED);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_FLAG_FEARED);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_FLAG_BURNING);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_FLAG_COLD);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_FLAG_CURSED);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_FLAG_PACIFIED);
|
|
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_INDEX_NONE);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_INDEX_STUN);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_INDEX_ROOT);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_INDEX_FROZEN);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_INDEX_SILENCED);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_INDEX_DISORIENTED);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_INDEX_FEARED);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_INDEX_BURNING);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_INDEX_COLD);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_INDEX_CURSED);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_INDEX_PACIFIED);
|
|
BIND_ENUM_CONSTANT(ENTITY_STATE_TYPE_INDEX_MAX);
|
|
|
|
BIND_ENUM_CONSTANT(COMMON_SKELETON_POINT_ROOT);
|
|
BIND_ENUM_CONSTANT(COMMON_SKELETON_POINT_PELVIS);
|
|
BIND_ENUM_CONSTANT(COMMON_SKELETON_POINT_SPINE);
|
|
BIND_ENUM_CONSTANT(COMMON_SKELETON_POINT_SPINE_1);
|
|
BIND_ENUM_CONSTANT(COMMON_SKELETON_POINT_SPINE_2);
|
|
BIND_ENUM_CONSTANT(COMMON_SKELETON_POINT_NECK);
|
|
BIND_ENUM_CONSTANT(COMMON_SKELETON_POINT_HEAD);
|
|
BIND_ENUM_CONSTANT(COMMON_SKELETON_POINT_TORSO);
|
|
BIND_ENUM_CONSTANT(COMMON_SKELETON_POINT_RIGHT_HIP);
|
|
BIND_ENUM_CONSTANT(COMMON_SKELETON_POINT_LEFT_HIP);
|
|
BIND_ENUM_CONSTANT(COMMON_SKELETON_POINT_BACK);
|
|
BIND_ENUM_CONSTANT(COMMON_SKELETON_POINT_LEFT_HAND);
|
|
BIND_ENUM_CONSTANT(COMMON_SKELETON_POINT_RIGHT_HAND);
|
|
|
|
BIND_ENUM_CONSTANT(COMMON_SKELETON_POINT_WEAPON_LEFT);
|
|
BIND_ENUM_CONSTANT(COMMON_SKELETON_POINT_WEAPON_RIGHT);
|
|
BIND_ENUM_CONSTANT(COMMON_SKELETON_POINT_WEAPON_LEFT_BACK);
|
|
BIND_ENUM_CONSTANT(COMMON_SKELETON_POINT_WEAPON_RIGHT_BACK);
|
|
BIND_ENUM_CONSTANT(COMMON_SKELETON_POINT_WEAPON_LEFT_SHIELD);
|
|
BIND_ENUM_CONSTANT(COMMON_SKELETON_POINT_WEAPON_RIGHT_SHIELD);
|
|
|
|
BIND_CONSTANT(COMMON_SKELETON_POINTS_MAX);
|
|
|
|
BIND_ENUM_CONSTANT(AI_STATE_OFF);
|
|
BIND_ENUM_CONSTANT(AI_STATE_REST);
|
|
BIND_ENUM_CONSTANT(AI_STATE_PATROL);
|
|
BIND_ENUM_CONSTANT(AI_STATE_FOLLOW_PATH);
|
|
BIND_ENUM_CONSTANT(AI_STATE_REGENERATE);
|
|
BIND_ENUM_CONSTANT(AI_STATE_ATTACK);
|
|
BIND_ENUM_CONSTANT(AI_STATE_PET_FOLLOW);
|
|
BIND_ENUM_CONSTANT(AI_STATE_PET_STOP);
|
|
BIND_ENUM_CONSTANT(AI_STATE_PET_ATTACK);
|
|
BIND_CONSTANT(AI_STATE_MAX);
|
|
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_NONE);
|
|
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_STUN);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_ROOT);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_FREEZE);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_SILENCE);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_DISORIENT);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_FEAR);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_BURNING);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_COLD);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_PACIFY);
|
|
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_MAGIC);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_POISON);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_PHYSICAL);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_CURSE);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_BLEED);
|
|
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_MELEE);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_HOLY);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_SHADOW);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_NATURE);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_FIRE);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_FROST);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_LIGHTNING);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_CHAOS);
|
|
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_SLOW);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_CRIT);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_AOE);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_DAMAGE);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_FALL_DAMAGE);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_PROJECTILE);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_DEBUFF);
|
|
BIND_ENUM_CONSTANT(ENTITY_IMMUNITY_FLAG_ATTACKS);
|
|
|
|
BIND_ENUM_CONSTANT(ENTITY_RELATION_TYPE_NEUTRAL);
|
|
BIND_ENUM_CONSTANT(ENTITY_RELATION_TYPE_FRIENDLY);
|
|
BIND_ENUM_CONSTANT(ENTITY_RELATION_TYPE_HOSTILE);
|
|
|
|
BIND_ENUM_CONSTANT(ENITIY_INTERACTION_TYPE_NORMAL);
|
|
BIND_ENUM_CONSTANT(ENITIY_INTERACTION_TYPE_SPEAK);
|
|
BIND_ENUM_CONSTANT(ENITIY_INTERACTION_TYPE_LOOT);
|
|
BIND_ENUM_CONSTANT(ENITIY_INTERACTION_TYPE_TRAIN);
|
|
BIND_ENUM_CONSTANT(ENITIY_INTERACTION_TYPE_VENDOR);
|
|
BIND_ENUM_CONSTANT(ENITIY_INTERACTION_TYPE_USE);
|
|
BIND_ENUM_CONSTANT(ENITIY_INTERACTION_TYPE_NONE);
|
|
|
|
BIND_ENUM_CONSTANT(ENTITY_CLASS_PLAYSTYLE_TYPE_MELEE);
|
|
BIND_ENUM_CONSTANT(ENTITY_CLASS_PLAYSTYLE_TYPE_SPELL);
|
|
BIND_ENUM_CONSTANT(ENTITY_CLASS_PLAYSTYLE_TYPE_HYBRID);
|
|
BIND_ENUM_CONSTANT(ENTITY_CLASS_PLAYSTYLE_TYPE_NONE);
|
|
|
|
BIND_ENUM_CONSTANT(ENTITY_WINDOW_LOOT);
|
|
BIND_ENUM_CONSTANT(ENTITY_WINDOW_CONTAINER);
|
|
BIND_ENUM_CONSTANT(ENTITY_WINDOW_VENDOR);
|
|
BIND_ENUM_CONSTANT(ENTITY_WINDOW_TRAINER);
|
|
|
|
BIND_ENUM_CONSTANT(ENTITY_RESOURCE_INDEX_HEALTH);
|
|
BIND_ENUM_CONSTANT(ENTITY_RESOURCE_INDEX_SPEED);
|
|
BIND_ENUM_CONSTANT(ENTITY_RESOURCE_INDEX_RESOURCES_BEGIN);
|
|
|
|
BIND_CONSTANT(BASE_XP);
|
|
BIND_CONSTANT(ENTITY_INTERACT_RANGE);
|
|
BIND_CONSTANT(ENTITY_INTERACT_RANGE_SQUARED);
|
|
}
|