#include <scripting_client.h>
Inheritance diagram for ClientScripting:
Collaboration diagram for ClientScripting:Public Member Functions | |
| ClientScripting (Client *client) | |
| void | on_client_ready (LocalPlayer *localplayer) |
| void | on_camera_ready (Camera *camera) |
| void | on_minimap_ready (Minimap *minimap) |
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 () |
Public Member Functions inherited from ScriptApiSecurity | |
| void | initializeSecurity () |
| void | initializeSecurityClient () |
Public Member Functions inherited from ScriptApiClientCommon | |
| bool | on_formspec_input (const std::string &formname, const StringMap &fields) |
Public Member Functions inherited from ScriptApiClient | |
| void | on_mods_loaded () |
| void | on_shutdown () |
| bool | on_sending_message (const std::string &message) |
| bool | on_receiving_message (const std::string &message) |
| void | on_damage_taken (int32_t damage_amount) |
| void | on_hp_modification (int32_t newhp) |
| void | environment_step (float dtime) |
| bool | on_dignode (v3s16 p, MapNode node) |
| bool | on_punchnode (v3s16 p, MapNode node) |
| bool | on_placenode (const PointedThing &pointed, const ItemDefinition &item) |
| bool | on_item_use (const ItemStack &item, const PointedThing &pointed) |
| bool | on_inventory_open (Inventory *inventory) |
| void | setEnv (ClientEnvironment *env) |
Public Member Functions inherited from ScriptApiModChannels | |
| void | on_modchannel_message (const std::string &channel, const std::string &sender, const std::string &message) |
| void | on_modchannel_signal (const std::string &channel, ModChannelSignal signal) |
Protected Member Functions | |
| bool | checkPathInternal (const std::string &abs_path, bool write_required, bool *write_allowed) override |
| Should check if the given path may be accessed. | |
| bool | modNamesAreTrusted () override |
| Specify if the mod names during init time(!) can be trusted. | |
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. | |
Private Member Functions | |
| virtual void | InitializeModApi (lua_State *L, int top) |
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. | |
Static Public Member Functions inherited from ScriptApiSecurity | |
| static bool | isSecure (lua_State *L) |
| static void | getGlobalsBackup (lua_State *L) |
| static bool | safeLoadString (lua_State *L, std::string_view code, const char *chunk_name) |
| Loads a string as Lua code safely (doesn't allow bytecode). | |
| static bool | safeLoadFile (lua_State *L, const char *path, const char *display_name=nullptr) |
| Loads a file as Lua code safely (doesn't allow bytecode). | |
| static std::string | getCurrentModName (lua_State *L) |
| Returns the currently running mod, only during init time. | |
| static bool | checkWhitelisted (lua_State *L, const std::string &setting) |
| Check if mod is whitelisted in the given setting. | |
| static bool | checkPath (lua_State *L, const char *path, bool write_required, bool *write_allowed=nullptr) |
| Checks if mods are allowed to read (and optionally write) to the path. | |
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. | |
Static Protected Member Functions inherited from ScriptApiSecurity | |
| static bool | checkPathWithGamedef (lua_State *L, const std::string &abs_path, bool write_required, bool *write_allowed) |
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 |
| ClientScripting::ClientScripting | ( | Client * | client | ) |
References infostream, InitializeModApi(), ScriptApiSecurity::initializeSecurityClient(), SCRIPTAPI_PRECHECKHEADER, and ScriptApiBase::setGameDef().
Here is the call graph for this function:
|
inlineoverrideprotectedvirtual |
Should check if the given path may be accessed.
If write_required is true test for write access, if false test for read access.
| abs_path | absolute file/directory path, may not exist |
| write_required | was write access requested? |
| write_allowed | output parameter (nullable): set to true if writing is allowed |
Implements ScriptApiSecurity.
References warningstream.
|
privatevirtual |
References ModApiChannels::Initialize(), ModApiClient::Initialize(), ModApiClientCommon::Initialize(), ModApiClientSound::Initialize(), ModApiParticlesLocal::Initialize(), ModApiStorage::Initialize(), ModApiEnv::InitializeClient(), ModApiItem::InitializeClient(), ModApiUtil::InitializeClient(), ClientSoundHandle::Register(), ItemStackMetaRef::Register(), LuaCamera::Register(), LuaItemStack::Register(), LuaLocalPlayer::Register(), LuaMinimap::Register(), LuaRaycast::Register(), LuaSettings::Register(), ModChannelRef::Register(), StorageRef::Register(), and NodeMetaRef::RegisterClient().
Referenced by ClientScripting().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineoverrideprotectedvirtual |
Specify if the mod names during init time(!) can be trusted.
It needs to be assured that no tampering happens before any call to loadMod().
Reimplemented from ScriptApiSecurity.
| void ClientScripting::on_camera_ready | ( | Camera * | camera | ) |
References LuaCamera::create(), and ScriptApiBase::getStack().
Referenced by Client::loadMods().
Here is the call graph for this function:
Here is the caller graph for this function:| void ClientScripting::on_client_ready | ( | LocalPlayer * | localplayer | ) |
References LuaLocalPlayer::create(), and ScriptApiBase::getStack().
Referenced by Client::afterContentReceived(), and Client::loadMods().
Here is the call graph for this function:
Here is the caller graph for this function:| void ClientScripting::on_minimap_ready | ( | Minimap * | minimap | ) |
References LuaMinimap::create(), and ScriptApiBase::getStack().
Referenced by Client::loadMods().
Here is the call graph for this function:
Here is the caller graph for this function: