#include <s_entity.h>
Public Member Functions | |
bool | luaentity_Add (u16 id, const char *name) |
void | luaentity_Activate (u16 id, const std::string &staticdata, u32 dtime_s) |
void | luaentity_Deactivate (u16 id, bool removal) |
void | luaentity_Remove (u16 id) |
std::string | luaentity_GetStaticdata (u16 id) |
void | luaentity_GetProperties (u16 id, ServerActiveObject *self, ObjectProperties *prop, const std::string &entity_name) |
void | luaentity_Step (u16 id, float dtime, const collisionMoveResult *moveresult) |
bool | luaentity_Punch (u16 id, ServerActiveObject *puncher, float time_from_last_punch, const ToolCapabilities *toolcap, v3f dir, s32 damage) |
bool | luaentity_on_death (u16 id, ServerActiveObject *killer) |
void | luaentity_Rightclick (u16 id, ServerActiveObject *clicker) |
void | luaentity_on_attach_child (u16 id, ServerActiveObject *child) |
void | luaentity_on_detach_child (u16 id, ServerActiveObject *child) |
void | luaentity_on_detach (u16 id, ServerActiveObject *parent) |
Public Member Functions inherited from ScriptApiBase | |
ScriptApiBase (ScriptingType type) | |
ScriptApiBase () | |
virtual | ~ScriptApiBase () |
DISABLE_CLASS_COPY (ScriptApiBase) | |
void | loadMod (const std::string &script_path, const std::string &mod_name) |
void | loadScript (const std::string &script_path) |
void | runCallbacksRaw (int nargs, RunCallbacksMode mode, const char *fxn) |
void | addObjectReference (ServerActiveObject *cobj) |
void | removeObjectReference (ServerActiveObject *cobj) |
ScriptingType | getType () |
IGameDef * | getGameDef () |
Server * | getServer () |
const std::string & | getOrigin () |
void | setOriginDirect (const char *origin) |
void | setOriginFromTableRaw (int index, const char *fxn) |
void | clientOpenLibs (lua_State *L) |
void | checkSetByBuiltin () |
Private Member Functions | |
bool | luaentity_run_simple_callback (u16 id, ServerActiveObject *sao, const char *field) |
void | logDeprecationForExistingProperties (lua_State *L, int index, const std::string &name) |
Private Attributes | |
std::unordered_set< std::string > | deprecation_warned_init_properties |
Stores names of entities that already caused a deprecation warning due to properties being outside of initial_properties. | |
Additional Inherited Members | |
Static Public Member Functions inherited from ScriptApiBase | |
static std::string | getCurrentModNameInsecure (lua_State *L) |
Returns the currently running mod, only during init time. | |
Protected Member Functions inherited from ScriptApiBase | |
lua_State * | getStack () |
void | realityCheck () |
void | scriptError (int result, const char *fxn) |
void | stackDump (std::ostream &o) |
void | setGameDef (IGameDef *gamedef) |
Environment * | getEnv () |
void | setEnv (Environment *env) |
EmergeThread * | getEmergeThread () |
void | setEmergeThread (EmergeThread *emerge) |
void | objectrefGetOrCreate (lua_State *L, ServerActiveObject *cobj) |
void | pushPlayerHPChangeReason (lua_State *L, const PlayerHPChangeReason &reason) |
Protected Member Functions inherited from LuaHelper | |
template<> | |
bool | readParam (lua_State *L, int index) |
template<> | |
s16 | readParam (lua_State *L, int index) |
template<> | |
int | readParam (lua_State *L, int index) |
template<> | |
float | readParam (lua_State *L, int index) |
template<> | |
v2s16 | readParam (lua_State *L, int index) |
template<> | |
v2f | readParam (lua_State *L, int index) |
template<> | |
v3f | readParam (lua_State *L, int index) |
template<> | |
std::string_view | readParam (lua_State *L, int index) |
template<> | |
std::string | readParam (lua_State *L, int index) |
template<> | |
std::string_view | readParam (lua_State *L, int index) |
Read a string from Lua state L at index without copying it. | |
Static Protected Member Functions inherited from LuaHelper | |
template<typename T > | |
static T | readParam (lua_State *L, int index) |
Read a value using a template type T from Lua state L at index. | |
template<typename T > | |
static T | readParam (lua_State *L, int index, const T &default_value) |
Read a value using a template type T from Lua state L at index. | |
Protected Attributes inherited from ScriptApiBase | |
std::recursive_mutex | m_luastackmutex |
std::string | m_last_run_mod |
int | m_lock_recursion_count {} |
std::thread::id | m_owning_thread |
|
private |
References deprecation_warned_init_properties, log_deprecated(), and object_property_keys.
Referenced by luaentity_GetProperties().
void ScriptApiEntity::luaentity_Activate | ( | u16 | id, |
const std::string & | staticdata, | ||
u32 | dtime_s ) |
References luaentity_get(), PCALL_RES, PUSH_ERROR_HANDLER, SCRIPTAPI_PRECHECKHEADER, and setOriginFromTable.
bool ScriptApiEntity::luaentity_Add | ( | u16 | id, |
const char * | name ) |
References errorstream, push_objectRef(), and SCRIPTAPI_PRECHECKHEADER.
void ScriptApiEntity::luaentity_Deactivate | ( | u16 | id, |
bool | removal ) |
References luaentity_get(), PCALL_RES, PUSH_ERROR_HANDLER, SCRIPTAPI_PRECHECKHEADER, and setOriginFromTable.
Referenced by LuaEntitySAO::dispatchScriptDeactivate().
void ScriptApiEntity::luaentity_GetProperties | ( | u16 | id, |
ServerActiveObject * | self, | ||
ObjectProperties * | prop, | ||
const std::string & | entity_name ) |
References ScriptApiBase::getServer(), ObjectProperties::hp_max, logDeprecationForExistingProperties(), luaentity_get(), read_object_properties(), and SCRIPTAPI_PRECHECKHEADER.
std::string ScriptApiEntity::luaentity_GetStaticdata | ( | u16 | id | ) |
References luaentity_get(), PCALL_RES, PUSH_ERROR_HANDLER, SCRIPTAPI_PRECHECKHEADER, and setOriginFromTable.
void ScriptApiEntity::luaentity_on_attach_child | ( | u16 | id, |
ServerActiveObject * | child ) |
References luaentity_run_simple_callback().
Referenced by UnitSAO::onAttach().
bool ScriptApiEntity::luaentity_on_death | ( | u16 | id, |
ServerActiveObject * | killer ) |
References luaentity_run_simple_callback().
Referenced by LuaEntitySAO::setHP().
void ScriptApiEntity::luaentity_on_detach | ( | u16 | id, |
ServerActiveObject * | parent ) |
References luaentity_run_simple_callback().
Referenced by UnitSAO::onDetach().
void ScriptApiEntity::luaentity_on_detach_child | ( | u16 | id, |
ServerActiveObject * | child ) |
References luaentity_run_simple_callback().
Referenced by UnitSAO::onDetach().
bool ScriptApiEntity::luaentity_Punch | ( | u16 | id, |
ServerActiveObject * | puncher, | ||
float | time_from_last_punch, | ||
const ToolCapabilities * | toolcap, | ||
v3f | dir, | ||
s32 | damage ) |
References dir(), luaentity_get(), ScriptApiBase::objectrefGetOrCreate(), PCALL_RES, PUSH_ERROR_HANDLER, push_tool_capabilities(), push_v3f(), LuaHelper::readParam(), SCRIPTAPI_PRECHECKHEADER, and setOriginFromTable.
Referenced by LuaEntitySAO::punch().
void ScriptApiEntity::luaentity_Remove | ( | u16 | id | ) |
References SCRIPTAPI_PRECHECKHEADER.
Referenced by LuaEntitySAO::~LuaEntitySAO().
void ScriptApiEntity::luaentity_Rightclick | ( | u16 | id, |
ServerActiveObject * | clicker ) |
References luaentity_run_simple_callback().
Referenced by LuaEntitySAO::rightClick().
|
private |
References luaentity_get(), ScriptApiBase::objectrefGetOrCreate(), PCALL_RES, PUSH_ERROR_HANDLER, LuaHelper::readParam(), SCRIPTAPI_PRECHECKHEADER, and setOriginFromTable.
Referenced by luaentity_on_attach_child(), luaentity_on_death(), luaentity_on_detach(), luaentity_on_detach_child(), and luaentity_Rightclick().
void ScriptApiEntity::luaentity_Step | ( | u16 | id, |
float | dtime, | ||
const collisionMoveResult * | moveresult ) |
References luaentity_get(), PCALL_RES, push_collision_move_result(), PUSH_ERROR_HANDLER, SCRIPTAPI_PRECHECKHEADER, and setOriginFromTable.
Referenced by LuaEntitySAO::step().
|
private |
Stores names of entities that already caused a deprecation warning due to properties being outside of initial_properties.
If an entity's name is in here, it won't cause any more of those deprecation warnings.
Referenced by logDeprecationForExistingProperties().