Fix few oversights and bring back some missing features
This commit is contained in:
parent
09a0d9c855
commit
8f529ad6c3
@ -16,28 +16,26 @@
|
||||
|
||||
industrialtest.ActivatedElectricMachine=table.copy(industrialtest.ElectricMachine)
|
||||
|
||||
-- Forward methods from ActivatedMachine
|
||||
industrialtest.internal.unpackTableInto(industrialtest.ActivatedElectricMachine,{
|
||||
canUpdate=industrialtest.ActivatedMachine.canUpdate,
|
||||
register=industrialtest.ActivatedMachine.register,
|
||||
createDefinitionTable=industrialtest.ActivatedMachine.createDefinitionTable,
|
||||
createActiveDefinitionTable=industrialtest.ActivatedMachine.createActiveDefinitionTable,
|
||||
activate=industrialtest.ActivatedMachine.activate,
|
||||
deactivate=industrialtest.ActivatedMachine.deactivate,
|
||||
shouldActivate=industrialtest.ActivatedMachine.shouldActivate,
|
||||
shouldDeactivate=industrialtest.ActivatedMachine.shouldDeactivate,
|
||||
afterActivation=industrialtest.ActivatedMachine.afterActivation,
|
||||
afterDeactivation=industrialtest.ActivatedMachine.afterDeactivation
|
||||
})
|
||||
|
||||
function industrialtest.ActivatedElectricMachine.onTimer(self,pos,elapsed)
|
||||
local result=self:powerExchange(pos)
|
||||
local result2=industrialtest.ActivatedMachine.onTimer(self,pos,elapsed)
|
||||
return result or result2
|
||||
end
|
||||
|
||||
industrialtest.ActivatedElectricMachine.canUpdate=industrialtest.ActivatedMachine.canUpdate
|
||||
|
||||
industrialtest.ActivatedElectricMachine.register=industrialtest.ActivatedMachine.register
|
||||
|
||||
industrialtest.ActivatedElectricMachine.createDefinitionTable=industrialtest.ActivatedMachine.createDefinitionTable
|
||||
|
||||
industrialtest.ActivatedElectricMachine.createActiveDefinitionTable=industrialtest.ActivatedMachine.createActiveDefinitionTable
|
||||
|
||||
industrialtest.ActivatedElectricMachine.shouldActivate=industrialtest.ActivatedMachine.shouldActivate
|
||||
|
||||
industrialtest.ActivatedElectricMachine.shouldDeactivate=industrialtest.ActivatedMachine.shouldDeactivate
|
||||
|
||||
industrialtest.ActivatedElectricMachine.afterActivation=industrialtest.ActivatedMachine.afterActivation
|
||||
|
||||
industrialtest.ActivatedElectricMachine.afterDeactivation=industrialtest.ActivatedMachine.afterDeactivation
|
||||
|
||||
function industrialtest.ActivatedElectricMachine.activeOnTimer(self,pos,elapsed)
|
||||
local result=self:powerExchange(pos)
|
||||
local result2=industrialtest.ActivatedMachine.activeOnTimer(self,pos,elapsed)
|
||||
|
@ -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
|
||||
|
||||
|
@ -179,6 +179,8 @@ function industrialtest.Machine.createDefinitionTable(self)
|
||||
def.groups={cracky=2}
|
||||
if self.sounds=="metal" then
|
||||
def.sounds=default.node_sound_metal_defaults()
|
||||
elseif self.sounds=="wood" then
|
||||
def.sounds=default.node_sound_wood_defaults()
|
||||
end
|
||||
def.can_dig=function(pos)
|
||||
local meta=minetest.get_meta(pos)
|
||||
@ -196,6 +198,8 @@ function industrialtest.Machine.createDefinitionTable(self)
|
||||
end
|
||||
if self.sounds=="metal" then
|
||||
def.sounds=mcl_sounds.node_sound_metal_defaults()
|
||||
elseif sounds=="wood" then
|
||||
def.sounds=mcl_sounds.node_sound_wood_defaults()
|
||||
end
|
||||
def.groups={
|
||||
pickaxey=1,
|
||||
@ -232,6 +236,13 @@ function industrialtest.Machine.createDefinitionTable(self)
|
||||
def.legacy_facedir_simple=true
|
||||
end
|
||||
|
||||
if self.hasPowerInput then
|
||||
def.groups._industrialtest_hasPowerInput=1
|
||||
end
|
||||
if self.hasPowerOutput then
|
||||
def.groups._industrialtest_hasPowerOutput=1
|
||||
end
|
||||
|
||||
return def
|
||||
end
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user