1
0
ミラー元 https://github.com/luanti-org/luanti.git 前回の同期 2026-01-07 17:55:37 +01:00

initial_properties field in entity definition

このコミットが含まれているのは:
Perttu Ahola
2012-03-31 13:50:25 +03:00
コミット dc70f50b59
3個のファイルの変更22行の追加13行の削除

ファイルの表示

@@ -792,8 +792,10 @@ Object Properties
Entity definition (register_entity)
{
Everything from object properties,
-- entity specific --
(Deprecated: Everything in object properties is read directly from here)
initial_properties = <initial object properties>,
on_activate = function(self, staticdata),
on_step = function(self, dtime),
on_punch = function(self, hitter),
@@ -801,6 +803,7 @@ Entity definition (register_entity)
get_staticdata = function(self),
^ Called sometimes; the string returned is passed to on_activate when
the entity is re-activated from static state
# Also you can define arbitrary member variables here
myvariable = whatever,
}

ファイルの表示

@@ -409,16 +409,17 @@ minetest.register_alias("TNT", "experimental:tnt")
--
minetest.register_entity("experimental:dummyball", {
-- Static definition
hp_max = 20,
physical = false,
collisionbox = {-0.4,-0.4,-0.4, 0.4,0.4,0.4},
visual = "sprite",
visual_size = {x=1, y=1},
textures = {"experimental_dummyball.png"},
spritediv = {x=1, y=3},
initial_sprite_basepos = {x=0, y=0},
-- Dynamic variables
initial_properties = {
hp_max = 20,
physical = false,
collisionbox = {-0.4,-0.4,-0.4, 0.4,0.4,0.4},
visual = "sprite",
visual_size = {x=1, y=1},
textures = {"experimental_dummyball.png"},
spritediv = {x=1, y=3},
initial_sprite_basepos = {x=0, y=0},
},
phase = 0,
phasetimer = 0,

ファイルの表示

@@ -4887,8 +4887,13 @@ void scriptapi_luaentity_get_properties(lua_State *L, u16 id,
// Set default values that differ from ObjectProperties defaults
prop->hp_max = 10;
// Read stuff
// Deprecated: read object properties directly
read_object_properties(L, -1, prop);
// Read initial_properties
lua_getfield(L, -1, "initial_properties");
read_object_properties(L, -1, prop);
lua_pop(L, 1);
}
void scriptapi_luaentity_step(lua_State *L, u16 id, float dtime)