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)
|
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)
|
function industrialtest.ActivatedElectricMachine.onTimer(self,pos,elapsed)
|
||||||
local result=self:powerExchange(pos)
|
local result=self:powerExchange(pos)
|
||||||
local result2=industrialtest.ActivatedMachine.onTimer(self,pos,elapsed)
|
local result2=industrialtest.ActivatedMachine.onTimer(self,pos,elapsed)
|
||||||
return result or result2
|
return result or result2
|
||||||
end
|
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)
|
function industrialtest.ActivatedElectricMachine.activeOnTimer(self,pos,elapsed)
|
||||||
local result=self:powerExchange(pos)
|
local result=self:powerExchange(pos)
|
||||||
local result2=industrialtest.ActivatedMachine.activeOnTimer(self,pos,elapsed)
|
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)
|
local result=industrialtest.Machine.onTimer(self,pos,elapsed)
|
||||||
|
|
||||||
if self:shouldActivate(pos) then
|
if self:shouldActivate(pos) then
|
||||||
minetest.swap_node(pos,{
|
self:activate(pos)
|
||||||
name=self.name.."_active",
|
|
||||||
param2=minetest.get_node(pos).param2
|
|
||||||
})
|
|
||||||
self:afterActivation(pos)
|
|
||||||
minetest.get_node_timer(pos):start(industrialtest.updateDelay)
|
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -65,6 +60,24 @@ function industrialtest.ActivatedMachine.createActiveDefinitionTable(self)
|
|||||||
return def
|
return def
|
||||||
end
|
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)
|
function industrialtest.ActivatedMachine.shouldActivate(self,pos)
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
@ -86,12 +99,7 @@ function industrialtest.ActivatedMachine.activeOnTimer(self,pos,elapsed)
|
|||||||
local shouldUpdateFormspec=false
|
local shouldUpdateFormspec=false
|
||||||
|
|
||||||
if self:shouldDeactivate(pos) then
|
if self:shouldDeactivate(pos) then
|
||||||
minetest.swap_node(pos,{
|
self:deactivate(pos)
|
||||||
name=self.name,
|
|
||||||
param2=minetest.get_node(pos).param2
|
|
||||||
})
|
|
||||||
self:afterDeactivation(pos)
|
|
||||||
minetest.get_node_timer(pos):start(industrialtest.updateDelay)
|
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -179,6 +179,8 @@ function industrialtest.Machine.createDefinitionTable(self)
|
|||||||
def.groups={cracky=2}
|
def.groups={cracky=2}
|
||||||
if self.sounds=="metal" then
|
if self.sounds=="metal" then
|
||||||
def.sounds=default.node_sound_metal_defaults()
|
def.sounds=default.node_sound_metal_defaults()
|
||||||
|
elseif self.sounds=="wood" then
|
||||||
|
def.sounds=default.node_sound_wood_defaults()
|
||||||
end
|
end
|
||||||
def.can_dig=function(pos)
|
def.can_dig=function(pos)
|
||||||
local meta=minetest.get_meta(pos)
|
local meta=minetest.get_meta(pos)
|
||||||
@ -196,6 +198,8 @@ function industrialtest.Machine.createDefinitionTable(self)
|
|||||||
end
|
end
|
||||||
if self.sounds=="metal" then
|
if self.sounds=="metal" then
|
||||||
def.sounds=mcl_sounds.node_sound_metal_defaults()
|
def.sounds=mcl_sounds.node_sound_metal_defaults()
|
||||||
|
elseif sounds=="wood" then
|
||||||
|
def.sounds=mcl_sounds.node_sound_wood_defaults()
|
||||||
end
|
end
|
||||||
def.groups={
|
def.groups={
|
||||||
pickaxey=1,
|
pickaxey=1,
|
||||||
@ -232,6 +236,13 @@ function industrialtest.Machine.createDefinitionTable(self)
|
|||||||
def.legacy_facedir_simple=true
|
def.legacy_facedir_simple=true
|
||||||
end
|
end
|
||||||
|
|
||||||
|
if self.hasPowerInput then
|
||||||
|
def.groups._industrialtest_hasPowerInput=1
|
||||||
|
end
|
||||||
|
if self.hasPowerOutput then
|
||||||
|
def.groups._industrialtest_hasPowerOutput=1
|
||||||
|
end
|
||||||
|
|
||||||
return def
|
return def
|
||||||
end
|
end
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user