#include <s_item.h>
Inheritance diagram for ScriptApiItem:
Collaboration diagram for ScriptApiItem:Public Member Functions | |
| bool | item_OnDrop (ItemStack &item, ServerActiveObject *dropper, v3f pos) |
| bool | item_OnPlace (std::optional< ItemStack > &item, ServerActiveObject *placer, const PointedThing &pointed) |
| bool | item_OnUse (std::optional< ItemStack > &item, ServerActiveObject *user, const PointedThing &pointed) |
| bool | item_OnSecondaryUse (std::optional< ItemStack > &item, ServerActiveObject *user, const PointedThing &pointed) |
| bool | item_OnCraft (ItemStack &item, ServerActiveObject *user, const InventoryList *old_craft_grid, const InventoryLocation &craft_inv) |
| bool | item_CraftPredict (ItemStack &item, ServerActiveObject *user, const InventoryList *old_craft_grid, const InventoryLocation &craft_inv) |
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 () |
Protected Member Functions | |
| bool | getItemCallback (const char *name, const char *callbackname, const v3s16 *p=nullptr) |
| void | pushPointedThing (const PointedThing &pointed, bool hitpoint=false) |
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. | |
Friends | |
| class | LuaItemStack |
| class | ModApiItem |
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 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 |
|
protected |
References errorstream, ScriptApiBase::getStack(), p(), and setOriginFromTable.
Referenced by item_OnDrop(), item_OnPlace(), item_OnSecondaryUse(), item_OnUse(), ScriptApiNode::node_after_destruct(), ScriptApiNode::node_on_construct(), ScriptApiNode::node_on_destruct(), ScriptApiNode::node_on_dig(), ScriptApiNode::node_on_flood(), ScriptApiNode::node_on_punch(), ScriptApiNode::node_on_receive_fields(), ScriptApiNode::node_on_timer(), ScriptApiNodemeta::nodemeta_inventory_AllowMove(), ScriptApiNodemeta::nodemeta_inventory_AllowPut(), ScriptApiNodemeta::nodemeta_inventory_AllowTake(), ScriptApiNodemeta::nodemeta_inventory_OnMove(), ScriptApiNodemeta::nodemeta_inventory_OnPut(), and ScriptApiNodemeta::nodemeta_inventory_OnTake().
Here is the call graph for this function:
Here is the caller graph for this function:| bool ScriptApiItem::item_CraftPredict | ( | ItemStack & | item, |
| ServerActiveObject * | user, | ||
| const InventoryList * | old_craft_grid, | ||
| const InventoryLocation & | craft_inv ) |
References InvRef::create(), LuaItemStack::create(), InventoryList::getItem(), ScriptApiBase::getServer(), InventoryList::getSize(), ItemStack::name, ScriptApiBase::objectrefGetOrCreate(), PCALL_RES, PUSH_ERROR_HANDLER, push_items(), read_item(), sanity_check, SCRIPTAPI_PRECHECKHEADER, and WRAP_LUAERROR.
Referenced by Server::UpdateCrafting().
Here is the call graph for this function:
Here is the caller graph for this function:| bool ScriptApiItem::item_OnCraft | ( | ItemStack & | item, |
| ServerActiveObject * | user, | ||
| const InventoryList * | old_craft_grid, | ||
| const InventoryLocation & | craft_inv ) |
References InvRef::create(), LuaItemStack::create(), InventoryList::getItem(), ScriptApiBase::getServer(), InventoryList::getSize(), ItemStack::name, ScriptApiBase::objectrefGetOrCreate(), PCALL_RES, PUSH_ERROR_HANDLER, push_items(), read_item(), SCRIPTAPI_PRECHECKHEADER, and WRAP_LUAERROR.
Here is the call graph for this function:| bool ScriptApiItem::item_OnDrop | ( | ItemStack & | item, |
| ServerActiveObject * | dropper, | ||
| v3f | pos ) |
References LuaItemStack::create(), getItemCallback(), ScriptApiBase::getServer(), ItemStack::name, ScriptApiBase::objectrefGetOrCreate(), PCALL_RES, PUSH_ERROR_HANDLER, pushFloatPos(), read_item(), SCRIPTAPI_PRECHECKHEADER, and WRAP_LUAERROR.
Here is the call graph for this function:| bool ScriptApiItem::item_OnPlace | ( | std::optional< ItemStack > & | item, |
| ServerActiveObject * | placer, | ||
| const PointedThing & | pointed ) |
References LuaItemStack::create(), getItemCallback(), ScriptApiBase::getServer(), ItemStack::name, ScriptApiBase::objectrefGetOrCreate(), PCALL_RES, PUSH_ERROR_HANDLER, pushPointedThing(), read_item(), SCRIPTAPI_PRECHECKHEADER, and WRAP_LUAERROR.
Referenced by Server::handleCommand_Interact(), and ModApiEnv::l_place_node().
Here is the call graph for this function:
Here is the caller graph for this function:| bool ScriptApiItem::item_OnSecondaryUse | ( | std::optional< ItemStack > & | item, |
| ServerActiveObject * | user, | ||
| const PointedThing & | pointed ) |
References LuaItemStack::create(), getItemCallback(), ScriptApiBase::getServer(), ItemStack::name, ScriptApiBase::objectrefGetOrCreate(), PCALL_RES, PUSH_ERROR_HANDLER, pushPointedThing(), read_item(), SCRIPTAPI_PRECHECKHEADER, and WRAP_LUAERROR.
Referenced by Server::handleCommand_Interact().
Here is the call graph for this function:
Here is the caller graph for this function:| bool ScriptApiItem::item_OnUse | ( | std::optional< ItemStack > & | item, |
| ServerActiveObject * | user, | ||
| const PointedThing & | pointed ) |
References LuaItemStack::create(), getItemCallback(), ScriptApiBase::getServer(), ItemStack::name, ScriptApiBase::objectrefGetOrCreate(), PCALL_RES, PUSH_ERROR_HANDLER, pushPointedThing(), read_item(), SCRIPTAPI_PRECHECKHEADER, and WRAP_LUAERROR.
Referenced by Server::handleCommand_Interact().
Here is the call graph for this function:
Here is the caller graph for this function:
|
protected |
Pushes a pointed_thing tabe to the stack.
| hitpoint | If true, the exact pointing location is also pushed |
References ScriptApiBase::getStack(), and push_pointed_thing().
Referenced by item_OnPlace(), item_OnSecondaryUse(), item_OnUse(), and ScriptApiNode::node_on_punch().
Here is the call graph for this function:
Here is the caller graph for this function:
|
friend |
|
friend |