diff options
author | Robert Zenz <Robert.Zenz@bonsaimind.org> | 2015-11-05 19:56:19 +0100 |
---|---|---|
committer | est31 <MTest31@outlook.com> | 2015-11-12 00:47:11 +0100 |
commit | 0876623aedcd93100103d145788affcb5001bdaf (patch) | |
tree | 5d7686e5cd9ba764034361070e3db1a0b53050f9 | |
parent | 76c9abe4c89f6c8170b82558182837259efdd2ea (diff) | |
download | minetest-0876623aedcd93100103d145788affcb5001bdaf.tar.gz minetest-0876623aedcd93100103d145788affcb5001bdaf.tar.bz2 minetest-0876623aedcd93100103d145788affcb5001bdaf.zip |
Add the player name to dropped items
The player name is now added in the field "dropped_by" on the created
entity.
-rw-r--r-- | builtin/game/item.lua | 3 | ||||
-rw-r--r-- | builtin/game/item_entity.lua | 4 |
2 files changed, 5 insertions, 2 deletions
diff --git a/builtin/game/item.lua b/builtin/game/item.lua index df5bb070d..44ec35cc9 100644 --- a/builtin/game/item.lua +++ b/builtin/game/item.lua @@ -348,7 +348,7 @@ function core.item_place(itemstack, placer, pointed_thing, param2) end function core.item_drop(itemstack, dropper, pos) - if dropper.is_player then + if dropper and dropper:is_player() then local v = dropper:get_look_dir() local p = {x=pos.x, y=pos.y+1.2, z=pos.z} local cs = itemstack:get_count() @@ -362,6 +362,7 @@ function core.item_drop(itemstack, dropper, pos) v.y = v.y*2 + 2 v.z = v.z*2 obj:setvelocity(v) + obj:get_luaentity().dropped_by = dropper:get_player_name() return itemstack end diff --git a/builtin/game/item_entity.lua b/builtin/game/item_entity.lua index a8d7a1863..be158c119 100644 --- a/builtin/game/item_entity.lua +++ b/builtin/game/item_entity.lua @@ -74,7 +74,8 @@ core.register_entity(":__builtin:item", { return core.serialize({ itemstring = self.itemstring, always_collect = self.always_collect, - age = self.age + age = self.age, + dropped_by = self.dropped_by }) end, @@ -89,6 +90,7 @@ core.register_entity(":__builtin:item", { else self.age = dtime_s end + self.dropped_by = data.dropped_by end else self.itemstring = staticdata |