Skip to content

Commit

Permalink
Ajout d'une tempo pour une mise en veille
Browse files Browse the repository at this point in the history
  • Loading branch information
Jat15 committed Jun 25, 2013
1 parent 96eadbe commit 5746c82
Showing 1 changed file with 13 additions and 4 deletions.
17 changes: 13 additions & 4 deletions init.lua
Original file line number Diff line number Diff line change
Expand Up @@ -58,13 +58,19 @@ minetest.register_abm({
chance = 1,
action = function(pos, node)
local mitem1 = minetest.deserialize(minetest.env:get_meta(pos):get_string("item1"))
local mitem2 = minetest.deserialize(minetest.env:get_meta(pos):get_string("item2"))
if not(mitem2==nil) then
local menservice = minetest.env:get_meta(pos):get_int("enservice")
if not(menservice==0) and (os.difftime(os.time(),menservice)>30 or os.difftime(os.time(),menservice)<0) then
minetest.env:get_meta(pos):set_int("enservice", nil)
local pos = {x=pos.x,y=pos.y+1,z=pos.z}
local listeobj=minetest.env:get_objects_inside_radius(pos, 0.60)
if table.getn(listeobj)==nil then
holospwan(pos,mitem1["name"])
if table.getn(listeobj)>=1 then
for c=1,table.getn(listeobj) do
if not(listeobj[c]:is_player()) then
listeobj[c]:remove()
end
end
end
holospwan(pos,mitem1["name"])
end
end,
})
Expand All @@ -87,12 +93,14 @@ minetest.register_node("mini_economique:socle", {
minetest.env:get_meta(pos):set_string("item1","")
minetest.env:get_meta(pos):set_string("item2","")
minetest.env:get_meta(pos):set_int("p", 1)
minetest.env:get_meta(pos):set_int("enservice", 0)
end,
on_punch = function(pos, node, puncher)
local mitem1 = minetest.deserialize(minetest.env:get_meta(pos):get_string("item1"))
local mitem2 = minetest.deserialize(minetest.env:get_meta(pos):get_string("item2"))
local item = puncher:get_wielded_item():to_table()
if not(mitem2 == nil) then
minetest.env:get_meta(pos):set_int("enservice", os.time())
affichage(pos)
else
if not(item == nil) then
Expand Down Expand Up @@ -191,6 +199,7 @@ minetest.register_entity("mini_economique:buy", {
local pos = self.poscube
local mitem1 = minetest.deserialize(minetest.env:get_meta(pos):get_string("item1"))
local mitem2 = minetest.deserialize(minetest.env:get_meta(pos):get_string("item2"))
minetest.env:get_meta(pos):set_int("enservice", os.time())
if clicker:get_inventory():contains_item("main",mitem2) then
clicker:get_inventory():remove_item("main", mitem2)
clicker:get_inventory():add_item("main", mitem1)
Expand Down

0 comments on commit 5746c82

Please sign in to comment.