Luanti 5.10.0-dev
 
Loading...
Searching...
No Matches
LuaRaycast Class Reference

Lua wrapper for RaycastState objects. More...

#include <l_env.h>

+ Inheritance diagram for LuaRaycast:
+ Collaboration diagram for LuaRaycast:

Public Member Functions

 LuaRaycast (const core::line3d< f32 > &shootline, bool objects_pointable, bool liquids_pointable, const std::optional< Pointabilities > &pointabilities)
 Constructor with the same arguments as RaycastState.
 

Static Public Member Functions

static int create_object (lua_State *L)
 Creates a LuaRaycast and leaves it on top of the stack.
 
static void Register (lua_State *L)
 Registers Raycast as a Lua userdata type.
 
- Static Public Member Functions inherited from ModApiBase
static ScriptApiBasegetScriptApiBase (lua_State *L)
 
static ServergetServer (lua_State *L)
 
static ServerInventoryManagergetServerInventoryMgr (lua_State *L)
 
static EmergeThreadgetEmergeThread (lua_State *L)
 
static IGameDefgetGameDef (lua_State *L)
 
static EnvironmentgetEnv (lua_State *L)
 
static std::string getCurrentModPath (lua_State *L)
 
template<typename T >
static T * getScriptApi (lua_State *L)
 
static bool registerFunction (lua_State *L, const char *name, lua_CFunction func, int top)
 
static void registerClass (lua_State *L, const char *name, const luaL_Reg *methods, const luaL_Reg *metamethods)
 
template<typename T >
static T * checkObject (lua_State *L, int narg)
 
static int l_deprecated_function (lua_State *L, const char *good, const char *bad, lua_CFunction func)
 A wrapper for deprecated functions.
 

Static Public Attributes

static const char className [] = "Raycast"
 

Static Private Member Functions

static int gc_object (lua_State *L)
 
static int l_next (lua_State *L)
 

Private Attributes

RaycastState state
 Inner state.
 

Static Private Attributes

static const luaL_Reg methods []
 

Additional Inherited Members

- 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.
 

Detailed Description

Lua wrapper for RaycastState objects.

Constructor & Destructor Documentation

◆ LuaRaycast()

LuaRaycast::LuaRaycast ( const core::line3d< f32 > & shootline,
bool objects_pointable,
bool liquids_pointable,
const std::optional< Pointabilities > & pointabilities )
inline

Constructor with the same arguments as RaycastState.

Referenced by create_object().

+ Here is the caller graph for this function:

Member Function Documentation

◆ create_object()

int LuaRaycast::create_object ( lua_State * L)
static

Creates a LuaRaycast and leaves it on top of the stack.

References LuaRaycast(), checkFloatPos(), className, NO_MAP_LOCK_REQUIRED, read_pointabilities(), and LuaHelper::readParam().

Referenced by ModApiEnv::l_raycast(), and Register().

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

◆ gc_object()

int LuaRaycast::gc_object ( lua_State * L)
staticprivate

Referenced by Register().

+ Here is the caller graph for this function:

◆ l_next()

int LuaRaycast::l_next ( lua_State * L)
staticprivate

Raycast:next() -> pointed_thing Returns the next pointed thing on the ray.

References ModApiBase::checkObject(), GET_PLAIN_ENV_PTR, ServerEnvironment::getActiveObject(), PointedThing::object_id, POINTEDTHING_NOTHING, POINTEDTHING_OBJECT, push_pointed_thing(), state, and PointedThing::type.

Referenced by Register().

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

◆ Register()

void LuaRaycast::Register ( lua_State * L)
static

Registers Raycast as a Lua userdata type.

References className, create_object(), gc_object(), l_next(), methods, and ModApiBase::registerClass().

Referenced by ClientScripting::InitializeModApi(), and ServerScripting::InitializeModApi().

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

Member Data Documentation

◆ className

const char LuaRaycast::className = "Raycast"
static

Referenced by create_object(), and Register().

◆ methods

const luaL_Reg LuaRaycast::methods
staticprivate
Initial value:
=
{
{ 0, 0 }
}
Lua wrapper for RaycastState objects.
Definition l_env.h:276
#define luamethod(class, name)
Definition l_internal.h:16

Referenced by Register().

◆ state

RaycastState LuaRaycast::state
private

Inner state.

Referenced by l_next().


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