Fix few oversights and bring back some missing features

This commit is contained in:
2025-03-03 11:44:18 +01:00
parent 09a0d9c855
commit 8f529ad6c3
3 changed files with 45 additions and 28 deletions

View File

@@ -24,12 +24,7 @@ function industrialtest.ActivatedMachine.onTimer(self,pos,elapsed)
local result=industrialtest.Machine.onTimer(self,pos,elapsed)
if self:shouldActivate(pos) then
minetest.swap_node(pos,{
name=self.name.."_active",
param2=minetest.get_node(pos).param2
})
self:afterActivation(pos)
minetest.get_node_timer(pos):start(industrialtest.updateDelay)
self:activate(pos)
return false
end
@@ -65,6 +60,24 @@ function industrialtest.ActivatedMachine.createActiveDefinitionTable(self)
return def
end
function industrialtest.ActivatedMachine.activate(self,pos)
minetest.swap_node(pos,{
name=self.name.."_active",
param2=minetest.get_node(pos).param2
})
self:afterActivation(pos)
minetest.get_node_timer(pos):start(industrialtest.updateDelay)
end
function industrialtest.ActivatedMachine.deactivate(self,pos)
minetest.swap_node(pos,{
name=self.name,
param2=minetest.get_node(pos).param2
})
self:afterDeactivation(pos)
minetest.get_node_timer(pos):start(industrialtest.updateDelay)
end
function industrialtest.ActivatedMachine.shouldActivate(self,pos)
return false
end
@@ -86,12 +99,7 @@ function industrialtest.ActivatedMachine.activeOnTimer(self,pos,elapsed)
local shouldUpdateFormspec=false
if self:shouldDeactivate(pos) then
minetest.swap_node(pos,{
name=self.name,
param2=minetest.get_node(pos).param2
})
self:afterDeactivation(pos)
minetest.get_node_timer(pos):start(industrialtest.updateDelay)
self:deactivate(pos)
return false
end