Compare commits
23 Commits
cd585391ec
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| d47c4ad2ae | |||
| 5b2a9b09e8 | |||
| 4ed120bea3 | |||
| 0219e61908 | |||
| 0329750877 | |||
| 27479f302c | |||
| 909f20992e | |||
| c041f609ee | |||
| 52c78915c0 | |||
| 1603bdef90 | |||
| ca95a94a95 | |||
| a0abab4e1c | |||
| c192789b63 | |||
| eb5b2ba127 | |||
| 2a6d038e5a | |||
| bf193e98cd | |||
| 699db0f557 | |||
| 387a77c54b | |||
| a2567cae54 | |||
| 29b5a6c996 | |||
| 42378a4331 | |||
| bd2e7f56f4 | |||
| c7ff88087e |
28
README.md
28
README.md
@@ -1,25 +1,35 @@
|
|||||||
# IndustrialTest
|
# IndustrialTest
|
||||||
IndustrialTest is a mod for [Minetest](https://www.minetest.net/) that adds various tech and machinery related stuff.
|
IndustrialTest is a mod for [Minetest](https://luanti.org) that adds various tech and machinery related stuff.
|
||||||
|
|
||||||
|
## Guide
|
||||||
|
Guide can be accessed in-game using `/industrialtest_guide` command.
|
||||||
|
|
||||||
## Compatibility
|
## Compatibility
|
||||||
Currently IndustrialTest supports following games:
|
Currently IndustrialTest supports following games:
|
||||||
- [Minetest Game](https://content.minetest.net/packages/Minetest/minetest_game) and derivatives
|
- [Minetest Game](https://content.luanti.org/packages/Minetest/minetest_game) and derivatives
|
||||||
- [MineClone2](https://content.minetest.net/packages/Wuzzy/mineclone2/) and derivatives
|
- [VoxeLibre](https://content.luanti.org/packages/Wuzzy/mineclone2) and derivatives
|
||||||
|
|
||||||
## Additional dependencies
|
## Additional dependencies
|
||||||
- Minetest Game
|
- Minetest Game
|
||||||
- [3D Armor](https://content.minetest.net/packages/stu/3d_armor)
|
- [3D Armor](https://content.luanti.org/packages/stu/3d_armor)
|
||||||
- VoxeLibre
|
- VoxeLibre
|
||||||
- none
|
- none
|
||||||
|
|
||||||
## Optional dependencies
|
## Optional dependencies
|
||||||
- [Rubber Addon for MineClone](https://content.minetest.net/packages/biochemist/mcl_rubber)
|
- [Rubber Addon for MineClone](https://content.luanti.org/packages/biochemist/mcl_rubber)
|
||||||
- [Pipeworks](https://content.minetest.net/packages/VanessaE/pipeworks)
|
- [Pipeworks](https://content.luanti.org/packages/VanessaE/pipeworks)
|
||||||
- [Logistica](https://content.minetest.net/packages/ZenonSeth/logistica)
|
- [Logistica](https://content.luanti.org/packages/ZenonSeth/logistica)
|
||||||
- [Mesecons](https://content.minetest.net/packages/Jeija/mesecons)
|
- [Mesecons](https://content.luanti.org/packages/Jeija/mesecons)
|
||||||
|
|
||||||
|
## Locale
|
||||||
|
Mod is available in following languages:
|
||||||
|
- English / en_US (base)
|
||||||
|
- Polish / pl_PL (by mrkubax10)
|
||||||
|
|
||||||
|
New translations highly appreciated!
|
||||||
|
|
||||||
## Contributors
|
## Contributors
|
||||||
- mrkubax10 <mrkubax10@onet.pl or mrkubax10 at irc.libera.chat> [programming, some graphics]
|
- mrkubax10 <mrkubax10@onet.pl or mrkubax10 at irc.libera.chat> [programming, some graphics]
|
||||||
- HandfulOfFrogs <<handfuloffrogs@gmail.com>> [some programming, graphics]
|
- HandfulOfFrogs <<handfuloffrogs@gmail.com>> [some programming, graphics]
|
||||||
- LuanHawk <Discord: LuanHawk#8733> [lead graphics]
|
- LuanHawk <Discord: luanhawk> [lead graphics]
|
||||||
- Migdyn <<temp1@cubesoftware.xyz>> [graphics]
|
- Migdyn <<temp1@cubesoftware.xyz>> [graphics]
|
||||||
|
|||||||
@@ -385,6 +385,29 @@ addPipeworksCompatibility("industrialtest:induction_furnace",{
|
|||||||
{listname="src"}
|
{listname="src"}
|
||||||
},"dst")
|
},"dst")
|
||||||
|
|
||||||
|
-- Miner
|
||||||
|
addPipeworksCompatibility("industrialtest:miner",{
|
||||||
|
{
|
||||||
|
y=1,
|
||||||
|
listname="powerStorage"
|
||||||
|
},
|
||||||
|
{listname="src"}
|
||||||
|
},"dst")
|
||||||
|
|
||||||
|
-- Pump
|
||||||
|
addPipeworksCompatibility("industrialtest:pump",{
|
||||||
|
{
|
||||||
|
y=1,
|
||||||
|
listname="powerStorage"
|
||||||
|
},
|
||||||
|
{listname="src"}
|
||||||
|
},"dst")
|
||||||
|
|
||||||
|
-- Magnetizer
|
||||||
|
addPipeworksCompatibility("industrialtest:magnetizer",{
|
||||||
|
{listname="powerStorage"}
|
||||||
|
},"powerStorage")
|
||||||
|
|
||||||
-- Simple electric item processors
|
-- Simple electric item processors
|
||||||
for _,name in ipairs(industrialtest.api.tags.simpleElectricItemProcessor) do
|
for _,name in ipairs(industrialtest.api.tags.simpleElectricItemProcessor) do
|
||||||
addPipeworksCompatibility(name,{
|
addPipeworksCompatibility(name,{
|
||||||
|
|||||||
@@ -101,7 +101,7 @@ if industrialtest.mclAvailable then
|
|||||||
mcl_explosions.explode(pos,radius,{drop_chance=dropChance})
|
mcl_explosions.explode(pos,radius,{drop_chance=dropChance})
|
||||||
end
|
end
|
||||||
|
|
||||||
industrialtest.internal.getItemSlotBg=mcl_formspec.get_itemslot_bg
|
industrialtest.internal.getItemSlotBg=mcl_formspec.get_itemslot_bg_v4
|
||||||
elseif industrialtest.mtgAvailable then
|
elseif industrialtest.mtgAvailable then
|
||||||
industrialtest.stackMax=99
|
industrialtest.stackMax=99
|
||||||
|
|
||||||
@@ -528,7 +528,7 @@ if industrialtest.mclAvailable then
|
|||||||
industrialtest.elementKeys.stoneWithCopper="mcl_copper:stone_with_copper"
|
industrialtest.elementKeys.stoneWithCopper="mcl_copper:stone_with_copper"
|
||||||
industrialtest.elementKeys.leadLump="industrialtest:raw_lead"
|
industrialtest.elementKeys.leadLump="industrialtest:raw_lead"
|
||||||
industrialtest.elementKeys.ironPickaxe="mcl_tools:pick_iron"
|
industrialtest.elementKeys.ironPickaxe="mcl_tools:pick_iron"
|
||||||
industrialtest.elementKeys.ironHelmet="mcl_tools:helmet_iron"
|
industrialtest.elementKeys.ironHelmet="mcl_armor:helmet_iron"
|
||||||
industrialtest.elementKeys.ironBoots="mcl_armor:boots_iron"
|
industrialtest.elementKeys.ironBoots="mcl_armor:boots_iron"
|
||||||
industrialtest.elementKeys.lavaSource="mcl_core:lava_source"
|
industrialtest.elementKeys.lavaSource="mcl_core:lava_source"
|
||||||
industrialtest.elementKeys.waterSource="mcl_core:water_source"
|
industrialtest.elementKeys.waterSource="mcl_core:water_source"
|
||||||
|
|||||||
492
guide.lua
492
guide.lua
@@ -66,13 +66,15 @@ local function createMachineInformationTable(fields,machineName,num)
|
|||||||
local fieldLabels={
|
local fieldLabels={
|
||||||
inputVoltage="Input voltage level",
|
inputVoltage="Input voltage level",
|
||||||
outputVoltage="Output voltage level",
|
outputVoltage="Output voltage level",
|
||||||
voltage="Voltage",
|
voltage="Voltage level",
|
||||||
lowVoltage="Low voltage",
|
lowVoltage="Low voltage level",
|
||||||
highVoltage="High voltage",
|
highVoltage="High voltage level",
|
||||||
|
damageRed="Damage reduction",
|
||||||
recipe="Recipe type",
|
recipe="Recipe type",
|
||||||
powerCapacity="Power capacity",
|
powerCapacity="Power capacity",
|
||||||
opPower="Power per operation",
|
opPower="Power per operation",
|
||||||
powerPerFuel="Power per fuel unit",
|
powerPerFuel="Power per fuel unit",
|
||||||
|
uses="Uses",
|
||||||
efficiency="Default efficiency"
|
efficiency="Default efficiency"
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -85,7 +87,7 @@ local function createMachineInformationTable(fields,machineName,num)
|
|||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
return createTable(rows,false,string.format("Figure %d. Machine information for %s",(num or 1),machineName))
|
return createTable(rows,false,S("Figure @1. Information for @2",(num or 1),machineName))
|
||||||
end
|
end
|
||||||
|
|
||||||
local pages={
|
local pages={
|
||||||
@@ -1337,6 +1339,81 @@ local pages={
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
name="itemPowerStorage",
|
||||||
|
title=S("Item power storage"),
|
||||||
|
icon="industrialtest:re_battery",
|
||||||
|
content={
|
||||||
|
[[
|
||||||
|
<big>||Item power storage||</big>
|
||||||
|
<left>
|
||||||
|
||There are items which purpose is solely to store power in them. Those are following:||
|
||||||
|
</left>
|
||||||
|
<left>
|
||||||
|
||<item name="industrialtest:re_battery" height="{{ITEM_HEIGHT}}"> <b>RE-Battery</b>||
|
||||||
|
</left>
|
||||||
|
]],
|
||||||
|
createMachineInformationTable({
|
||||||
|
{
|
||||||
|
name="voltage",
|
||||||
|
value="LV"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="powerCapacity",
|
||||||
|
value=string.format("%d EU",industrialtest.REBattery.capacity)
|
||||||
|
}
|
||||||
|
},S("RE-Battery")),
|
||||||
|
[[
|
||||||
|
<mono></mono>
|
||||||
|
<left>
|
||||||
|
||<item name="industrialtest:advanced_re_battery" height="{{ITEM_HEIGHT}}"> <b>Advanced RE-Battery</b>||
|
||||||
|
</left>
|
||||||
|
]],
|
||||||
|
createMachineInformationTable({
|
||||||
|
{
|
||||||
|
name="voltage",
|
||||||
|
value="MV"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="powerCapacity",
|
||||||
|
value=string.format("%d EU",industrialtest.AdvancedREBattery.capacity)
|
||||||
|
}
|
||||||
|
},S("Advanced RE-Battery"),2),
|
||||||
|
[[
|
||||||
|
<mono></mono>
|
||||||
|
<left>
|
||||||
|
||<item name="industrialtest:energy_crystal" height="{{ITEM_HEIGHT}}"> <b>Energy Crystal</b>||
|
||||||
|
</left>
|
||||||
|
]],
|
||||||
|
createMachineInformationTable({
|
||||||
|
{
|
||||||
|
name="voltage",
|
||||||
|
value="HV"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="powerCapacity",
|
||||||
|
value=string.format("%d EU",industrialtest.EnergyCrystal.capacity)
|
||||||
|
}
|
||||||
|
},S("Energy Crystal"),3),
|
||||||
|
[[
|
||||||
|
<mono></mono>
|
||||||
|
<left>
|
||||||
|
||<item name="industrialtest:lapotron_crystal" height="{{ITEM_HEIGHT}}"> <b>Lapotron Crystal</b>||
|
||||||
|
</left>
|
||||||
|
]],
|
||||||
|
createMachineInformationTable({
|
||||||
|
{
|
||||||
|
name="voltage",
|
||||||
|
value="EV"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="powerCapacity",
|
||||||
|
value=string.format("%d EU",industrialtest.LapotronCrystal.capacity)
|
||||||
|
}
|
||||||
|
},S("Lapotron Crystal"),4)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
name="jetpacks",
|
name="jetpacks",
|
||||||
title=S("Jetpacks"),
|
title=S("Jetpacks"),
|
||||||
@@ -1418,13 +1495,408 @@ local pages={
|
|||||||
}
|
}
|
||||||
},S("Mining Laser"))
|
},S("Mining Laser"))
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
name="nanoSuit",
|
||||||
|
title=S("Nano Suit"),
|
||||||
|
icon="industrialtest:nano_bodyarmor",
|
||||||
|
content={
|
||||||
|
[[
|
||||||
|
<big>||Nano Suit||</big>
|
||||||
|
<left>
|
||||||
|
||Nano Suit is an armor which with power of electricity can reduce damage which player takes. It consists of following parts:||
|
||||||
|
</left>
|
||||||
|
<left>
|
||||||
|
||<item name="industrialtest:nano_helmet" height="{{ITEM_HEIGHT}}"> <b>Nano Helmet</b>||
|
||||||
|
</left>
|
||||||
|
]],
|
||||||
|
createMachineInformationTable({
|
||||||
|
{
|
||||||
|
name="voltage",
|
||||||
|
value="EV"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="powerCapacity",
|
||||||
|
value=string.format("%d EU",industrialtest.NanoSuit.capacity)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="opPower",
|
||||||
|
value=string.format("%d EU",industrialtest.NanoSuit:getPowerPerDamageForItem())
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="damageRed",
|
||||||
|
value="0.12"
|
||||||
|
}
|
||||||
|
},S("Nano Helmet")),
|
||||||
|
[[
|
||||||
|
<mono></mono>
|
||||||
|
<left>
|
||||||
|
||<item name="industrialtest:nano_bodyarmor" height="{{ITEM_HEIGHT}}"> <b>Nano Bodyarmor</b>||
|
||||||
|
</left>
|
||||||
|
]],
|
||||||
|
createMachineInformationTable({
|
||||||
|
{
|
||||||
|
name="voltage",
|
||||||
|
value="EV"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="powerCapacity",
|
||||||
|
value=string.format("%d EU",industrialtest.NanoSuit.capacity)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="opPower",
|
||||||
|
value=string.format("%d EU",industrialtest.NanoSuit:getPowerPerDamageForItem())
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="damageRed",
|
||||||
|
value="0.32"
|
||||||
|
}
|
||||||
|
},S("Nano Bodyarmor"),2),
|
||||||
|
[[
|
||||||
|
<mono></mono>
|
||||||
|
<left>
|
||||||
|
||<item name="industrialtest:nano_leggings" height="{{ITEM_HEIGHT}}"> <b>Nano Leggings</b>||
|
||||||
|
</left>
|
||||||
|
]],
|
||||||
|
createMachineInformationTable({
|
||||||
|
{
|
||||||
|
name="voltage",
|
||||||
|
value="EV"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="powerCapacity",
|
||||||
|
value=string.format("%d EU",industrialtest.NanoSuit.capacity)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="opPower",
|
||||||
|
value=string.format("%d EU",industrialtest.NanoSuit:getPowerPerDamageForItem())
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="damageRed",
|
||||||
|
value="0.3"
|
||||||
|
}
|
||||||
|
},S("Nano Leggings"),3),
|
||||||
|
[[
|
||||||
|
<mono></mono>
|
||||||
|
<left>
|
||||||
|
||<item name="industrialtest:nano_boots" height="{{ITEM_HEIGHT}}"> <b>Nano Boots</b>||
|
||||||
|
</left>
|
||||||
|
]],
|
||||||
|
createMachineInformationTable({
|
||||||
|
{
|
||||||
|
name="voltage",
|
||||||
|
value="EV"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="powerCapacity",
|
||||||
|
value=string.format("%d EU",industrialtest.NanoSuit.capacity)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="opPower",
|
||||||
|
value=string.format("%d EU",industrialtest.NanoSuit:getPowerPerDamageForItem())
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="damageRed",
|
||||||
|
value="0.24"
|
||||||
|
}
|
||||||
|
},S("Nano Boots"),4)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
name="quantumSuit",
|
||||||
|
title=S("Quantum Suit"),
|
||||||
|
icon="industrialtest:quantum_bodyarmor",
|
||||||
|
content={
|
||||||
|
[[
|
||||||
|
<big>||Quantum Suit||</big>
|
||||||
|
<left>
|
||||||
|
||Quantum Suit like Nano Suit is also capable of reducing damage with usage of electricity. However unlike the later it also provides various additional effects depending on armor part.||
|
||||||
|
</left>
|
||||||
|
<left>
|
||||||
|
||<item name="industrialtest:quantum_helmet" height="{{ITEM_HEIGHT}}"> <b>Quantum Helmet</b> - when equipped refills player breath allowing for staying underwater longer.||
|
||||||
|
</left>
|
||||||
|
]],
|
||||||
|
createMachineInformationTable({
|
||||||
|
{
|
||||||
|
name="voltage",
|
||||||
|
value="IV"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="powerCapacity",
|
||||||
|
value=string.format("%d EU",industrialtest.QuantumHelmet.capacity)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="Power per breath refill operation",
|
||||||
|
value=string.format("%d EU",industrialtest.QuantumHelmet._breathRefillOpPower)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="opPower",
|
||||||
|
value=string.format("%d EU",industrialtest.QuantumHelmet:getPowerPerDamageForItem())
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="damageRed",
|
||||||
|
value=tostring(industrialtest.QuantumHelmet:getReducedDamageForItem())
|
||||||
|
}
|
||||||
|
},S("Quantum Helmet")),
|
||||||
|
[[
|
||||||
|
<mono></mono>
|
||||||
|
<left>
|
||||||
|
||<item name="industrialtest:quantum_bodyarmor" height="{{ITEM_HEIGHT}}"> <b>Quantum Bodyarmor</b> - when equipped works like jetpack.||
|
||||||
|
</left>
|
||||||
|
]],
|
||||||
|
createMachineInformationTable({
|
||||||
|
{
|
||||||
|
name="voltage",
|
||||||
|
value="IV"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="powerCapacity",
|
||||||
|
value=string.format("%d EU",industrialtest.QuantumBodyarmor.capacity)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="Power per fly operation",
|
||||||
|
value=string.format("%d EU",industrialtest.ElectricJetpack._opPower)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="opPower",
|
||||||
|
value=string.format("%d EU",industrialtest.QuantumBodyarmor:getPowerPerDamageForItem())
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="damageRed",
|
||||||
|
value=tostring(industrialtest.QuantumBodyarmor:getReducedDamageForItem())
|
||||||
|
}
|
||||||
|
},S("Quantum Bodyarmor"),2),
|
||||||
|
[[
|
||||||
|
<mono></mono>
|
||||||
|
<left>
|
||||||
|
||<item name="industrialtest:quantum_leggings" height="{{ITEM_HEIGHT}}"> <b>Quantum Leggings</b> - when equipped increases player speed.||
|
||||||
|
</left>
|
||||||
|
]],
|
||||||
|
createMachineInformationTable({
|
||||||
|
{
|
||||||
|
name="voltage",
|
||||||
|
value="IV"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="powerCapacity",
|
||||||
|
value=string.format("%d EU",industrialtest.QuantumLeggings.capacity)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="Power per distance unit",
|
||||||
|
value=string.format("%d EU",industrialtest.QuantumLeggings._speedOpPower)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="opPower",
|
||||||
|
value=string.format("%d EU",industrialtest.QuantumLeggings:getPowerPerDamageForItem())
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="damageRed",
|
||||||
|
value=tostring(industrialtest.QuantumLeggings:getReducedDamageForItem())
|
||||||
|
}
|
||||||
|
},S("Quantum Leggings"),3),
|
||||||
|
[[
|
||||||
|
<mono></mono>
|
||||||
|
<left>
|
||||||
|
||<item name="industrialtest:quantum_boots" height="{{ITEM_HEIGHT}}"> <b>Quantum Boots</b> - when equipped increases player jump height and provides fall damage reduction.||
|
||||||
|
</left>
|
||||||
|
]],
|
||||||
|
createMachineInformationTable({
|
||||||
|
{
|
||||||
|
name="voltage",
|
||||||
|
value="IV"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="powerCapacity",
|
||||||
|
value=string.format("%d EU",industrialtest.QuantumBoots.capacity)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="Power per jump",
|
||||||
|
value=string.format("%d EU",industrialtest.QuantumBoots._jumpOpPower)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="Power per fall damage unit",
|
||||||
|
value=string.format("%d EU",industrialtest.QuantumBoots._fallDamageReductionOpPower)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="opPower",
|
||||||
|
value=string.format("%d EU",industrialtest.QuantumBoots:getPowerPerDamageForItem())
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="damageRed",
|
||||||
|
value=tostring(industrialtest.QuantumBoots:getReducedDamageForItem())
|
||||||
|
}
|
||||||
|
},S("Quantum Boots"),4)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
name="scanners",
|
||||||
|
title=S("Scanners"),
|
||||||
|
icon="industrialtest:od_scanner",
|
||||||
|
content={
|
||||||
|
[[
|
||||||
|
<big>||Scanners||</big>
|
||||||
|
<left>
|
||||||
|
||These tools provide way of detecting nearby ores in terrain. Such tool can be put to appropriate slot in <item name="industrialtest:miner" height="{{ITEM_HEIGHT}}"> <b>Miner</b> so it mines ores detected by scanner. Furthermore it can be used by player as well. There are currently 2 ore scanners which differ in detection range:||
|
||||||
|
</left>
|
||||||
|
<left>
|
||||||
|
||<item name="industrialtest:od_scanner" height="{{ITEM_HEIGHT}}"> <b>OD Scanner</b>||
|
||||||
|
</left>
|
||||||
|
]],
|
||||||
|
createMachineInformationTable({
|
||||||
|
{
|
||||||
|
name="voltage",
|
||||||
|
value="MV"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="powerStorage",
|
||||||
|
value=string.format("%d EU",industrialtest.ODScanner.capacity)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="opPower",
|
||||||
|
value=string.format("%d EU",industrialtest.ODScanner:getOpPower())
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="Distance",
|
||||||
|
value=tostring(industrialtest.ODScanner.distance)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="Distance in Miner",
|
||||||
|
value=tostring(industrialtest.ODScanner.minerDistance)
|
||||||
|
}
|
||||||
|
},S("OD Scanner")),
|
||||||
|
[[
|
||||||
|
<mono></mono>
|
||||||
|
<left>
|
||||||
|
||<item name="industrialtest:ov_scanner" height="{{ITEM_HEIGHT}}"> <b>OV Scanner</b>||
|
||||||
|
</left>
|
||||||
|
]],
|
||||||
|
createMachineInformationTable({
|
||||||
|
{
|
||||||
|
name="voltage",
|
||||||
|
value="MV"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="powerStorage",
|
||||||
|
value=string.format("%d EU",industrialtest.OVScanner.capacity)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="opPower",
|
||||||
|
value=string.format("%d EU",industrialtest.OVScanner:getOpPower())
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="Distance",
|
||||||
|
value=tostring(industrialtest.OVScanner.distance)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name="Distance in Miner",
|
||||||
|
value=tostring(industrialtest.OVScanner.minerDistance)
|
||||||
|
}
|
||||||
|
},S("OV Scanner"),2),
|
||||||
|
[[
|
||||||
|
<mono></mono>
|
||||||
|
<img name="industrialtest_guide_od_scanner.png">
|
||||||
|
<left>||Picture 1. <item name="industrialtest:od_scanner" height="{{ITEM_HEIGHT}}"> <b>OD Scanner</b> detecting some ores.||</left>
|
||||||
|
]]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
name="solarHelmet",
|
||||||
|
title=S("Solar Helmet"),
|
||||||
|
icon="industrialtest:solar_helmet",
|
||||||
|
content={
|
||||||
|
[[
|
||||||
|
<big>||Solar Helmet||</big>
|
||||||
|
<left>
|
||||||
|
||Solar Helmet consists of <item name="{{elementKeyIronHelmet}}" height="{{ITEM_HEIGHT}}"> <b>Iron Helmet</b> with <item name="industrialtest:solar_panel" height="{{ITEM_HEIGHT}}"> <b>Solar Panel</b> attached to the top of it. It is capable of charging electric gear equipped as armor while exposed to light. However it is less efficent than regular solar panels.||
|
||||||
|
</left>
|
||||||
|
]],
|
||||||
|
createMachineInformationTable({
|
||||||
|
{
|
||||||
|
name="efficiency",
|
||||||
|
value="0.5"
|
||||||
|
}
|
||||||
|
},S("Solar Panel"))
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
name="staticBoots",
|
||||||
|
title=S("Static Boots"),
|
||||||
|
icon="industrialtest:static_boots",
|
||||||
|
content={
|
||||||
|
[[
|
||||||
|
<big>||Static Boots||</big>
|
||||||
|
<left>
|
||||||
|
||Static Boots are <item name="{{elementKeyIronBoots}}" height="{{ITEM_HEIGHT}}"> <b>Iron Boots</b> with <item name="industrialtest:insulated_copper_cable" height="{{ITEM_HEIGHT}}"> <b>Insulated Copper Cable</b> attached to the bottom. They are capable of charging electric gear equipped as armor by using static electricity which is produced while player is walking.||
|
||||||
|
</left>
|
||||||
|
]],
|
||||||
|
createMachineInformationTable({
|
||||||
|
{
|
||||||
|
name="Nodes per EU",
|
||||||
|
value="5"
|
||||||
|
}
|
||||||
|
},S("Static Boots"))
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
name="treetap",
|
||||||
|
title=S("Treetap"),
|
||||||
|
icon=industrialtest.elementKeys.treetap,
|
||||||
|
content={
|
||||||
|
[[
|
||||||
|
<big>||Treetap||</big>
|
||||||
|
<left>
|
||||||
|
||Treetap is used to extract <item name="{{elementKeyStickyResin}}" height="{{ITEM_HEIGHT}}"> <b>Sticky Resin</b> from <item name="{{elementKeyRubberWood}}" height="{{ITEM_HEIGHT}}"> <b>Rubber Wood</b>.||
|
||||||
|
</left>
|
||||||
|
]],
|
||||||
|
createMachineInformationTable({
|
||||||
|
{
|
||||||
|
name="uses",
|
||||||
|
value=tostring(industrialtest.Treetap.uses)
|
||||||
|
}
|
||||||
|
},S("Treetap"))
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
name="wrench",
|
||||||
|
title=S("Wrench"),
|
||||||
|
icon="industrialtest:wrench",
|
||||||
|
content={
|
||||||
|
[[
|
||||||
|
<big>||Wrench||</big>
|
||||||
|
<left>
|
||||||
|
||Wrench is one of the most important tools in this mod. It is used to safely remove machines with no material loss. In many cases when machine is removed without Wrench it drops <item name="industrialtest:machine_block" height="{{ITEM_HEIGHT}}"> <b>Machine Block</b> instead.||
|
||||||
|
</left>
|
||||||
|
]],
|
||||||
|
createMachineInformationTable({
|
||||||
|
{
|
||||||
|
name="uses",
|
||||||
|
value=tostring(industrialtest.Wrench.uses)
|
||||||
|
}
|
||||||
|
},S("Wrench"))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
local function preprocessHypertext(content,vars)
|
local function preprocessHypertext(content,vars)
|
||||||
-- Find and replace strings which should be translated, this pattern matches any string that doesn't include | which is contained within || at both ends
|
-- Find and replace strings which should be translated, this pattern matches any string that doesn't include | which is contained within || at both ends
|
||||||
content=string.gsub(content,"||([^|]+)||",function(sourceString)
|
content=string.gsub(content,"||([^|]+)||",function(sourceString)
|
||||||
return S(sourceString)
|
-- Replace all sequences which should be treated as variables inside translation with format string
|
||||||
|
local trFormatIndex=1
|
||||||
|
local trFormatValues={}
|
||||||
|
sourceString=string.gsub(sourceString,"{{([^{}]+)}}",function(var)
|
||||||
|
local result=string.format("@%d",trFormatIndex)
|
||||||
|
trFormatIndex=trFormatIndex+1
|
||||||
|
table.insert(trFormatValues,vars[var] or "nil")
|
||||||
|
return result
|
||||||
|
end)
|
||||||
|
return S(sourceString,unpack(trFormatValues))
|
||||||
end)
|
end)
|
||||||
|
|
||||||
-- Replace all sequences which should be treated as variables with values provided in vars
|
-- Replace all sequences which should be treated as variables with values provided in vars
|
||||||
@@ -1436,17 +1908,18 @@ local function preprocessHypertext(content,vars)
|
|||||||
end
|
end
|
||||||
|
|
||||||
local function getGuideFormspec(playerName,pageName)
|
local function getGuideFormspec(playerName,pageName)
|
||||||
|
local PAGE_BUTTON_HEIGHT=0.7
|
||||||
|
|
||||||
local formspec={
|
local formspec={
|
||||||
"formspec_version[4]",
|
"formspec_version[4]",
|
||||||
"size[15,10.8]",
|
"size[15,10.8]",
|
||||||
"label[0.1,0.2;"..S("IndustrialTest Guide").."]",
|
"label[0.1,0.2;"..S("IndustrialTest Guide").."]",
|
||||||
--"scrollbaroptions[]",
|
string.format("scrollbaroptions[max=%f]",(#pages-10.3/PAGE_BUTTON_HEIGHT)*PAGE_BUTTON_HEIGHT*10),
|
||||||
"scrollbar[3.6,0.4;0.5,10.3;vertical;scrollbarList;0]",
|
"scrollbar[3.6,0.4;0.5,10.3;vertical;scrollbarList;0]",
|
||||||
"scroll_container[0.1,0.4;4,10.3;scrollbarList;vertical]"
|
"scroll_container[0.1,0.4;4,10.3;scrollbarList;vertical;0.1]"
|
||||||
}
|
}
|
||||||
|
|
||||||
-- Contents sidebar
|
-- Contents sidebar
|
||||||
local PAGE_BUTTON_HEIGHT=0.7
|
|
||||||
for i,page in ipairs(pages) do
|
for i,page in ipairs(pages) do
|
||||||
table.insert(formspec,string.format("container[0,%f]",(i-1)*PAGE_BUTTON_HEIGHT))
|
table.insert(formspec,string.format("container[0,%f]",(i-1)*PAGE_BUTTON_HEIGHT))
|
||||||
table.insert(formspec,string.format("item_image[0,0;%f,%f;%s]",PAGE_BUTTON_HEIGHT,PAGE_BUTTON_HEIGHT,page.icon))
|
table.insert(formspec,string.format("item_image[0,0;%f,%f;%s]",PAGE_BUTTON_HEIGHT,PAGE_BUTTON_HEIGHT,page.icon))
|
||||||
@@ -1466,9 +1939,12 @@ local function getGuideFormspec(playerName,pageName)
|
|||||||
elementKeyBucket=industrialtest.elementKeys.bucket,
|
elementKeyBucket=industrialtest.elementKeys.bucket,
|
||||||
elementKeyCoal=industrialtest.elementKeys.coal,
|
elementKeyCoal=industrialtest.elementKeys.coal,
|
||||||
elementKeyCopperIngot=industrialtest.elementKeys.copperIngot,
|
elementKeyCopperIngot=industrialtest.elementKeys.copperIngot,
|
||||||
|
elementKeyIronBoots=industrialtest.elementKeys.ironBoots,
|
||||||
|
elementKeyIronHelmet=industrialtest.elementKeys.ironHelmet,
|
||||||
elementKeyIronIngot=industrialtest.elementKeys.ironIngot,
|
elementKeyIronIngot=industrialtest.elementKeys.ironIngot,
|
||||||
elementKeyIronLump=industrialtest.elementKeys.ironLump,
|
elementKeyIronLump=industrialtest.elementKeys.ironLump,
|
||||||
elementKeyIronPickaxe=industrialtest.elementKeys.ironPickaxe,
|
elementKeyIronPickaxe=industrialtest.elementKeys.ironPickaxe,
|
||||||
|
elementKeyStickyResin=industrialtest.elementKeys.stickyResin,
|
||||||
elementKeyRubber=industrialtest.elementKeys.rubber,
|
elementKeyRubber=industrialtest.elementKeys.rubber,
|
||||||
elementKeyRubberWood=industrialtest.elementKeys.rubberWood
|
elementKeyRubberWood=industrialtest.elementKeys.rubberWood
|
||||||
})
|
})
|
||||||
|
|||||||
1462
locale/industrialtest.pl.po
Normal file
1462
locale/industrialtest.pl.po
Normal file
File diff suppressed because it is too large
Load Diff
1462
locale/industrialtest.pot
Normal file
1462
locale/industrialtest.pot
Normal file
File diff suppressed because it is too large
Load Diff
@@ -79,20 +79,20 @@ function industrialtest.CanningMachine.getFormspec(self,pos)
|
|||||||
local powerPercent=meta:get_int("industrialtest.powerAmount")/meta:get_int("industrialtest.powerCapacity")*100
|
local powerPercent=meta:get_int("industrialtest.powerAmount")/meta:get_int("industrialtest.powerCapacity")*100
|
||||||
local srcPercent=meta:get_float("srcTime")/self._canningTime*100
|
local srcPercent=meta:get_float("srcTime")/self._canningTime*100
|
||||||
local formspec={
|
local formspec={
|
||||||
"list[context;src;3.4,1.8;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(3.4,1.8,1,1),
|
industrialtest.internal.getItemSlotBg(3.4,1.8,1,1),
|
||||||
|
"list[context;src;3.4,1.8;1,1]",
|
||||||
(powerPercent>0 and "image[3.4,2.8;1,1;industrialtest_gui_electricity_bg.png^[lowpart:"..powerPercent..":industrialtest_gui_electricity_fg.png]"
|
(powerPercent>0 and "image[3.4,2.8;1,1;industrialtest_gui_electricity_bg.png^[lowpart:"..powerPercent..":industrialtest_gui_electricity_fg.png]"
|
||||||
or "image[3.4,2.8;1,1;industrialtest_gui_electricity_bg.png]"),
|
or "image[3.4,2.8;1,1;industrialtest_gui_electricity_bg.png]"),
|
||||||
"list[context;powerStorage;3.4,3.9;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(3.4,3.9,1,1),
|
industrialtest.internal.getItemSlotBg(3.4,3.9,1,1),
|
||||||
|
"list[context;powerStorage;3.4,3.9;1,1]",
|
||||||
(srcPercent>0 and "image[4.9,1.8;1,1;gui_furnace_arrow_bg.png^[lowpart:"..srcPercent..":gui_furnace_arrow_fg.png^[transformR270]"
|
(srcPercent>0 and "image[4.9,1.8;1,1;gui_furnace_arrow_bg.png^[lowpart:"..srcPercent..":gui_furnace_arrow_fg.png^[transformR270]"
|
||||||
or "image[4.9,1.8;1,1;gui_furnace_arrow_bg.png^[transformR270]"),
|
or "image[4.9,1.8;1,1;gui_furnace_arrow_bg.png^[transformR270]"),
|
||||||
"list[context;dst;6.4,1.8;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(6.4,1.8,1,1),
|
industrialtest.internal.getItemSlotBg(6.4,1.8,1,1),
|
||||||
"list[context;leftover;6.4,2.8;1,1]",
|
"list[context;dst;6.4,1.8;1,1]",
|
||||||
industrialtest.internal.getItemSlotBg(6.4,2.8,1,1),
|
industrialtest.internal.getItemSlotBg(6.4,2.8,1,1),
|
||||||
"list[context;upgrades;9,0.9;1,4]",
|
"list[context;leftover;6.4,2.8;1,1]",
|
||||||
industrialtest.internal.getItemSlotBg(9,0.9,1,4),
|
industrialtest.internal.getItemSlotBg(9,0.9,1,4),
|
||||||
|
"list[context;upgrades;9,0.9;1,4]",
|
||||||
"listring[context;src]",
|
"listring[context;src]",
|
||||||
"listring[context;dst]"
|
"listring[context;dst]"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,11 +52,11 @@ function industrialtest.Chargepad.getFormspec(self,pos)
|
|||||||
local parentFormspec=industrialtest.ActivatedElectricMachine.getFormspec(self,pos)
|
local parentFormspec=industrialtest.ActivatedElectricMachine.getFormspec(self,pos)
|
||||||
local charged=meta:get_int("industrialtest.powerAmount")/meta:get_int("industrialtest.powerCapacity")
|
local charged=meta:get_int("industrialtest.powerAmount")/meta:get_int("industrialtest.powerCapacity")
|
||||||
local formspec={
|
local formspec={
|
||||||
"list[context;charged;1,2.5;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(1,2.5,1,1),
|
industrialtest.internal.getItemSlotBg(1,2.5,1,1),
|
||||||
|
"list[context;charged;1,2.5;1,1]",
|
||||||
"label[0.9,3.9;"..S("Charge").."]",
|
"label[0.9,3.9;"..S("Charge").."]",
|
||||||
"list[context;discharged;3,2.5;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(3,2.5,1,1),
|
industrialtest.internal.getItemSlotBg(3,2.5,1,1),
|
||||||
|
"list[context;discharged;3,2.5;1,1]",
|
||||||
"label[2.7,3.9;"..S("Discharge").."]",
|
"label[2.7,3.9;"..S("Discharge").."]",
|
||||||
self.createPowerIndicatorWidget(charged,9,1),
|
self.createPowerIndicatorWidget(charged,9,1),
|
||||||
"listring[context;charged]",
|
"listring[context;charged]",
|
||||||
|
|||||||
@@ -95,7 +95,11 @@ function industrialtest.ElectricMachine.onTimer(self,pos,elapsed)
|
|||||||
end
|
end
|
||||||
|
|
||||||
function industrialtest.ElectricMachine.allowMetadataInventoryMove(self,pos,fromList,fromIndex,toList,toIndex,count)
|
function industrialtest.ElectricMachine.allowMetadataInventoryMove(self,pos,fromList,fromIndex,toList,toIndex,count)
|
||||||
|
local meta=minetest.get_meta(pos)
|
||||||
|
local inv=meta:get_inventory()
|
||||||
|
local movedItemStack=inv:get_stack(fromList,fromIndex)
|
||||||
local found=false
|
local found=false
|
||||||
|
|
||||||
if self.powerLists then
|
if self.powerLists then
|
||||||
for _,value in ipairs(self.powerLists) do
|
for _,value in ipairs(self.powerLists) do
|
||||||
if value.list==toList then
|
if value.list==toList then
|
||||||
@@ -104,7 +108,7 @@ function industrialtest.ElectricMachine.allowMetadataInventoryMove(self,pos,from
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
if found and not industrialtest.api.hasPowerStorage(movedItemStack:get_meta()) then
|
if found and not industrialtest.api.hasPowerStorage(movedItemStack:get_meta()) and not self.isValidElectricItemDef(movedItemStack) then
|
||||||
return 0
|
return 0
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -121,7 +125,7 @@ function industrialtest.ElectricMachine.allowMetadataInventoryPut(self,pos,listn
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
if found and not industrialtest.api.hasPowerStorage(stack:get_meta()) then
|
if found and not industrialtest.api.hasPowerStorage(stack:get_meta()) and not self.isValidElectricItemDef(stack) then
|
||||||
return 0
|
return 0
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -205,6 +209,11 @@ function industrialtest.ElectricMachine.powerExchange(self,pos)
|
|||||||
local powerFlow=meta:get_int("industrialtest.powerFlow")
|
local powerFlow=meta:get_int("industrialtest.powerFlow")
|
||||||
for _,listDesc in ipairs(self.powerLists) do
|
for _,listDesc in ipairs(self.powerLists) do
|
||||||
local slot=inv:get_stack(listDesc.list,1)
|
local slot=inv:get_stack(listDesc.list,1)
|
||||||
|
if not industrialtest.api.hasPowerStorage(slot:get_meta()) and self.isValidElectricItemDef(slot) then
|
||||||
|
local def=slot:get_definition()
|
||||||
|
def._industrialtest_self:prepare(slot)
|
||||||
|
inv:set_stack(listDesc.list,1,slot)
|
||||||
|
end
|
||||||
if slot:get_count()>0 then
|
if slot:get_count()>0 then
|
||||||
if listDesc.direction=="o" then
|
if listDesc.direction=="o" then
|
||||||
if meta:get_int("industrialtest.powerAmount")<=0 then
|
if meta:get_int("industrialtest.powerAmount")<=0 then
|
||||||
@@ -235,6 +244,12 @@ function industrialtest.ElectricMachine.powerExchange(self,pos)
|
|||||||
return shouldRerunTimer
|
return shouldRerunTimer
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- Checks if itemstack has a valid electric item definition, even if it's not prepared
|
||||||
|
function industrialtest.ElectricMachine.isValidElectricItemDef(itemstack)
|
||||||
|
local def=itemstack:get_definition()
|
||||||
|
return def._industrialtest_self and def._industrialtest_self.flow and def._industrialtest_self.flow and def._industrialtest_self.prepare
|
||||||
|
end
|
||||||
|
|
||||||
function industrialtest.ElectricMachine.createPowerIndicatorWidget(charged,x,y)
|
function industrialtest.ElectricMachine.createPowerIndicatorWidget(charged,x,y)
|
||||||
return table.concat({
|
return table.concat({
|
||||||
string.format("box[%f,%f;0.3,4.8;#202020]",x,y),
|
string.format("box[%f,%f;0.3,4.8;#202020]",x,y),
|
||||||
|
|||||||
@@ -36,13 +36,13 @@ local function getFormspec(self,pos)
|
|||||||
local fuel=self.getFuel(fluid)
|
local fuel=self.getFuel(fluid)
|
||||||
local tile=(fuel and fuel.texture or "industrialtest_gui_fluid_bg.png")
|
local tile=(fuel and fuel.texture or "industrialtest_gui_fluid_bg.png")
|
||||||
local formspec={
|
local formspec={
|
||||||
"list[context;src;2,1.8;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(2,1.8,1,1),
|
industrialtest.internal.getItemSlotBg(2,1.8,1,1),
|
||||||
|
"list[context;src;2,1.8;1,1]",
|
||||||
(fluidPercent>0 and "image[2,3;1,1;industrialtest_gui_fluid_bg.png^[lowpart:"..fluidPercent..":"..tile.."]" or "image[2,3;1,1;industrialtest_gui_fluid_bg.png]"),
|
(fluidPercent>0 and "image[2,3;1,1;industrialtest_gui_fluid_bg.png^[lowpart:"..fluidPercent..":"..tile.."]" or "image[2,3;1,1;industrialtest_gui_fluid_bg.png]"),
|
||||||
"list[context;dst;2,4.2;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(2,4.2,1,1),
|
industrialtest.internal.getItemSlotBg(2,4.2,1,1),
|
||||||
"list[context;charged;6,3;1,1]",
|
"list[context;dst;2,4.2;1,1]",
|
||||||
industrialtest.internal.getItemSlotBg(6,3,1,1),
|
industrialtest.internal.getItemSlotBg(6,3,1,1),
|
||||||
|
"list[context;charged;6,3;1,1]",
|
||||||
self.createPowerIndicatorWidget(powerPercent,9,1),
|
self.createPowerIndicatorWidget(powerPercent,9,1),
|
||||||
"listring[context;src]",
|
"listring[context;src]",
|
||||||
"listring[context;dst]"
|
"listring[context;dst]"
|
||||||
|
|||||||
@@ -72,12 +72,12 @@ function industrialtest.Generator.getFormspec(self,pos)
|
|||||||
local fuelPercent=meta:get_float("fuelTime")/meta:get_float("maxFuelTime")*100
|
local fuelPercent=meta:get_float("fuelTime")/meta:get_float("maxFuelTime")*100
|
||||||
local charged=meta:get_int("industrialtest.powerAmount")/meta:get_int("industrialtest.powerCapacity")
|
local charged=meta:get_int("industrialtest.powerAmount")/meta:get_int("industrialtest.powerCapacity")
|
||||||
local formspec={
|
local formspec={
|
||||||
"list[context;charged;4.7,1.8;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(4.7,1.8,1,1),
|
industrialtest.internal.getItemSlotBg(4.7,1.8,1,1),
|
||||||
|
"list[context;charged;4.7,1.8;1,1]",
|
||||||
(fuelPercent>0 and "image[4.7,2.8;1,1;default_furnace_fire_bg.png^[lowpart:"..fuelPercent..":default_furnace_fire_fg.png]"
|
(fuelPercent>0 and "image[4.7,2.8;1,1;default_furnace_fire_bg.png^[lowpart:"..fuelPercent..":default_furnace_fire_fg.png]"
|
||||||
or "image[4.7,2.8;1,1;default_furnace_fire_bg.png]"),
|
or "image[4.7,2.8;1,1;default_furnace_fire_bg.png]"),
|
||||||
"list[context;src;4.7,3.9;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(4.7,3.9,1,1),
|
industrialtest.internal.getItemSlotBg(4.7,3.9,1,1),
|
||||||
|
"list[context;src;4.7,3.9;1,1]",
|
||||||
self.createPowerIndicatorWidget(charged,9,1),
|
self.createPowerIndicatorWidget(charged,9,1),
|
||||||
"listring[context;src]"
|
"listring[context;src]"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -80,18 +80,18 @@ function industrialtest.InductionFurnace.getFormspec(self,pos)
|
|||||||
local srcPercent=maxSrcTime>0 and meta:get_float("srcTime")/maxSrcTime*100 or 0
|
local srcPercent=maxSrcTime>0 and meta:get_float("srcTime")/maxSrcTime*100 or 0
|
||||||
local heat=meta:get_int("heat")
|
local heat=meta:get_int("heat")
|
||||||
local formspec={
|
local formspec={
|
||||||
"list[context;src;3.7,1.8;2,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(3.7,1.8,2,1),
|
industrialtest.internal.getItemSlotBg(3.7,1.8,2,1),
|
||||||
|
"list[context;src;3.7,1.8;2,1]",
|
||||||
(powerPercent>0 and "image[3.7,2.8;1,1;industrialtest_gui_electricity_bg.png^[lowpart:"..powerPercent..":industrialtest_gui_electricity_fg.png]"
|
(powerPercent>0 and "image[3.7,2.8;1,1;industrialtest_gui_electricity_bg.png^[lowpart:"..powerPercent..":industrialtest_gui_electricity_fg.png]"
|
||||||
or "image[3.7,2.8;1,1;industrialtest_gui_electricity_bg.png]"),
|
or "image[3.7,2.8;1,1;industrialtest_gui_electricity_bg.png]"),
|
||||||
"list[context;powerStorage;3.7,3.9;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(3.7,3.9,1,1),
|
industrialtest.internal.getItemSlotBg(3.7,3.9,1,1),
|
||||||
|
"list[context;powerStorage;3.7,3.9;1,1]",
|
||||||
(srcPercent>0 and "image[4.9,2.8;1,1;gui_furnace_arrow_bg.png^[lowpart:"..srcPercent..":gui_furnace_arrow_fg.png^[transformR270]"
|
(srcPercent>0 and "image[4.9,2.8;1,1;gui_furnace_arrow_bg.png^[lowpart:"..srcPercent..":gui_furnace_arrow_fg.png^[transformR270]"
|
||||||
or "image[4.9,2.8;1,1;gui_furnace_arrow_bg.png^[transformR270]"),
|
or "image[4.9,2.8;1,1;gui_furnace_arrow_bg.png^[transformR270]"),
|
||||||
"list[context;dst;6,2.8;2,1;]",
|
|
||||||
industrialtest.internal.getItemSlotBg(6,2.8,2,1),
|
industrialtest.internal.getItemSlotBg(6,2.8,2,1),
|
||||||
"list[context;upgrades;9,0.9;1,4]",
|
"list[context;dst;6,2.8;2,1;]",
|
||||||
industrialtest.internal.getItemSlotBg(9,0.9,1,4),
|
industrialtest.internal.getItemSlotBg(9,0.9,1,4),
|
||||||
|
"list[context;upgrades;9,0.9;1,4]",
|
||||||
"label[0.5,2.8;"..minetest.formspec_escape(S("Heat: @1 %",heat)).."]",
|
"label[0.5,2.8;"..minetest.formspec_escape(S("Heat: @1 %",heat)).."]",
|
||||||
"listring[context;src]",
|
"listring[context;src]",
|
||||||
"listring[context;dst]"
|
"listring[context;dst]"
|
||||||
|
|||||||
@@ -80,16 +80,16 @@ function industrialtest.IronFurnace.getFormspec(self,pos)
|
|||||||
}
|
}
|
||||||
elseif industrialtest.mclAvailable then
|
elseif industrialtest.mclAvailable then
|
||||||
formspec={
|
formspec={
|
||||||
|
mcl_formspec.get_itemslot_bg_v4(3.4,1.8,1,1),
|
||||||
"list[context;src;3.4,1.8;1,1]",
|
"list[context;src;3.4,1.8;1,1]",
|
||||||
mcl_formspec.get_itemslot_bg(3.4,1.8,1,1),
|
|
||||||
(fuelPercent>0 and "image[3.4,2.8;1,1;default_furnace_fire_bg.png^[lowpart:"..fuelPercent..":default_furnace_fire_fg.png]"
|
(fuelPercent>0 and "image[3.4,2.8;1,1;default_furnace_fire_bg.png^[lowpart:"..fuelPercent..":default_furnace_fire_fg.png]"
|
||||||
or "image[3.4,2.8;1,1;default_furnace_fire_bg.png]"),
|
or "image[3.4,2.8;1,1;default_furnace_fire_bg.png]"),
|
||||||
|
mcl_formspec.get_itemslot_bg_v4(3.4,3.9,1,1),
|
||||||
"list[context;fuel;3.4,3.9;1,1]",
|
"list[context;fuel;3.4,3.9;1,1]",
|
||||||
mcl_formspec.get_itemslot_bg(3.4,3.9,1,1),
|
|
||||||
(srcPercent>0 and "image[4.9,2.8;1,1;gui_furnace_arrow_bg.png^[lowpart:"..srcPercent..":gui_furnace_arrow_fg.png^[transformR270]"
|
(srcPercent>0 and "image[4.9,2.8;1,1;gui_furnace_arrow_bg.png^[lowpart:"..srcPercent..":gui_furnace_arrow_fg.png^[transformR270]"
|
||||||
or "image[4.9,2.8;1,1;gui_furnace_arrow_bg.png^[transformR270]"),
|
or "image[4.9,2.8;1,1;gui_furnace_arrow_bg.png^[transformR270]"),
|
||||||
|
mcl_formspec.get_itemslot_bg_v4(6.4,2.8,1,1),
|
||||||
"list[context;dst;6.4,2.8;1,1]",
|
"list[context;dst;6.4,2.8;1,1]",
|
||||||
mcl_formspec.get_itemslot_bg(6.4,2.8,1,1),
|
|
||||||
"listring[context;src]",
|
"listring[context;src]",
|
||||||
"listring[context;dst]"
|
"listring[context;dst]"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -54,12 +54,13 @@ function industrialtest.Machine.getFormspec(self,pos)
|
|||||||
}
|
}
|
||||||
elseif industrialtest.mclAvailable then
|
elseif industrialtest.mclAvailable then
|
||||||
formspec={
|
formspec={
|
||||||
"size[10.04,12]",
|
"formspec_version[4]",
|
||||||
"label[0.25,0.25;"..self.description.."]",
|
"size[12,12.5]",
|
||||||
|
"label[0.5,0.5;"..self.description.."]",
|
||||||
|
mcl_formspec.get_itemslot_bg_v4(0.5,7,9,3),
|
||||||
"list[current_player;main;0.5,7;9,3;9]",
|
"list[current_player;main;0.5,7;9,3;9]",
|
||||||
mcl_formspec.get_itemslot_bg(0.5,7,9,3),
|
mcl_formspec.get_itemslot_bg_v4(0.5,11,9,1),
|
||||||
"list[current_player;main;0.5,10.24;9,1]",
|
"list[current_player;main;0.5,11;9,1]",
|
||||||
mcl_formspec.get_itemslot_bg(0.5,10.24,9,1),
|
|
||||||
"listring[current_player;main]"
|
"listring[current_player;main]"
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -29,7 +29,8 @@ end
|
|||||||
local function hasMetalBoots(player)
|
local function hasMetalBoots(player)
|
||||||
local inv
|
local inv
|
||||||
if industrialtest.mtgAvailable then
|
if industrialtest.mtgAvailable then
|
||||||
_,inv=armor:get_valid_player(player,"")
|
local _unused
|
||||||
|
_unused,inv=armor:get_valid_player(player,"")
|
||||||
elseif industrialtest.mclAvailable then
|
elseif industrialtest.mclAvailable then
|
||||||
inv=player:get_inventory()
|
inv=player:get_inventory()
|
||||||
end
|
end
|
||||||
@@ -129,6 +130,7 @@ function industrialtest.Magnetizer.getFormspec(self,pos)
|
|||||||
local formspec={
|
local formspec={
|
||||||
(powerPercent>0 and "image[4.7,2.7;1,1;industrialtest_gui_electricity_bg.png^[lowpart:"..powerPercent..":industrialtest_gui_electricity_fg.png]"
|
(powerPercent>0 and "image[4.7,2.7;1,1;industrialtest_gui_electricity_bg.png^[lowpart:"..powerPercent..":industrialtest_gui_electricity_fg.png]"
|
||||||
or "image[4.7,2.7;1,1;industrialtest_gui_electricity_bg.png]"),
|
or "image[4.7,2.7;1,1;industrialtest_gui_electricity_bg.png]"),
|
||||||
|
industrialtest.internal.getItemSlotBg(4.7,3.7,1,1),
|
||||||
"list[context;powerStorage;4.7,3.7;1,1]",
|
"list[context;powerStorage;4.7,3.7;1,1]",
|
||||||
"listring[context;powerStorage]"
|
"listring[context;powerStorage]"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -187,22 +187,22 @@ function industrialtest.Miner.getFormspec(self,pos)
|
|||||||
local powerPercent=meta:get_int("industrialtest.powerAmount")/meta:get_int("industrialtest.powerCapacity")*100
|
local powerPercent=meta:get_int("industrialtest.powerAmount")/meta:get_int("industrialtest.powerCapacity")*100
|
||||||
local formspec={
|
local formspec={
|
||||||
"label[0.7,1.15;"..S("Drill").."]",
|
"label[0.7,1.15;"..S("Drill").."]",
|
||||||
"list[context;drill;0.7,1.5;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(0.7,1.5,1,1),
|
industrialtest.internal.getItemSlotBg(0.7,1.5,1,1),
|
||||||
|
"list[context;drill;0.7,1.5;1,1]",
|
||||||
"label[0.7,2.75;"..S("Pipe").."]",
|
"label[0.7,2.75;"..S("Pipe").."]",
|
||||||
"list[context;src;0.7,3.1;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(0.7,3.1,1,1),
|
industrialtest.internal.getItemSlotBg(0.7,3.1,1,1),
|
||||||
|
"list[context;src;0.7,3.1;1,1]",
|
||||||
"label[0.7,4.35;"..S("Scanner").."]",
|
"label[0.7,4.35;"..S("Scanner").."]",
|
||||||
"list[context;scanner;0.7,4.7;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(0.7,4.7,1,1),
|
industrialtest.internal.getItemSlotBg(0.7,4.7,1,1),
|
||||||
"list[context;dst;2.28,1.9;5,3]",
|
"list[context;scanner;0.7,4.7;1,1]",
|
||||||
industrialtest.internal.getItemSlotBg(2.28,1.9,5,3),
|
industrialtest.internal.getItemSlotBg(2.28,1.9,5,3),
|
||||||
"list[context;upgrades;9.1,1.2;1,1]",
|
"list[context;dst;2.28,1.9;5,3]",
|
||||||
industrialtest.internal.getItemSlotBg(9.1,1.2,1,1),
|
industrialtest.internal.getItemSlotBg(9.1,1.2,1,1),
|
||||||
|
"list[context;upgrades;9.1,1.2;1,1]",
|
||||||
(powerPercent>0 and "image[9.1,2.29;1,1;industrialtest_gui_electricity_bg.png^[lowpart:"..powerPercent..":industrialtest_gui_electricity_fg.png]"
|
(powerPercent>0 and "image[9.1,2.29;1,1;industrialtest_gui_electricity_bg.png^[lowpart:"..powerPercent..":industrialtest_gui_electricity_fg.png]"
|
||||||
or "image[9.1,2.29;1,1;industrialtest_gui_electricity_bg.png]"),
|
or "image[9.1,2.29;1,1;industrialtest_gui_electricity_bg.png]"),
|
||||||
"list[context;powerStorage;9.1,3.5;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(9.1,3.5,1,1),
|
industrialtest.internal.getItemSlotBg(9.1,3.5,1,1),
|
||||||
|
"list[context;powerStorage;9.1,3.5;1,1]",
|
||||||
"listring[context;src]",
|
"listring[context;src]",
|
||||||
"listring[context;dst]"
|
"listring[context;dst]"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -86,10 +86,10 @@ function industrialtest.Reactor.getFormspec(self,pos)
|
|||||||
local size=math.floor(meta:get_int("size")/3)
|
local size=math.floor(meta:get_int("size")/3)
|
||||||
local switchText=(meta:get_int("enabled")==0 and S("Start") or S("Stop"))
|
local switchText=(meta:get_int("enabled")==0 and S("Start") or S("Stop"))
|
||||||
local formspec={
|
local formspec={
|
||||||
"list[context;fuel;1,1;"..size..","..size.."]",
|
|
||||||
industrialtest.internal.getItemSlotBg(1,1,size,size),
|
industrialtest.internal.getItemSlotBg(1,1,size,size),
|
||||||
"list[context;charged;7,2.8;1,1]",
|
"list[context;fuel;1,1;"..size..","..size.."]",
|
||||||
industrialtest.internal.getItemSlotBg(7.7,2.8,1,1),
|
industrialtest.internal.getItemSlotBg(7.7,2.8,1,1),
|
||||||
|
"list[context;charged;7,2.8;1,1]",
|
||||||
"button[7.7,1;1,0.8;toggle;"..minetest.formspec_escape(switchText).."]",
|
"button[7.7,1;1,0.8;toggle;"..minetest.formspec_escape(switchText).."]",
|
||||||
self.createPowerIndicatorWidget(charged,9,1),
|
self.createPowerIndicatorWidget(charged,9,1),
|
||||||
"listring[context;fuel]"
|
"listring[context;fuel]"
|
||||||
|
|||||||
@@ -50,11 +50,11 @@ function industrialtest.PowerStorage.getFormspec(self,pos)
|
|||||||
local meta=minetest.get_meta(pos)
|
local meta=minetest.get_meta(pos)
|
||||||
local charged=meta:get_int("industrialtest.powerAmount")/meta:get_int("industrialtest.powerCapacity")
|
local charged=meta:get_int("industrialtest.powerAmount")/meta:get_int("industrialtest.powerCapacity")
|
||||||
local formspec={
|
local formspec={
|
||||||
"list[context;charged;1,2.5;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(1,2.5,1,1),
|
industrialtest.internal.getItemSlotBg(1,2.5,1,1),
|
||||||
|
"list[context;charged;1,2.5;1,1]",
|
||||||
"label[0.9,3.9;"..S("Charge").."]",
|
"label[0.9,3.9;"..S("Charge").."]",
|
||||||
"list[context;discharged;3,2.5;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(3,2.5,1,1),
|
industrialtest.internal.getItemSlotBg(3,2.5,1,1),
|
||||||
|
"list[context;discharged;3,2.5;1,1]",
|
||||||
"label[2.7,3.9;"..S("Discharge").."]",
|
"label[2.7,3.9;"..S("Discharge").."]",
|
||||||
self.createPowerIndicatorWidget(charged,9,1),
|
self.createPowerIndicatorWidget(charged,9,1),
|
||||||
"listring[context;charged]",
|
"listring[context;charged]",
|
||||||
|
|||||||
@@ -85,12 +85,12 @@ function industrialtest.Pump.getFormspec(self,pos)
|
|||||||
local pumpFluid=industrialtest.api.getPumpFluid(fluidType)
|
local pumpFluid=industrialtest.api.getPumpFluid(fluidType)
|
||||||
local tile=(pumpFluid and pumpFluid.texture or "industrialtest_gui_fluid_bg.png")
|
local tile=(pumpFluid and pumpFluid.texture or "industrialtest_gui_fluid_bg.png")
|
||||||
local formspec={
|
local formspec={
|
||||||
"list[context;src;3.2,1.7;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(3.2,1.7,1,1),
|
industrialtest.internal.getItemSlotBg(3.2,1.7,1,1),
|
||||||
"list[context;dst;4.6,1.7;1,1]",
|
"list[context;src;3.2,1.7;1,1]",
|
||||||
industrialtest.internal.getItemSlotBg(4.6,1.7,1,1),
|
industrialtest.internal.getItemSlotBg(4.6,1.7,1,1),
|
||||||
"list[context;powerStorage;3.9,3.7;1,1]",
|
"list[context;dst;4.6,1.7;1,1]",
|
||||||
industrialtest.internal.getItemSlotBg(3.9,3.7,1,1),
|
industrialtest.internal.getItemSlotBg(3.9,3.7,1,1),
|
||||||
|
"list[context;powerStorage;3.9,3.7;1,1]",
|
||||||
(powerPercent>0 and "image[3.9,2.7;1,1;industrialtest_gui_electricity_bg.png^[lowpart:"..powerPercent..":industrialtest_gui_electricity_fg.png]"
|
(powerPercent>0 and "image[3.9,2.7;1,1;industrialtest_gui_electricity_bg.png^[lowpart:"..powerPercent..":industrialtest_gui_electricity_fg.png]"
|
||||||
or "image[3.9,2.7;1,1;industrialtest_gui_electricity_bg.png]"),
|
or "image[3.9,2.7;1,1;industrialtest_gui_electricity_bg.png]"),
|
||||||
(srcPercent>0 and "image[6.7,2.7;1,1;gui_furnace_arrow_bg.png^[lowpart:"..srcPercent..":gui_furnace_arrow_fg.png]"
|
(srcPercent>0 and "image[6.7,2.7;1,1;gui_furnace_arrow_bg.png^[lowpart:"..srcPercent..":gui_furnace_arrow_fg.png]"
|
||||||
|
|||||||
@@ -84,20 +84,20 @@ function industrialtest.RotaryMacerator.getFormspec(self,pos)
|
|||||||
local rpm=meta:get_int("rpm")
|
local rpm=meta:get_int("rpm")
|
||||||
local buttonMaintainSpeedText=meta:get_int("maintainSpeed")==1 and S("Don't maintain speed") or S("Maintain speed")
|
local buttonMaintainSpeedText=meta:get_int("maintainSpeed")==1 and S("Don't maintain speed") or S("Maintain speed")
|
||||||
local formspec={
|
local formspec={
|
||||||
"list[context;src;3.8,1.8;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(3.8,1.8,1,1),
|
industrialtest.internal.getItemSlotBg(3.8,1.8,1,1),
|
||||||
"list[context;modifier;4.9,1.8;1,1]",
|
"list[context;src;3.8,1.8;1,1]",
|
||||||
industrialtest.internal.getItemSlotBg(4.9,1.8,1,1),
|
industrialtest.internal.getItemSlotBg(4.9,1.8,1,1),
|
||||||
|
"list[context;modifier;4.9,1.8;1,1]",
|
||||||
(powerPercent>0 and "image[3.8,2.8;1,1;industrialtest_gui_electricity_bg.png^[lowpart:"..powerPercent..":industrialtest_gui_electricity_fg.png]"
|
(powerPercent>0 and "image[3.8,2.8;1,1;industrialtest_gui_electricity_bg.png^[lowpart:"..powerPercent..":industrialtest_gui_electricity_fg.png]"
|
||||||
or "image[3.8,2.8;1,1;industrialtest_gui_electricity_bg.png]"),
|
or "image[3.8,2.8;1,1;industrialtest_gui_electricity_bg.png]"),
|
||||||
"list[context;powerStorage;3.8,3.9;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(3.8,3.9,1,1),
|
industrialtest.internal.getItemSlotBg(3.8,3.9,1,1),
|
||||||
|
"list[context;powerStorage;3.8,3.9;1,1]",
|
||||||
(srcPercent>0 and "image[4.9,2.8;1,1;gui_furnace_arrow_bg.png^[lowpart:"..srcPercent..":gui_furnace_arrow_fg.png^[transformR270]"
|
(srcPercent>0 and "image[4.9,2.8;1,1;gui_furnace_arrow_bg.png^[lowpart:"..srcPercent..":gui_furnace_arrow_fg.png^[transformR270]"
|
||||||
or "image[4.9,2.8;1,1;gui_furnace_arrow_bg.png^[transformR270]"),
|
or "image[4.9,2.8;1,1;gui_furnace_arrow_bg.png^[transformR270]"),
|
||||||
"list[context;dst;6,2.8;1,1;]",
|
|
||||||
industrialtest.internal.getItemSlotBg(6,2.8,1,1),
|
industrialtest.internal.getItemSlotBg(6,2.8,1,1),
|
||||||
"list[context;upgrades;9,0.9;1,4]",
|
"list[context;dst;6,2.8;1,1;]",
|
||||||
industrialtest.internal.getItemSlotBg(9,0.9,1,4),
|
industrialtest.internal.getItemSlotBg(9,0.9,1,4),
|
||||||
|
"list[context;upgrades;9,0.9;1,4]",
|
||||||
"label[0.5,2.8;"..minetest.formspec_escape(S("Speed: @1",rpm)).."]",
|
"label[0.5,2.8;"..minetest.formspec_escape(S("Speed: @1",rpm)).."]",
|
||||||
"button[0.5,3.4;3,0.8;maintainSpeed;"..minetest.formspec_escape(buttonMaintainSpeedText).."]",
|
"button[0.5,3.4;3,0.8;maintainSpeed;"..minetest.formspec_escape(buttonMaintainSpeedText).."]",
|
||||||
"listring[context;src]",
|
"listring[context;src]",
|
||||||
|
|||||||
@@ -56,18 +56,18 @@ function industrialtest.SimpleElectricItemProcessor.getFormspec(self,pos)
|
|||||||
local recipeOverride=self.isRecipeOverride(meta)
|
local recipeOverride=self.isRecipeOverride(meta)
|
||||||
local formspec={
|
local formspec={
|
||||||
(recipeOverride and "label[3.4,1.5;"..S("Recipe override: @1", minetest.registered_items[recipeOverride].description).."]" or ""),
|
(recipeOverride and "label[3.4,1.5;"..S("Recipe override: @1", minetest.registered_items[recipeOverride].description).."]" or ""),
|
||||||
"list[context;src;3.4,1.8;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(3.4,1.8,1,1),
|
industrialtest.internal.getItemSlotBg(3.4,1.8,1,1),
|
||||||
|
"list[context;src;3.4,1.8;1,1]",
|
||||||
(powerPercent>0 and "image[3.4,2.8;1,1;industrialtest_gui_electricity_bg.png^[lowpart:"..powerPercent..":industrialtest_gui_electricity_fg.png]"
|
(powerPercent>0 and "image[3.4,2.8;1,1;industrialtest_gui_electricity_bg.png^[lowpart:"..powerPercent..":industrialtest_gui_electricity_fg.png]"
|
||||||
or "image[3.4,2.8;1,1;industrialtest_gui_electricity_bg.png]"),
|
or "image[3.4,2.8;1,1;industrialtest_gui_electricity_bg.png]"),
|
||||||
"list[context;powerStorage;3.4,3.9;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(3.4,3.9,1,1),
|
industrialtest.internal.getItemSlotBg(3.4,3.9,1,1),
|
||||||
|
"list[context;powerStorage;3.4,3.9;1,1]",
|
||||||
(srcPercent>0 and "image[4.9,2.8;1,1;gui_furnace_arrow_bg.png^[lowpart:"..srcPercent..":gui_furnace_arrow_fg.png^[transformR270]"
|
(srcPercent>0 and "image[4.9,2.8;1,1;gui_furnace_arrow_bg.png^[lowpart:"..srcPercent..":gui_furnace_arrow_fg.png^[transformR270]"
|
||||||
or "image[4.9,2.8;1,1;gui_furnace_arrow_bg.png^[transformR270]"),
|
or "image[4.9,2.8;1,1;gui_furnace_arrow_bg.png^[transformR270]"),
|
||||||
"list[context;dst;6.4,2.8;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(6.4,2.8,1,1),
|
industrialtest.internal.getItemSlotBg(6.4,2.8,1,1),
|
||||||
"list[context;upgrades;9,0.9;1,4]",
|
"list[context;dst;6.4,2.8;1,1]",
|
||||||
industrialtest.internal.getItemSlotBg(9,0.9,1,4),
|
industrialtest.internal.getItemSlotBg(9,0.9,1,4),
|
||||||
|
"list[context;upgrades;9,0.9;1,4]",
|
||||||
"listring[context;src]",
|
"listring[context;src]",
|
||||||
"listring[context;dst]"
|
"listring[context;dst]"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,8 +48,8 @@ function industrialtest.SolarPanelBase.getFormspec(self,pos)
|
|||||||
local amount=minetest.get_natural_light(vector.offset(pos,0,1,0))/15.0
|
local amount=minetest.get_natural_light(vector.offset(pos,0,1,0))/15.0
|
||||||
local charging=amount>0.5
|
local charging=amount>0.5
|
||||||
local formspec={
|
local formspec={
|
||||||
"list[context;charged;4.7,1.8;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(4.7,1.8,1,1),
|
industrialtest.internal.getItemSlotBg(4.7,1.8,1,1),
|
||||||
|
"list[context;charged;4.7,1.8;1,1]",
|
||||||
(charging and "image[4.7,2.8;1,1;industrialtest_gui_sun_fg.png]"
|
(charging and "image[4.7,2.8;1,1;industrialtest_gui_sun_fg.png]"
|
||||||
or "image[4.7,2.8;1,1;industrialtest_gui_sun_bg.png]"),
|
or "image[4.7,2.8;1,1;industrialtest_gui_sun_bg.png]"),
|
||||||
"listring[context;charged]"
|
"listring[context;charged]"
|
||||||
|
|||||||
@@ -73,14 +73,14 @@ function industrialtest.ToolWorkshop.getFormspec(self,pos)
|
|||||||
local meta=minetest.get_meta(pos)
|
local meta=minetest.get_meta(pos)
|
||||||
local powerPercent=meta:get_int("industrialtest.powerAmount")/meta:get_int("industrialtest.powerCapacity")*100
|
local powerPercent=meta:get_int("industrialtest.powerAmount")/meta:get_int("industrialtest.powerCapacity")*100
|
||||||
local formspec={
|
local formspec={
|
||||||
"list[context;powerStorage;3.7,3.7;1,1;0]",
|
|
||||||
industrialtest.internal.getItemSlotBg(3.7,3.7,1,1),
|
industrialtest.internal.getItemSlotBg(3.7,3.7,1,1),
|
||||||
|
"list[context;powerStorage;3.7,3.7;1,1;0]",
|
||||||
(powerPercent>0 and "image[3.7,2.5;1,1;industrialtest_gui_electricity_bg.png^[lowpart:"..powerPercent..":industrialtest_gui_electricity_fg.png]"
|
(powerPercent>0 and "image[3.7,2.5;1,1;industrialtest_gui_electricity_bg.png^[lowpart:"..powerPercent..":industrialtest_gui_electricity_fg.png]"
|
||||||
or "image[3.7,2.5;1,1;industrialtest_gui_electricity_bg.png]"),
|
or "image[3.7,2.5;1,1;industrialtest_gui_electricity_bg.png]"),
|
||||||
"list[context;src;5.9,3.2;1,1;0]",
|
|
||||||
industrialtest.internal.getItemSlotBg(5.9,3.2,1,1),
|
industrialtest.internal.getItemSlotBg(5.9,3.2,1,1),
|
||||||
"list[context;upgrades;9,0.9;1,4]",
|
"list[context;src;5.9,3.2;1,1;0]",
|
||||||
industrialtest.internal.getItemSlotBg(9,0.9,1,4),
|
industrialtest.internal.getItemSlotBg(9,0.9,1,4),
|
||||||
|
"list[context;upgrades;9,0.9;1,4]",
|
||||||
"listring[context;src]"
|
"listring[context;src]"
|
||||||
}
|
}
|
||||||
return parentFormspec..table.concat(formspec,"")
|
return parentFormspec..table.concat(formspec,"")
|
||||||
|
|||||||
@@ -58,8 +58,8 @@ function industrialtest.WindMill.getFormspec(self,pos)
|
|||||||
local meta=minetest.get_meta(pos)
|
local meta=minetest.get_meta(pos)
|
||||||
local charging=meta:get_int("charging")
|
local charging=meta:get_int("charging")
|
||||||
local formspec={
|
local formspec={
|
||||||
"list[context;charged;4.7,1.8;1,1]",
|
|
||||||
industrialtest.internal.getItemSlotBg(4.7,1.8,1,1),
|
industrialtest.internal.getItemSlotBg(4.7,1.8,1,1),
|
||||||
|
"list[context;charged;4.7,1.8;1,1]",
|
||||||
(charging>0 and "image[4.7,3;1,1;industrialtest_gui_wind_bg.png^[lowpart:"..charging..":industrialtest_gui_wind_fg.png]"
|
(charging>0 and "image[4.7,3;1,1;industrialtest_gui_wind_bg.png^[lowpart:"..charging..":industrialtest_gui_wind_fg.png]"
|
||||||
or "image[4.7,3;1,1;industrialtest_gui_wind_bg.png]"),
|
or "image[4.7,3;1,1;industrialtest_gui_wind_bg.png]"),
|
||||||
"listring[context;charged]"
|
"listring[context;charged]"
|
||||||
|
|||||||
BIN
textures/industrialtest_guide_od_scanner.png
Normal file
BIN
textures/industrialtest_guide_od_scanner.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 12 KiB |
@@ -92,15 +92,16 @@ industrialtest.internal.unpackTableInto(industrialtest.ElectricJetpack,{
|
|||||||
modelImage="industrialtest_electric_jetpack.png",
|
modelImage="industrialtest_electric_jetpack.png",
|
||||||
flow=industrialtest.api.lvPowerFlow,
|
flow=industrialtest.api.lvPowerFlow,
|
||||||
capacity=30000,
|
capacity=30000,
|
||||||
prepare=industrialtest.ElectricItem.prepare
|
prepare=industrialtest.ElectricItem.prepare,
|
||||||
|
_opPower=10
|
||||||
})
|
})
|
||||||
|
|
||||||
function industrialtest.ElectricJetpack.tryFly(self,itemstack)
|
function industrialtest.ElectricJetpack.tryFly(self,itemstack)
|
||||||
local meta=itemstack:get_meta()
|
local meta=itemstack:get_meta()
|
||||||
if meta:get_int("industrialtest.powerAmount")<10 then
|
if meta:get_int("industrialtest.powerAmount")<self._opPower then
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
industrialtest.api.addPowerToItem(itemstack,-10)
|
industrialtest.api.addPowerToItem(itemstack,-self._opPower)
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -121,7 +121,87 @@ minetest.register_craft({
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
if industrialtest.mclAvailable then
|
minetest.register_craft({
|
||||||
|
type="shaped",
|
||||||
|
output=industrialtest.elementKeys.coal,
|
||||||
|
recipe={
|
||||||
|
{"industrialtest:uu_matter","",""},
|
||||||
|
{"","","industrialtest:uu_matter"},
|
||||||
|
{"industrialtest:uu_matter","",""}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
type="shaped",
|
||||||
|
output=industrialtest.elementKeys.stoneWithIron,
|
||||||
|
recipe={
|
||||||
|
{"industrialtest:uu_matter","","industrialtest:uu_matter"},
|
||||||
|
{"","industrialtest:uu_matter",""},
|
||||||
|
{"industrialtest:uu_matter","","industrialtest:uu_matter"}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
type="shaped",
|
||||||
|
output=industrialtest.elementKeys.diamond,
|
||||||
|
recipe={
|
||||||
|
{"industrialtest:uu_matter","industrialtest:uu_matter","industrialtest:uu_matter"},
|
||||||
|
{"industrialtest:uu_matter","industrialtest:uu_matter","industrialtest:uu_matter"},
|
||||||
|
{"industrialtest:uu_matter","industrialtest:uu_matter","industrialtest:uu_matter"}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
type="shaped",
|
||||||
|
output=industrialtest.elementKeys.stickyResin.." 32",
|
||||||
|
recipe={
|
||||||
|
{"industrialtest:uu_matter","","industrialtest:uu_matter"},
|
||||||
|
{"","",""},
|
||||||
|
{"industrialtest:uu_matter","","industrialtest:uu_matter"}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
type="shaped",
|
||||||
|
output="industrialtest:tin_dust 4",
|
||||||
|
recipe={
|
||||||
|
{"","",""},
|
||||||
|
{"industrialtest:uu_matter","","industrialtest:uu_matter"},
|
||||||
|
{"","","industrialtest:uu_matter"}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
type="shaped",
|
||||||
|
output="industrialtest:copper_dust 4",
|
||||||
|
recipe={
|
||||||
|
{"","","industrialtest:uu_matter"},
|
||||||
|
{"industrialtest:uu_matter","","industrialtest:uu_matter"},
|
||||||
|
{"","",""}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
if industrialtest.mtgAvailable then
|
||||||
|
minetest.register_craft({
|
||||||
|
type="shaped",
|
||||||
|
output="industrialtest:iridium_lump",
|
||||||
|
recipe={
|
||||||
|
{"industrialtest:uu_matter","industrialtest:uu_matter","industrialtest:uu_matter"},
|
||||||
|
{"","industrialtest:uu_matter",""},
|
||||||
|
{"industrialtest:uu_matter","industrialtest:uu_matter","industrialtest:uu_matter"}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
elseif industrialtest.mclAvailable then
|
||||||
|
minetest.register_craft({
|
||||||
|
type="shaped",
|
||||||
|
output="industrialtest:raw_iridium",
|
||||||
|
recipe={
|
||||||
|
{"industrialtest:uu_matter","industrialtest:uu_matter","industrialtest:uu_matter"},
|
||||||
|
{"","industrialtest:uu_matter",""},
|
||||||
|
{"industrialtest:uu_matter","industrialtest:uu_matter","industrialtest:uu_matter"}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
minetest.register_craft({
|
minetest.register_craft({
|
||||||
type="shaped",
|
type="shaped",
|
||||||
output="mcl_core:vine 24",
|
output="mcl_core:vine 24",
|
||||||
@@ -141,4 +221,34 @@ if industrialtest.mclAvailable then
|
|||||||
{"industrialtest:uu_matter",""}
|
{"industrialtest:uu_matter",""}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
type="shaped",
|
||||||
|
output=industrialtest.elementKeys.powerCarrier.." 10",
|
||||||
|
recipe={
|
||||||
|
{"","",""},
|
||||||
|
{"","industrialtest:uu_matter",""},
|
||||||
|
{"industrialtest:uu_matter","industrialtest:uu_matter","industrialtest:uu_matter"}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
type="shaped",
|
||||||
|
output=industrialtest.elementKeys.blueDye,
|
||||||
|
recipe={
|
||||||
|
{"","industrialtest:uu_matter",""},
|
||||||
|
{"","industrialtest:uu_matter",""},
|
||||||
|
{"","industrialtest:uu_matter","industrialtest:uu_matter"}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
type="shaped",
|
||||||
|
output="mcl_core:emerald 8",
|
||||||
|
recipe={
|
||||||
|
{"industrialtest:uu_matter","industrialtest:uu_matter","industrialtest:uu_matter"},
|
||||||
|
{"industrialtest:uu_matter","industrialtest:uu_matter","industrialtest:uu_matter"},
|
||||||
|
{"","industrialtest:uu_matter",""}
|
||||||
|
}
|
||||||
|
})
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user