Skip to content
Snippets Groups Projects
Commit cd563473 authored by Perttu Ahola's avatar Perttu Ahola
Browse files

Add ObjectRef:punch and ObjectRef:right_click to Lua API

parent d26e19a2
No related branches found
No related tags found
No related merge requests found
......@@ -81,6 +81,8 @@
-- - getpos(): returns {x=num, y=num, z=num}
-- - setpos(pos); pos={x=num, y=num, z=num}
-- - moveto(pos, continuous=false): interpolated move
-- - punch(puncher); puncher = an another ObjectRef
-- - right_click(clicker); clicker = an another ObjectRef
-- - get_wielded_itemstring()
-- - get_wielded_item()
-- - damage_wielded_item(num) (item damage/wear range is 0-65535)
......@@ -89,9 +91,9 @@
-- - get_hp(): returns number of hitpoints (2 * number of hearts)
-- - set_hp(hp): set number of hitpoints (2 * number of hearts)
-- LuaEntitySAO-only:
-- - setvelocity(self, {x=num, y=num, z=num})
-- - setacceleration(self, {x=num, y=num, z=num})
-- - getacceleration(self)
-- - setvelocity({x=num, y=num, z=num})
-- - setacceleration({x=num, y=num, z=num})
-- - getacceleration()
-- - settexturemod(mod)
-- - setsprite(p={x=0,y=0}, num_frames=1, framelength=0.2,
-- - select_horiz_by_yawpitch=false)
......
......@@ -1642,6 +1642,34 @@ class ObjectRef
return 0;
}
// punch(self, puncher); puncher = an another ObjectRef
static int l_punch(lua_State *L)
{
ObjectRef *ref = checkobject(L, 1);
ObjectRef *ref2 = checkobject(L, 2);
ServerActiveObject *co = getobject(ref);
ServerActiveObject *co2 = getobject(ref2);
if(co == NULL) return 0;
if(co2 == NULL) return 0;
// Do it
co->punch(co2);
return 0;
}
// right_click(self, clicker); clicker = an another ObjectRef
static int l_right_click(lua_State *L)
{
ObjectRef *ref = checkobject(L, 1);
ObjectRef *ref2 = checkobject(L, 2);
ServerActiveObject *co = getobject(ref);
ServerActiveObject *co2 = getobject(ref2);
if(co == NULL) return 0;
if(co2 == NULL) return 0;
// Do it
co->rightClick(co2);
return 0;
}
// get_wielded_itemstring(self)
static int l_get_wielded_itemstring(lua_State *L)
{
......@@ -1954,6 +1982,8 @@ const luaL_reg ObjectRef::methods[] = {
method(ObjectRef, getpos),
method(ObjectRef, setpos),
method(ObjectRef, moveto),
method(ObjectRef, punch),
method(ObjectRef, right_click),
method(ObjectRef, get_wielded_itemstring),
method(ObjectRef, get_wielded_item),
method(ObjectRef, damage_wielded_item),
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment