Luanti 5.11.0-dev
 
Loading...
Searching...
No Matches
ScriptApiEnv Class Reference

#include <s_env.h>

+ Inheritance diagram for ScriptApiEnv:
+ Collaboration diagram for ScriptApiEnv:

Public Member Functions

void environment_Step (float dtime)
 
void environment_OnGenerated (v3s16 minp, v3s16 maxp, u32 blockseed)
 
void player_event (ServerActiveObject *player, const std::string &type)
 
void on_emerge_area_completion (v3s16 blockpos, int action, ScriptCallbackState *state)
 
void check_for_falling (v3s16 p)
 
void on_liquid_transformed (const std::vector< std::pair< v3s16, MapNode > > &list)
 
void on_mapblocks_changed (const std::unordered_set< v3s16 > &set)
 
bool has_on_mapblocks_changed ()
 
void initializeEnvironment (ServerEnvironment *env)
 
void triggerABM (int id, v3s16 p, MapNode n, u32 active_object_count, u32 active_object_count_wider)
 
void triggerLBM (int id, MapBlock *block, const std::unordered_set< v3s16 > &positions, float dtime_s)
 
- 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 ()
 
IGameDefgetGameDef ()
 
ServergetServer ()
 
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

void readABMs ()
 
void readLBMs ()
 

Static Private Member Functions

static bool read_nodenames (lua_State *L, int idx, std::vector< std::string > &to)
 

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)
 
EnvironmentgetEnv ()
 
void setEnv (Environment *env)
 
EmergeThreadgetEmergeThread ()
 
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
 

Member Function Documentation

◆ check_for_falling()

void ScriptApiEnv::check_for_falling ( v3s16 p)

References p(), PCALL_RES, PUSH_ERROR_HANDLER, push_v3s16(), and SCRIPTAPI_PRECHECKHEADER.

Referenced by ServerMap::transformLiquids().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ environment_OnGenerated()

void ScriptApiEnv::environment_OnGenerated ( v3s16 minp,
v3s16 maxp,
u32 blockseed )

References push_v3s16(), RUN_CALLBACKS_MODE_FIRST, runCallbacks, and SCRIPTAPI_PRECHECKHEADER.

Referenced by EmergeThread::finishGen().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ environment_Step()

void ScriptApiEnv::environment_Step ( float dtime)

References RUN_CALLBACKS_MODE_FIRST, runCallbacks, and SCRIPTAPI_PRECHECKHEADER.

Referenced by ServerEnvironment::step().

+ Here is the caller graph for this function:

◆ has_on_mapblocks_changed()

bool ScriptApiEnv::has_on_mapblocks_changed ( )

References SCRIPTAPI_PRECHECKHEADER.

Referenced by ServerEnvironment::init().

+ Here is the caller graph for this function:

◆ initializeEnvironment()

void ScriptApiEnv::initializeEnvironment ( ServerEnvironment * env)

References readABMs(), readLBMs(), SCRIPTAPI_PRECHECKHEADER, ScriptApiBase::setEnv(), and verbosestream.

Referenced by Server::init().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ on_emerge_area_completion()

void ScriptApiEnv::on_emerge_area_completion ( v3s16 blockpos,
int action,
ScriptCallbackState * state )

References ScriptCallbackState::args_ref, ScriptCallbackState::callback_ref, ScriptApiBase::getServer(), ScriptCallbackState::origin, PCALL_RES, PUSH_ERROR_HANDLER, push_v3s16(), ScriptCallbackState::refcount, SCRIPTAPI_PRECHECKHEADER, and ScriptApiBase::setOriginDirect().

Referenced by LuaEmergeAreaCallback().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ on_liquid_transformed()

void ScriptApiEnv::on_liquid_transformed ( const std::vector< std::pair< v3s16, MapNode > > & list)

References p(), push_v3s16(), pushnode(), RUN_CALLBACKS_MODE_FIRST, runCallbacks, and SCRIPTAPI_PRECHECKHEADER.

Referenced by ServerMap::transformLiquids().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ on_mapblocks_changed()

void ScriptApiEnv::on_mapblocks_changed ( const std::unordered_set< v3s16 > & set)

References hash_node_position(), p(), RUN_CALLBACKS_MODE_FIRST, runCallbacks, and SCRIPTAPI_PRECHECKHEADER.

Referenced by ServerEnvironment::step().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ player_event()

void ScriptApiEnv::player_event ( ServerActiveObject * player,
const std::string & type )

References ScriptApiBase::objectrefGetOrCreate(), RUN_CALLBACKS_MODE_FIRST, runCallbacks, and SCRIPTAPI_PRECHECKHEADER.

Referenced by Server::HandlePlayerHPChange(), Server::hudSetFlags(), Server::SendPlayerBreath(), and PlayerSAO::step().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ read_nodenames()

bool ScriptApiEnv::read_nodenames ( lua_State * L,
int idx,
std::vector< std::string > & to )
staticprivate

References idx, LuaHelper::readParam(), and table.

Referenced by readABMs(), and readLBMs().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ readABMs()

void ScriptApiEnv::readABMs ( )
private

References getboolfield(), ScriptApiBase::getEnv(), getfloatfield(), getintfield(), ScriptApiBase::LuaABM, read_nodenames(), and SCRIPTAPI_PRECHECKHEADER.

Referenced by initializeEnvironment().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ readLBMs()

void ScriptApiEnv::readLBMs ( )
private

References getboolfield_default(), ScriptApiBase::getEnv(), getstringfield(), ScriptApiBase::LuaLBM, read_nodenames(), and SCRIPTAPI_PRECHECKHEADER.

Referenced by initializeEnvironment().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ triggerABM()

void ScriptApiEnv::triggerABM ( int id,
v3s16 p,
MapNode n,
u32 active_object_count,
u32 active_object_count_wider )

References FATAL_ERROR_IF, p(), PUSH_ERROR_HANDLER, push_v3s16(), pushnode(), SCRIPTAPI_PRECHECKHEADER, ScriptApiBase::scriptError(), and setOriginFromTable.

Referenced by LuaABM::trigger().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ triggerLBM()

void ScriptApiEnv::triggerLBM ( int id,
MapBlock * block,
const std::unordered_set< v3s16 > & positions,
float dtime_s )

References MapBlock::getPosRelative(), p(), PUSH_ERROR_HANDLER, push_v3s16(), SCRIPTAPI_PRECHECKHEADER, and ScriptApiBase::scriptError().

Referenced by LuaLBM::trigger().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

The documentation for this class was generated from the following files: