mirror of
https://github.com/sirrobzeroone/elepower.git
synced 2024-08-20 04:44:05 +02:00
Guide/Tome - Add Wind Turbine Help
~ Also fix minor wind turbine bugs and limit to 100 epu's max of power gen ~ Also add Info for simple machines and clean up icons
This commit is contained in:
parent
9ccb2becb8
commit
209b8a7596
@ -4,7 +4,7 @@ A new *powerful* modpack for [Minetest](http://minetest.net) 5.0.0+!
|
|||||||
|
|
||||||
**I do not recommend using this modpack with technic, as this modpack aims to become an all new technology mod. However, compatibility might be added at a later date.**
|
**I do not recommend using this modpack with technic, as this modpack aims to become an all new technology mod. However, compatibility might be added at a later date.**
|
||||||
|
|
||||||
**Depends on [fluid_lib](https://gitlab.icynet.eu/evert/fluid_lib)!**
|
**Depends on [fluid_lib](https://github.com/sirrobzeroone/fluid_lib)!**
|
||||||
|
|
||||||
## Features
|
## Features
|
||||||
|
|
||||||
|
@ -13,13 +13,19 @@ local function get_formspec_default(power, state)
|
|||||||
end
|
end
|
||||||
|
|
||||||
-- Primitive wind checking function
|
-- Primitive wind checking function
|
||||||
elepm.wind_height_constant = 10
|
elepm.wind_height_constant = 20
|
||||||
function elepm.wind_check(pos)
|
function elepm.wind_check(pos)
|
||||||
if pos.y < elepm.wind_height_constant then
|
if pos.y < 10 then
|
||||||
return 0
|
return 0
|
||||||
end
|
end
|
||||||
|
|
||||||
return math.floor(pos.y / elepm.wind_height_constant)
|
local power = math.ceil(pos.y / elepm.wind_height_constant)
|
||||||
|
|
||||||
|
if math.floor(pos.y / elepm.wind_height_constant) > 25 then
|
||||||
|
power = 25
|
||||||
|
end
|
||||||
|
|
||||||
|
return power
|
||||||
end
|
end
|
||||||
|
|
||||||
-- A generator that creates power using altitude
|
-- A generator that creates power using altitude
|
||||||
@ -40,6 +46,7 @@ function ele.register_wind_generator(nodename, nodedef)
|
|||||||
tube = false,
|
tube = false,
|
||||||
paramtype2 = 0,
|
paramtype2 = 0,
|
||||||
on_timer = function (pos, elapsed)
|
on_timer = function (pos, elapsed)
|
||||||
|
|
||||||
local refresh = false
|
local refresh = false
|
||||||
local meta = minetest.get_meta(pos)
|
local meta = minetest.get_meta(pos)
|
||||||
|
|
||||||
@ -72,6 +79,7 @@ function ele.register_wind_generator(nodename, nodedef)
|
|||||||
end
|
end
|
||||||
|
|
||||||
wind = elepm.wind_check(pos) * multiplier
|
wind = elepm.wind_check(pos) * multiplier
|
||||||
|
|
||||||
if wind == 0 then
|
if wind == 0 then
|
||||||
status = "No wind"
|
status = "No wind"
|
||||||
break
|
break
|
||||||
@ -105,6 +113,7 @@ function ele.register_wind_generator(nodename, nodedef)
|
|||||||
local storage = ele.helpers.get_node_property(meta, pos, "storage")
|
local storage = ele.helpers.get_node_property(meta, pos, "storage")
|
||||||
|
|
||||||
meta:set_string("formspec", get_formspec({capacity = capacity, storage = storage, usage = 0}, 0))
|
meta:set_string("formspec", get_formspec({capacity = capacity, storage = storage, usage = 0}, 0))
|
||||||
|
minetest.get_node_timer(pos):start(1)
|
||||||
end
|
end
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -139,7 +148,6 @@ minetest.register_craftitem("elepower_machines:wind_turbine_blades", {
|
|||||||
if minetest.get_item_group(node.name, "wind_generator") == 0 then
|
if minetest.get_item_group(node.name, "wind_generator") == 0 then
|
||||||
return itemstack
|
return itemstack
|
||||||
end
|
end
|
||||||
|
|
||||||
local place_at = vector.add(pos, {x = 0, y = 0, z = -1})
|
local place_at = vector.add(pos, {x = 0, y = 0, z = -1})
|
||||||
local e = minetest.add_entity(place_at, "elepower_machines:wind_turbine_blades")
|
local e = minetest.add_entity(place_at, "elepower_machines:wind_turbine_blades")
|
||||||
local ent = e:get_luaentity()
|
local ent = e:get_luaentity()
|
||||||
@ -161,7 +169,6 @@ minetest.register_entity("elepower_machines:wind_turbine_blades", {
|
|||||||
visual_size = {x = 10, y = 10},
|
visual_size = {x = 10, y = 10},
|
||||||
},
|
},
|
||||||
timer = 0,
|
timer = 0,
|
||||||
controller = {x = 0, y = 0, z = 0},
|
|
||||||
wind = false,
|
wind = false,
|
||||||
|
|
||||||
on_step = function (self, dt)
|
on_step = function (self, dt)
|
||||||
@ -172,17 +179,27 @@ minetest.register_entity("elepower_machines:wind_turbine_blades", {
|
|||||||
|
|
||||||
-- Wind check timer
|
-- Wind check timer
|
||||||
self.timer = self.timer + 1
|
self.timer = self.timer + 1
|
||||||
|
|
||||||
if self.timer < 100 then
|
if self.timer < 100 then
|
||||||
return self
|
return self
|
||||||
end
|
end
|
||||||
self.timer = 0
|
self.timer = 0
|
||||||
|
|
||||||
local meta = minetest.get_meta(self.controller)
|
--controller pos always +1 z (note this can be made more robust)
|
||||||
if meta and meta:get_int("wind") > 0 then
|
local controller = vector.add(self.object:get_pos(), {x = 0, y = 0, z = 1})
|
||||||
|
local c_meta = minetest.get_meta(controller)
|
||||||
|
|
||||||
|
-- check controller timer (already using onstep here so saves an extra one)
|
||||||
|
if not minetest.get_node_timer(controller):is_started() then
|
||||||
|
minetest.get_node_timer(controller):start(1)
|
||||||
|
end
|
||||||
|
|
||||||
|
if c_meta and c_meta:get_int("wind") > 0 then
|
||||||
self.wind = true
|
self.wind = true
|
||||||
else
|
else
|
||||||
self.wind = false
|
self.wind = false
|
||||||
end
|
end
|
||||||
|
|
||||||
end,
|
end,
|
||||||
on_punch = function (self, puncher, time_from_last_punch, tool_capabilities, dir)
|
on_punch = function (self, puncher, time_from_last_punch, tool_capabilities, dir)
|
||||||
local itm = ItemStack("elepower_machines:wind_turbine_blades")
|
local itm = ItemStack("elepower_machines:wind_turbine_blades")
|
||||||
|
@ -71,6 +71,13 @@ eletome.ai.powercells.over = "Powercells will charge from the network when po
|
|||||||
|
|
||||||
-- info for (Simple/Single node) Machine page
|
-- info for (Simple/Single node) Machine page
|
||||||
eletome.ai.machine = {}
|
eletome.ai.machine = {}
|
||||||
|
eletome.ai.machine.over = "These are the simpliest machines in elepower consisting of single node "..
|
||||||
|
"that performs a single/simple function.\n"..
|
||||||
|
"The machines can often interface with other machines using fluid ducts to "..
|
||||||
|
"help automate the inputs/outputs of certain machines. Where a machine "..
|
||||||
|
"maybe more complex a small 'I' will be present on the large image, indicating "..
|
||||||
|
"there is a subpage with additional information for that machine. for example "..
|
||||||
|
"the Automatic Planter at the bottom of the opposite page."
|
||||||
|
|
||||||
-- info for Fluid Pump page
|
-- info for Fluid Pump page
|
||||||
eletome.ai.fluid_pump = {}
|
eletome.ai.fluid_pump = {}
|
||||||
@ -149,9 +156,14 @@ eletome.ai.transporter.over = "Once setup the Teleporter allows for instanaeo
|
|||||||
eletome.ai.wind_turbine = {}
|
eletome.ai.wind_turbine = {}
|
||||||
eletome.ai.wind_turbine.sort_by = "no_sort"
|
eletome.ai.wind_turbine.sort_by = "no_sort"
|
||||||
eletome.ai.wind_turbine.part = {"elepower_machines:wind_turbine",
|
eletome.ai.wind_turbine.part = {"elepower_machines:wind_turbine",
|
||||||
"elepower_machines:wind_turbine_blade"
|
"elepower_machines:wind_turbine_blade",
|
||||||
|
"elepower_machines:wind_turbine_blades"
|
||||||
}
|
}
|
||||||
eletome.ai.wind_turbine.over = ""
|
eletome.ai.wind_turbine.over = "The wind turbine produces power from the wind. The minimum height a wind turbine will produce "..
|
||||||
|
"power is at y 10. The wind turbine will produce a small amount of power without blades, "..
|
||||||
|
"however with blades the wind turbine will produce 4x as much power.\n"..
|
||||||
|
"The higher the wind turbine is placed the more power it will produce to a maximum output of 100 EpUs."
|
||||||
|
eletome.ai.wind_turbine.img = "elepower_tome_complex_wind_turbine.png"
|
||||||
|
|
||||||
-- info for Fission page
|
-- info for Fission page
|
||||||
eletome.ai.fission_reactor = {}
|
eletome.ai.fission_reactor = {}
|
||||||
@ -632,7 +644,8 @@ eletome.ai.nodes["elepower_machines:alloy_furnace"] = {lb_top_img = "defaul
|
|||||||
lb_btm_tt = " used per second",
|
lb_btm_tt = " used per second",
|
||||||
}
|
}
|
||||||
|
|
||||||
eletome.ai.nodes["elepower_machines:electrolyzer"] = {how_use_1 = "The Electrolyzer is used to create gases out of certain fluids. The electrolyzer can accept three "..
|
eletome.ai.nodes["elepower_machines:electrolyzer"] = {lb_top_img = "elepower_gui_icon_fluid_electrolyzer_in.png", lb_top_tt = "Fluids",
|
||||||
|
how_use_1 = "The Electrolyzer is used to create gases out of certain fluids. The electrolyzer can accept three "..
|
||||||
"fluids/liquids, although not at the same time - water, heavy water and biomass. The electrolyzer will "..
|
"fluids/liquids, although not at the same time - water, heavy water and biomass. The electrolyzer will "..
|
||||||
"at the cost of 128 EpUs a second break each down into different gases, see table below\n ",
|
"at the cost of 128 EpUs a second break each down into different gases, see table below\n ",
|
||||||
how_use_2 = "To extract gas from the electrolyzer you will need a fluid pump, bucketeer and an empty gas canister. "..
|
how_use_2 = "To extract gas from the electrolyzer you will need a fluid pump, bucketeer and an empty gas canister. "..
|
||||||
@ -642,6 +655,9 @@ eletome.ai.nodes["elepower_machines:electrolyzer"] = {how_use_1 = "The Elec
|
|||||||
hu_img_2 = "elepower_tome_electrolyzer_assemble.png"
|
hu_img_2 = "elepower_tome_electrolyzer_assemble.png"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
eletome.ai.nodes["elepower_farming:harvester"] = {lb_top_img = "farming_wheat.png",lb_top_tt = "Crops\n or\nTrees"}
|
||||||
|
|
||||||
|
|
||||||
eletome.ai.nodes["elepower_farming:planter"] = {lb_top_img = "farming_wheat_seed.png",
|
eletome.ai.nodes["elepower_farming:planter"] = {lb_top_img = "farming_wheat_seed.png",
|
||||||
lb_top_tt = "Seeds or Seedlings",
|
lb_top_tt = "Seeds or Seedlings",
|
||||||
how_use_1 = "The automatic planter is used to keep a maximum 9x9 field planted with crops. The planter needs to be placed 1 node "..
|
how_use_1 = "The automatic planter is used to keep a maximum 9x9 field planted with crops. The planter needs to be placed 1 node "..
|
||||||
@ -656,6 +672,36 @@ eletome.ai.nodes["elepower_farming:planter"] = {lb_top_img = "farming_wheat
|
|||||||
hu_img_2 = "elepower_tome_complex_auto_planter_2.png"
|
hu_img_2 = "elepower_tome_complex_auto_planter_2.png"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
eletome.ai.nodes["elepower_machines:canning_machine"] = {lb_top_img = "elepower_tome_icon_canning.png",lb_top_tt = "Canning"}
|
||||||
|
|
||||||
|
eletome.ai.nodes["elepower_machines:compressor"] = {lb_top_img = "elepower_tome_icon_compressing.png",lb_top_tt = "Compressing"}
|
||||||
|
|
||||||
|
eletome.ai.nodes["elepower_machines:evaporator"] = {lb_top_img = "elepower_gui_icon_fluid_water.png",lb_top_tt = "Fluids"}
|
||||||
|
|
||||||
|
eletome.ai.nodes["elepower_machines:lava_cooler"] = {lb_top_img = "elepower_gui_icon_fluid_water_lava.png",lb_top_tt = "Water\n and\nLava"}
|
||||||
|
|
||||||
|
eletome.ai.nodes["elepower_machines:furnace"] = {lb_top_img = "elepower_tome_icon_cooking.png",lb_top_tt = "Cooking"}
|
||||||
|
|
||||||
|
eletome.ai.nodes["elepower_machines:pcb_plant"] = {lb_top_img = "elepower_pcb.png",lb_top_tt = "Creates PCB's"}
|
||||||
|
|
||||||
|
eletome.ai.nodes["elepower_machines:pulverizer"] = {lb_top_img = "elepower_tome_icon_grinding.png",lb_top_tt = "Grinding"}
|
||||||
|
|
||||||
|
eletome.ai.nodes["elepower_machines:sawmill"] = {lb_top_img = "elepower_sawmill.png",lb_top_tt = "Sawing"}
|
||||||
|
|
||||||
|
eletome.ai.nodes["elepower_machines:solderer"] = {lb_top_img = "elepower_upgrade_efficiency_2.png",lb_top_tt = " Creates\n Machine Upgrades"}
|
||||||
|
|
||||||
|
eletome.ai.nodes["elepower_farming:tree_processor"] = {lb_top_img = "elepower_gui_icon_fluid_water.png",lb_top_tt = "Processes\n Tree Sap"}
|
||||||
|
|
||||||
|
-- Wind Turbine
|
||||||
|
eletome.ai.nodes["elepower_machines:wind_turbine"] = {lb_top_img = "elepower_tome_wind.png",
|
||||||
|
lb_top_tt = "Wind",
|
||||||
|
lb_btm_img = "100",
|
||||||
|
lb_btm_tt = " Epu Max\n Potential\n Production"}
|
||||||
|
|
||||||
|
eletome.ai.nodes["elepower_machines:wind_turbine_blade"] = {lb_top_img = "", lb_top_tt = "", lb_btm_img = "", lb_btm_tt =""}
|
||||||
|
eletome.ai.nodes["elepower_machines:wind_turbine_blades"] = {lb_top_img = "", lb_top_tt = "", lb_btm_img = "", lb_btm_tt =""}
|
||||||
|
|
||||||
|
|
||||||
-- Fluid Pump Page
|
-- Fluid Pump Page
|
||||||
eletome.ai.nodes["elepower_machines:pump"] = {lb_top_img = "elepower_gui_icon_fluid_electrolyzer_in.png", lb_top_tt = "Fluid"}
|
eletome.ai.nodes["elepower_machines:pump"] = {lb_top_img = "elepower_gui_icon_fluid_electrolyzer_in.png", lb_top_tt = "Fluid"}
|
||||||
eletome.ai.nodes["fluid_transfer:fluid_transfer_pump"] = {lb_top_img = "elepower_gui_icon_fluid_electrolyzer_in.png", lb_top_tt = "Fluid"}
|
eletome.ai.nodes["fluid_transfer:fluid_transfer_pump"] = {lb_top_img = "elepower_gui_icon_fluid_electrolyzer_in.png", lb_top_tt = "Fluid"}
|
||||||
|
BIN
elepower_tome/textures/elepower_gui_icon_fluid_water_lava.png
Normal file
BIN
elepower_tome/textures/elepower_gui_icon_fluid_water_lava.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 6.7 KiB |
BIN
elepower_tome/textures/elepower_tome_complex_wind_turbine.png
Normal file
BIN
elepower_tome/textures/elepower_tome_complex_wind_turbine.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 44 KiB |
Loading…
Reference in New Issue
Block a user