Add laser beam nodes for energy transfer

master
Joachim Stolberg 2021-02-16 19:43:44 +01:00
parent ea19274fbd
commit ae4e687363
10 changed files with 99 additions and 15 deletions

View File

@ -178,6 +178,7 @@ techage.Items = {
ta4_liquid_filter = "techage_ta4_filter.png", ta4_liquid_filter = "techage_ta4_filter.png",
ta4_recycler = "techage:ta4_recycler_pas", ta4_recycler = "techage:ta4_recycler_pas",
ta4_waterinlet = "techage:ta4_waterinlet", ta4_waterinlet = "techage:ta4_waterinlet",
ta4_laser = "techage:ta4_laser_emitter",
--ta4_ "", --ta4_ "",
} }

View File

@ -195,6 +195,7 @@ techage.manual_DE.aTitel = {
"3,TA4 Elektronikfabrik / Electronic Fab", "3,TA4 Elektronikfabrik / Electronic Fab",
"3,TA4 Injektor / Injector", "3,TA4 Injektor / Injector",
"3,TA4 Recycler", "3,TA4 Recycler",
"3,TA4 Laser",
} }
techage.manual_DE.aText = { techage.manual_DE.aText = {
@ -1592,6 +1593,16 @@ techage.manual_DE.aText = {
"\n".. "\n"..
"\n".. "\n"..
"\n", "\n",
"Der TA4 Laser dient zur kabellosen Stromübertagung. Dazu sind zwei Blöcke notwendig: TA4 Laserstrahl Sender und TA4 Laserstrahl Empfänger. Zwischen beiden Blöcken muss sich eine Luftstrecke befinden\\, so dass der Laserstrahl vom Sender bis zum Empfänger aufgebaut werden kann.\n"..
"\n"..
"Zuerst muss der Sender platziert werden. Dieser schaltet sofort den Laserstahls ein und zeigt damit mögliche Positionen des Empfängers an. Mögliche Positionen für den Empfänger werden auch über eine Chat-Nachricht ausgegeben. Mit dem Laser lassen sich Strecken bis 96 Blöcke überbrücken.\n"..
"\n"..
"Ist die Verbindung aufgebaut (es muss dazu noch kein Strom fließen)\\, wird dies über den Info-Text des Senders und auch des Empfängers angezeigt.\n"..
"\n"..
"Die Laserblöcke selbst benötigen keinen Strom.\n"..
"\n"..
"\n"..
"\n",
} }
techage.manual_DE.aItemName = { techage.manual_DE.aItemName = {
@ -1789,6 +1800,7 @@ techage.manual_DE.aItemName = {
"ta4_electronicfab", "ta4_electronicfab",
"ta4_injector", "ta4_injector",
"ta4_recycler", "ta4_recycler",
"ta4_laser",
} }
techage.manual_DE.aPlanTable = { techage.manual_DE.aPlanTable = {
@ -1986,5 +1998,6 @@ techage.manual_DE.aPlanTable = {
"", "",
"", "",
"", "",
"",
} }

View File

@ -193,7 +193,8 @@ techage.manual_EN.aTitel = {
"3,TA4 Quarry", "3,TA4 Quarry",
"3,TA4 Electronic Fab", "3,TA4 Electronic Fab",
"3,TA4 Injector", "3,TA4 Injector",
"3,TA4 recycler", "3,TA4 Recycler",
"3,TA4 Laser",
} }
techage.manual_EN.aText = { techage.manual_EN.aText = {
@ -1575,6 +1576,14 @@ techage.manual_EN.aText = {
"\n".. "\n"..
" \n".. " \n"..
"\n", "\n",
"The TA4 laser is used for wireless power transmission. Two blocks are required for this: TA4 Laser Beam Emitter and TA4 Laser Beam Receiver. There must be an air gap between the two blocks so that the laser beam can be built up from the emitter to the receiver. First the emitter must be placed. This immediately switches on the laser beam and shows possible positions of the receiver. Possible positions for the receiver are also output via a chat message. \n"..
"\n"..
"With the laser\\, distances of up to 96 blocks can be bridged. Once the connection has been established (no current has to flow)\\, this is indicated via the info text of the emitter and also of the receiver. \n"..
"\n"..
"The laser blocks themselves do not require any electricity.\n"..
"\n"..
"\n"..
"\n",
} }
techage.manual_EN.aItemName = { techage.manual_EN.aItemName = {
@ -1771,6 +1780,7 @@ techage.manual_EN.aItemName = {
"ta4_electronicfab", "ta4_electronicfab",
"ta4_injector", "ta4_injector",
"ta4_recycler", "ta4_recycler",
"ta4_laser",
} }
techage.manual_EN.aPlanTable = { techage.manual_EN.aPlanTable = {
@ -1967,5 +1977,6 @@ techage.manual_EN.aPlanTable = {
"", "",
"", "",
"", "",
"",
} }

View File

@ -503,6 +503,14 @@ TA Lamp Holder Copper=TA Lampenhalter Kupfer
TA Lamp Holder Gold=TA Lampenhalter Gold TA Lamp Holder Gold=TA Lampenhalter Gold
TA Lamp Holder White=TA Lampenhalter Weiß TA Lamp Holder White=TA Lampenhalter Weiß
### laser.lua ###
Laser beam error!=Laserstrahl Fehler!
TA4 Laser Beam Emitter=TA4 Laserstrahl Sender
TA4 Laser Beam Receiver=TA4 Laserstrahl Empfänger
Valid destination positions:=Gültige Zielpositionen
to=bis
### lib.lua ### ### lib.lua ###
### sensorchest.lua ### ### sensorchest.lua ###

View File

@ -503,6 +503,14 @@ TA Lamp Holder Copper=
TA Lamp Holder Gold= TA Lamp Holder Gold=
TA Lamp Holder White= TA Lamp Holder White=
### laser.lua ###
Laser beam error!=
TA4 Laser Beam Emitter=
TA4 Laser Beam Receiver=
Valid destination positions:=
to=
### lib.lua ### ### lib.lua ###
### sensorchest.lua ### ### sensorchest.lua ###

View File

@ -678,3 +678,15 @@ Aber nicht alle Materialen lassen sich recyclen:
Die Verarbeitungsleistung beträgt ein Item alle 8 s. Der Block benötigt hierfür 16 ku Strom. Die Verarbeitungsleistung beträgt ein Item alle 8 s. Der Block benötigt hierfür 16 ku Strom.
[ta4_recycler|image] [ta4_recycler|image]
### TA4 Laser
Der TA4 Laser dient zur kabellosen Stromübertagung. Dazu sind zwei Blöcke notwendig: TA4 Laserstrahl Sender und TA4 Laserstrahl Empfänger. Zwischen beiden Blöcken muss sich eine Luftstrecke befinden, so dass der Laserstrahl vom Sender bis zum Empfänger aufgebaut werden kann.
Zuerst muss der Sender platziert werden. Dieser schaltet sofort den Laserstahls ein und zeigt damit mögliche Positionen des Empfängers an. Mögliche Positionen für den Empfänger werden auch über eine Chat-Nachricht ausgegeben. Mit dem Laser lassen sich Strecken bis 96 Blöcke überbrücken.
Ist die Verbindung aufgebaut (es muss dazu noch kein Strom fließen), wird dies über den Info-Text des Senders und auch des Empfängers angezeigt.
Die Laserblöcke selbst benötigen keinen Strom.
[ta4_laser|image]

View File

@ -666,7 +666,7 @@ The processing power is up to 8 items every 3 seconds.
[ta4_injector|image] [ta4_injector|image]
### TA4 recycler ### TA4 Recycler
The recycler is a machine that processes all Techage recipes backwards, i.e. it can dismantle machines and blocks back into their components. The recycler is a machine that processes all Techage recipes backwards, i.e. it can dismantle machines and blocks back into their components.
@ -681,3 +681,12 @@ The processing power is one item every 8 s. The block requires 16 ku of electri
[ta4_recycler|image] [ta4_recycler|image]
### TA4 Laser
The TA4 laser is used for wireless power transmission. Two blocks are required for this: TA4 Laser Beam Emitter and TA4 Laser Beam Receiver. There must be an air gap between the two blocks so that the laser beam can be built up from the emitter to the receiver. First the emitter must be placed. This immediately switches on the laser beam and shows possible positions of the receiver. Possible positions for the receiver are also output via a chat message.
With the laser, distances of up to 96 blocks can be bridged. Once the connection has been established (no current has to flow), this is indicated via the info text of the emitter and also of the receiver.
The laser blocks themselves do not require any electricity.
[ta4_laser|image]

View File

@ -194,3 +194,4 @@
- [TA4 Elektronikfabrik / Electronic Fab](./manual_ta4_DE.md#ta4-elektronikfabrik--electronic-fab) - [TA4 Elektronikfabrik / Electronic Fab](./manual_ta4_DE.md#ta4-elektronikfabrik--electronic-fab)
- [TA4 Injektor / Injector](./manual_ta4_DE.md#ta4-injektor--injector) - [TA4 Injektor / Injector](./manual_ta4_DE.md#ta4-injektor--injector)
- [TA4 Recycler](./manual_ta4_DE.md#ta4-recycler) - [TA4 Recycler](./manual_ta4_DE.md#ta4-recycler)
- [TA4 Laser](./manual_ta4_DE.md#ta4-laser)

View File

@ -192,4 +192,5 @@
- [TA4 Quarry](./manual_ta4_EN.md#ta4-quarry) - [TA4 Quarry](./manual_ta4_EN.md#ta4-quarry)
- [TA4 Electronic Fab](./manual_ta4_EN.md#ta4-electronic-fab) - [TA4 Electronic Fab](./manual_ta4_EN.md#ta4-electronic-fab)
- [TA4 Injector](./manual_ta4_EN.md#ta4-injector) - [TA4 Injector](./manual_ta4_EN.md#ta4-injector)
- [TA4 recycler](./manual_ta4_EN.md#ta4-recycler) - [TA4 Recycler](./manual_ta4_EN.md#ta4-recycler)
- [TA4 Laser](./manual_ta4_EN.md#ta4-laser)

View File

@ -22,7 +22,7 @@ local Cable = techage.ElectricCable
local power = techage.power local power = techage.power
local networks = techage.networks local networks = techage.networks
minetest.register_node("techage:laser_emitter", { minetest.register_node("techage:ta4_laser_emitter", {
description = S("TA4 Laser Beam Emitter"), description = S("TA4 Laser Beam Emitter"),
tiles = { tiles = {
-- up, down, right, left, back, front -- up, down, right, left, back, front
@ -42,14 +42,16 @@ minetest.register_node("techage:laser_emitter", {
local pos1, pos2 = techage.renew_laser(pos, true) local pos1, pos2 = techage.renew_laser(pos, true)
if pos1 then if pos1 then
local node = techage.get_node_lvm(pos2) local node = techage.get_node_lvm(pos2)
if node.name == "techage:laser_receiver" then if node.name == "techage:ta4_laser_receiver" then
Cable:pairing(pos2, "laser") Cable:pairing(pos2, "laser")
Cable:pairing(pos, "laser") Cable:pairing(pos, "laser")
else else
minetest.chat_send_player(placer:get_player_name(), S("Valid destination positions:") .. " " .. P2S(pos1) .. " " .. S("to") .. " " .. P2S(pos2)) minetest.chat_send_player(placer:get_player_name(),
S("Valid destination positions:") .. " " ..
P2S(pos1) .. " " .. S("to") .. " " .. P2S(pos2))
end end
else else
minetest.chat_send_player(placer:get_player_name(), S("The line of sight is blocked")) minetest.chat_send_player(placer:get_player_name(), S("Laser beam error!"))
end end
minetest.get_node_timer(pos):start(2) minetest.get_node_timer(pos):start(2)
end, end,
@ -58,7 +60,7 @@ minetest.register_node("techage:laser_emitter", {
local pos1, pos2 = techage.renew_laser(pos) local pos1, pos2 = techage.renew_laser(pos)
if pos1 then if pos1 then
local node = techage.get_node_lvm(pos2) local node = techage.get_node_lvm(pos2)
if node.name == "techage:laser_receiver" then if node.name == "techage:ta4_laser_receiver" then
Cable:pairing(pos2, "laser") Cable:pairing(pos2, "laser")
Cable:pairing(pos, "laser") Cable:pairing(pos, "laser")
end end
@ -79,7 +81,7 @@ minetest.register_node("techage:laser_emitter", {
sounds = default.node_sound_wood_defaults(), sounds = default.node_sound_wood_defaults(),
}) })
minetest.register_node("techage:laser_receiver", { minetest.register_node("techage:ta4_laser_receiver", {
description = S("TA4 Laser Beam Receiver"), description = S("TA4 Laser Beam Receiver"),
tiles = { tiles = {
-- up, down, right, left, back, front -- up, down, right, left, back, front
@ -109,7 +111,25 @@ minetest.register_node("techage:laser_receiver", {
sounds = default.node_sound_wood_defaults(), sounds = default.node_sound_wood_defaults(),
}) })
Cable:add_secondary_node_names({"techage:laser_emitter", "techage:laser_receiver"}) Cable:add_secondary_node_names({"techage:ta4_laser_emitter", "techage:ta4_laser_receiver"})
Cable:set_valid_sides("techage:laser_emitter", {"F"}) Cable:set_valid_sides("techage:ta4_laser_emitter", {"F"})
Cable:set_valid_sides("techage:laser_receiver", {"F"}) Cable:set_valid_sides("techage:ta4_laser_receiver", {"F"})
minetest.register_craft({
output = "techage:ta4_laser_emitter",
recipe = {
{"techage:ta4_carbon_fiber", "dye:blue", "techage:ta4_carbon_fiber"},
{"techage:electric_cableS", "basic_materials:energy_crystal_simple", "techage:ta4_leds"},
{"default:steel_ingot", "techage:ta4_wlanchip", "default:steel_ingot"},
},
})
minetest.register_craft({
output = "techage:ta4_laser_receiver",
recipe = {
{"techage:ta4_carbon_fiber", "dye:blue", "techage:ta4_carbon_fiber"},
{"techage:electric_cableS", "basic_materials:gold_wire", "default:obsidian_glass"},
{"default:steel_ingot", "techage:ta4_wlanchip", "default:steel_ingot"},
},
})