LBMs and repair tool added for the migration

This commit is contained in:
Joachim Stolberg 2020-02-22 20:43:14 +01:00
parent 4f25578f16
commit c8f685c0d5
27 changed files with 375 additions and 82 deletions

View File

@ -3,15 +3,11 @@
TechAge
=======
Copyright (C) 2019 Joachim Stolberg
Copyright (C) 2019-2020 Joachim Stolberg
GPL v3
See LICENSE.txt for more information
Gravel Sieve, sieving gravel to find ores
quarry.lua
Quarry machine to dig stones and other ground blocks.
The Quarry digs a hole 5x5 blocks large and up to 80 blocks deep.
@ -395,17 +391,26 @@ local node_name_ta2, node_name_ta3, node_name_ta4 =
minetest.register_craft({
output = node_name_ta2,
recipe = {
{"default:steel_ingot", "default:diamond", "default:steel_ingot"},
{"techage:tubeS", "basic_materials:gear_steel", "techage:tubeS"},
{"default:steel_ingot", "default:steel_ingot", "default:steel_ingot"},
{"group:wood", "default:mese_crystal", "group:wood"},
{"techage:tubeS", "default:pick_diamond", "techage:iron_ingot"},
{"group:wood", "techage:iron_ingot", "group:wood"},
},
})
minetest.register_craft({
output = node_name_ta3,
recipe = {
{"", "default:diamond", ""},
{"", "node_name_ta2", ""},
{"", "default:mese_crystal", ""},
{"", node_name_ta2, ""},
{"", "techage:vacuum_tube", ""},
},
})
minetest.register_craft({
output = node_name_ta4,
recipe = {
{"", "default:mese_crystal", ""},
{"", node_name_ta3, ""},
{"", "techage:ta4_wlanchip", ""},
},
})

View File

@ -79,10 +79,8 @@ local function formspec_help(meta)
default.gui_slots..
"item_image[9.6,0;1,1;techage:construction_board]"..
bttn..
"style_type[textarea;textcolor=#AAAAAA]"..
"style_type[textarea;textcolor=#FFFFFF]"..
"textarea[0.3,5.7;11,5.3;;"..(aText[idx] or "")..";]"..
--"textarea[0.3,4.7;11,5.3;;\027(c@#0000ff)Text \027(c@#00ff00)Text2;]"..
--"textarea[0.3,4.7;11,5.3;;"..tostring(text)..";]"..
"box[0,5.75;10.775,4.45;#000000]"..
"tablecolumns[tree,width=1;text,width=10,align=inline]"..

View File

@ -86,6 +86,7 @@ techage.Items = {
ta3_pump = "techage:t3_pump",
oiltank = "techage:oiltank",
reboiler = "techage:ta3_reboiler",
ta3_filler = "techage:filler",
----------------------------
ta3_button = "techage:ta3_button_off",
ta3_cartdetector = "techage:ta3_cartdetector_off",
@ -131,5 +132,6 @@ techage.Items = {
ta4_reactorstand = "techage:ta4_reactor_stand",
ta4_reactorbase = "techage:ta4_reactor_base",
ta4_furnaceheater = "techage:furnace_heater",
ta4_waterpump = "techage:t4_waterpump",
--ta4_ "",
}

View File

@ -2,6 +2,8 @@ techage.manual_DE = {}
techage.manual_DE.aTitel = {
"1,Tech Age Mod",
"2,Software Update",
"3,Was hat sich am Spiel geändert",
"2,Hinweise",
"2,Erze und Mineralien",
"3,Meridium",
@ -71,6 +73,7 @@ techage.manual_DE.aTitel = {
"2,Flüssigkeiten",
"3,TA3 Tank / TA3 Tank",
"3,TA3 Pumpe / TA3 Pump",
"3,TA Einfülltrichter / TA Liquid Filler",
"2,Öl-Förderung",
"3,TA3 Ölexplorer / Oil Explorer",
"3,TA3 Ölbohrkiste / Oil Drill Box",
@ -140,6 +143,7 @@ techage.manual_DE.aTitel = {
"3,TA4 Tank / TA4 Tank",
"3,TA4 Pumpe / TA4 Pump",
"3,TA4 Ofenheizung / furnace heater",
"3,TA4 Wasserpumpe / Water Pump",
}
techage.manual_DE.aText = {
@ -159,10 +163,18 @@ techage.manual_DE.aText = {
"\n"..
"\n"..
"\n",
"\027(c@#ffffff)Da sich mit dem Update die Art und Weise wie Daten der Maschinen gespeichert werden\\, geändert hat\\, sind nach dem Update alle Maschinen erst einmal ohne Daten und damit Funktionslos und müssen \"repariert\" werden. \n"..
"\n"..
"Dazu gibt es ein Reparaturset\\, bestehend aus dem Schraubenschlüssel (Techage Info Werkzeug) und der Werkzeugtasche (TechAge Reparaturset). Beide Werkzeuge können gecraftet werden.\n"..
"\n"..
" - Mit dem Schraubenschlüssel können die Verbindungen über das Stromnetz geprüft werden. Dazu einfach auf einen Generator oder eine Junction klicken\\, dann werden alle verbundenen Blöcke in der Umgebung markiert. Bei Unterbrechungen immer den letzten markierten Block (Junction) in der Kette neu setzen.\n"..
" - Wasserstoff ist nun wie eine Flüssigkeit zu behandeln. Elektrolyseur und Brennstoffzelle müssen daher nicht mehr über Röhren und Schieber sondern über Pumpen und Flüssigkeitsleitungen miteinander verbunden werden.\n"..
"\n",
" - Generator und Wärmetauscher beim Energiespeicher arbeiten nun unabhängig von einander und können auch einzeln mit dem Stromnetz verbunden sein.\n"..
" - \n"..
"\n",
"Diese Dokumentation ist sowohl \"ingame\" (Block Konstruktionsplan) als auch auf GitHub als MD-Files verfügbar.\n"..
"\n"..
" - Link: https://github.com/joe7575/techage/blob/master/manuals/toc_DE.md\n"..
" - Short Link: https://tinyurl.com/y2lwl35h\n"..
"\n"..
"Die Konstruktionspläne (Diagramme) für den Aufbau der Maschinen sowie die Bilder sind aber nur ingame verfügbar.\n"..
"\n"..
@ -196,6 +208,7 @@ techage.manual_DE.aText = {
" - 28.09.2019: Um Solaranlage erweitert\n"..
" - 05.10.2019: Daten zur Solaranlage und Beschreibung zum Wechselrichter und zum Power-Terminal geändert\n"..
" - 18.11.2019: Kapitel für Erze\\, Reaktor\\, Aluminium\\, Silo\\, Bauxit\\, Ofenheizung\\, Kieswaschanlage hinzugefügt\n"..
" - 22.02.2020: Korrekturen und Kapitel zum Update\n"..
"\n",
"In TA1 geht es darum\\, mit einfachen Werkzeugen und Gerätschaften ausreichend Erze zu schürfen und Holzkohle herzustellen\\, so dass damit TA2 Maschinen hergestellt und betrieben werden können.\n"..
"\n"..
@ -242,7 +255,7 @@ techage.manual_DE.aText = {
"\n"..
"\n"..
"\n",
"TA1 hat seine eigenen Werkzeuge wie Hammer und Kiessieb\\, aber auch bereits eine Maschine zur Automatisierung\\, den TA1 Trichter (hopper).\n"..
"TA1 hat seine eigenen Werkzeuge wie Hammer und Kiessieb\\, aber auch der Minecart Hopper kann genutzt werden.\n"..
"\n"..
"\n"..
"\n",
@ -256,9 +269,9 @@ techage.manual_DE.aText = {
"\n"..
"\n"..
"\n",
"Der Trichter saugt Gegenstände (items) von oben ein und gibt diese nach rechts weiter. Beim Platzieren des Trichters muss daher auf die Ausgaberichtung geachtet werden.\n"..
"Der Hopper aus der Mod \"Minecart\" dient in erster Linie zum Be- und Entladen von Minecarts. Er saugt Gegenstände (items) von oben ein und gibt diese nach rechts weiter. Beim Platzieren des Trichters muss daher auf die Ausgaberichtung geachtet werden.\n"..
"\n"..
"Der Trichter kann auch Items aus Kisten (chest) ziehen\\, sofern die Kiste auf dem Trichter steht. \n"..
"Der Trichter kann aber auch Items aus Kisten (chest) ziehen\\, sofern die Kiste auf dem Trichter steht. \n"..
"\n"..
"Der Trichter kann auch Items in Kisten legen\\, sofern die Kiste neben dem Trichter steht.\n"..
"\n"..
@ -305,7 +318,7 @@ techage.manual_DE.aText = {
"\n"..
"\n"..
"\n",
"Teil der Dampfmaschine. Muss mit Wasser gefüllt werden. Wem kein Wasser mehr vorhanden ist oder die Temperatur zu weit absinkt\\, schaltet sich die Dampfmaschine ab.\n"..
"Teil der Dampfmaschine. Muss mit Wasser gefüllt werden. Dies erfolgt durch Klicken mit einem Wassereimer auf den Boiler. Wenn kein Wasser mehr vorhanden ist oder die Temperatur zu weit absinkt\\, schaltet sich die Dampfmaschine ab.\n"..
"\n"..
"\n"..
"\n",
@ -473,7 +486,7 @@ techage.manual_DE.aText = {
"\n"..
"\n"..
"\n",
"Teil des Kraftwerk. Muss mit Wasser gefüllt werden. Wem kein Wasser mehr vorhanden ist oder die Temperatur zu weit absinkt\\, schaltet sich der Boiler ab.\n"..
"Teil des Kraftwerk. Muss mit Wasser gefüllt werden. Wem kein Wasser mehr vorhanden ist oder die Temperatur zu weit absinkt\\, schaltet sich das Kraftwerk ab.\n"..
"\n"..
"\n"..
"\n",
@ -496,7 +509,7 @@ techage.manual_DE.aText = {
" - Überlandleitungen (TA Stromleitung) für Freiluftverkabelung über große Strecken. Diese Kabel sind geschützt\\, können also von anderen Spielern nicht entfernt werden.\n"..
"\n"..
"Mehrere Verbraucher und Generatoren können in einem Stromnetzwerk zusammen betrieben werden. Mit Hilfe der Verteilerdosen können so große Netzwerke aufgebaut werden.\n"..
"Wird zu wenig Strom bereitgestellt\\, gehen Teile der Verbraucher aus\\, bzw. Lampen beginnen zu flackern.\n"..
"Wird zu wenig Strom bereitgestellt\\, gehen die Verbraucher aus.\n"..
"In diesem Zusammenhang ist auch wichtig\\, dass die Funktionsweise von Forceload Blöcken verstanden wurde\\, denn bspw. Generatoren liefern nur Strom\\, wenn der entsprechende Map-Block geladen ist. Dies kann mit einen Forceload Block erzwungen werden.\n"..
"\n"..
"In TA4 kommt noch ein Kabel für die Solaranlage hinzu.\n"..
@ -565,10 +578,10 @@ techage.manual_DE.aText = {
"\n"..
"\n"..
"\n",
"Das Strom-Terminal muss vor eine Verteilerdose platziert werden. Es zeigt Daten aus dem Stromnetz an wie:\n"..
"Das Strom-Terminal muss mit dem Stromnetz verbunden werden. Es zeigt Daten aus dem Stromnetz an wie:\n"..
"\n"..
" - Anzahl und Leistung der verschiedenen Generatoren und Akkus (aktuell/maximal)\n"..
" - Anzahl der Netzwerk-Blöcke (max. 1000)\nDie Daten des Terminals werden beim Öffnen des Menüs für einige Sekunden aktualisiert. Danach kann die Anzeige durch Anklicken des \"Update\" Buttons erneut aktualisiert werden.\n"..
" - Anzahl der Netzwerk-Blöcke (max. 1000)\n"..
"\n"..
"\n"..
"\n",
@ -597,7 +610,7 @@ techage.manual_DE.aText = {
"\n"..
"\n"..
"\n",
"Flüssigkeiten wie Wasser oder Öl können nur die spezielle Leitungen gepumpt und in Tanks gespeichert werden. Wie auch bei Wasser gibt es aber Behälter (Eimer\\, Kanister\\, Fässer)\\, in denen die Flüssig gelagert und transportiert werden kann.\n"..
"Flüssigkeiten wie Wasser oder Öl können nur die spezielle Leitungen gepumpt und in Tanks gespeichert werden. Wie auch bei Wasser gibt es aber Behälter (Kanister\\, Fässer)\\, in denen die Flüssig gelagert und transportiert werden kann.\n"..
"\n"..
"Über die gelben Leitungen und Verbindungsstücke ist es auch möglich\\, mehrere Tanks zu verbinden. Allerdings müssen die Tanks den selben Inhalt haben und zwischen Tank\\, Pumpe und Verteiler muss immer mindestens eine gelbe Leitung sein.\n"..
"Bspw. zwei Tanks direkt mit einem Verteilerstück zu verbinden\\, geht nicht.\n"..
@ -605,12 +618,8 @@ techage.manual_DE.aText = {
"\n"..
"\n",
"In einem Tank können Flüssigkeiten gespeichert werden. Ein Tank kann über eine Pumpe gefüllt bzw. geleert werden. Dazu muss die Pumpe über einer Leitung (gelbe Röhre) mit dem Tank verbunden sein.\n"..
"Ein Tank kann aber auch über Eimer/Fässer gefüllt bzw. geleert werden:\n"..
"\n"..
" - werden leere Fässer mit einem Schieber oder von Hand in den Tank gegeben\\, werden diese gefüllt und können ausgangsseitig wieder entnommen werden\n"..
" - werden volle Fässer mit einem Schieber oder von Hand in den Tank gegeben\\, werden diese geleert und können ausgangsseitig wieder entnommen werden\n"..
"\n"..
"Dabei ist zu beachten\\, dass Fässer nur komplett gefüllt oder entleert werden können. Sind bspw. weniger als 10 Einheiten im Tank\\, muss dieser Rest mit Eimern oder Kanistern entnommen oder leergepumpt werden.\n"..
"Ein Tank kann auch von Hand gefüllt oder geleert werden\\, indem mit einem vollen oder leeren Flüssigkeitsbehälter (Fass\\, Kanister) auf den Tank geklickt wird. Dabei ist zu beachten\\, dass Fässer nur komplett gefüllt oder entleert werden können. Sind bspw. weniger als 10 Einheiten im Tank\\, muss dieser Rest mit Kanistern entnommen oder leergepumpt werden.\n"..
"\n"..
"In einen TA3 Tank passen 500 Einheiten oder 50 Fässer einer Flüssigkeit.\n"..
"\n"..
@ -626,6 +635,15 @@ techage.manual_DE.aText = {
"\n"..
"\n"..
"\n",
"Um Flüssigkeiten zwischen Behältern und Tanks umzufüllen\\, dient der Einfülltrichter.\n"..
"\n"..
" - wird der Einfülltrichter unter einen Tank gesetzt und werden leere Fässer mit einem Schieber oder von Hand in den Einfülltrichter gegeben\\, wird der Tankinhalt in die Fässer umgefüllt und die Fässer können ausgangsseitig wieder entnommen werden\n"..
" - wird der Einfülltrichter auf einen Tank gesetzt und werden volle Fässer mit einem Schieber oder von Hand in den Einfülltrichter gegeben\\, werden diese in den Tank umgefüllt und die Fässer können ausgangsseitig wieder entnommen werden\n"..
"\n"..
"Dabei ist zu beachten\\, dass Fässer nur komplett gefüllt oder entleert werden können. Sind bspw. weniger als 10 Einheiten im Tank\\, muss dieser Rest mit Kanistern entnommen oder leergepumpt werden.\n"..
"\n"..
"\n"..
"\n",
"Um deine Generatoren und Öfen mit Öl betreiben zu können\\, muss du zuerst nach Öl suchen und einen Bohrturm errichten und danach das Öl fördern.\n"..
"Dazu dienen dir TA3 Ölexplorer\\, TA3 Ölbohrkiste und TA3 Ölpumpe.\n"..
"\n"..
@ -889,7 +907,7 @@ techage.manual_DE.aText = {
"",
"Das Techage Info Tool (Schraubenschlüssel) hat verschiedene Funktionen. Er zeigt die Uhrzeit\\, die Position\\, die Temperatur und das Biome an\\, wenn auf einen unbekannten Block geklickt wird.\n"..
"Wird auf einen TechAge Block mit Kommandoschnittstelle geklickt\\, werden alle verfügbaren Daten abgerufen (siehe auch \"Logik-/Schalt-Blöcke\").\n"..
"Bei Strom-Verteilerdosen werden die Daten aus dem Stromnetz angezeigt. Außerdem werden die benachbarten Netzwerkteilnehmer (über bis zu 4 Verteiler hinweg) mit einem blauen Käfig und einem Text angezeigt. Der Text zeigt die Position und die Anzahl der Verbindungen zu anderen Blöcken (0..6). Dies soll bei der Suche nach Kabelunterbrechungen helfen.\n"..
"Bei Strom-Verteilerdosen werden die benachbarten Netzwerkteilnehmer (bis zu 50 Meter weit) mit einem blauen Käfig angezeigt.\n"..
"\n"..
"\n"..
"\n",
@ -970,8 +988,7 @@ techage.manual_DE.aText = {
"\n"..
"\n",
"Der Wechselrichter wandelt den Solarstrom (DC) in Wechselstrom (AC) um\\, so dass dieser in das Stromnetz eingespeist werden kann.\n"..
"Ein Wechselrichter\\, bestehend aus zwei Blöcken kann maximal 100 ku an Strom einspeisen\\, was 33 Solarmodulen oder auch mehr entspricht.\n"..
"Der DC Block muss links neben den AC-Block gesetzt werden.\n"..
"Ein Wechselrichter kann maximal 100 ku an Strom einspeisen\\, was 33 Solarmodulen oder auch mehr entspricht.\n"..
"\n"..
"\n"..
"\n",
@ -1018,7 +1035,9 @@ techage.manual_DE.aText = {
"\n"..
"\n"..
"\n",
"Der Generator dient zur Stromerzeugung. Daher muss auch der Generator am Stromnetz angeschlossen werden. Dabei muss beachtet werden\\, dass es ein funktionierendes Stromnetz ist\\, denn der Generator des Energiespeichers kann nicht als einzelne Stromquelle funktionieren. Der Generator kann 60 ku abgeben.\n"..
"Der Generator dient zur Stromerzeugung. Daher muss auch der Generator am Stromnetz angeschlossen werden. \n"..
"\n"..
"Der Generator kann 60 ku abgeben.\n"..
"\n"..
"\n"..
"\n",
@ -1122,6 +1141,10 @@ techage.manual_DE.aText = {
"\n"..
"\n"..
"\n",
"Mit der Wasserpumpe kann Wasser über Flüssigkeitsleitungen in Tanks gepumpt und so für Rezepte genutzt werden. Die Wasserpumpe muss dazu ins Meer gesetzt werden Ein \"Pool\" aus ein paar Wasserblöcken geht nicht!\n"..
"\n"..
"\n"..
"\n",
}
techage.manual_DE.aItemName = {
@ -1134,6 +1157,8 @@ techage.manual_DE.aItemName = {
"",
"",
"",
"",
"",
"techage_ta1",
"",
"",
@ -1195,6 +1220,7 @@ techage.manual_DE.aItemName = {
"",
"ta3_tank",
"ta3_pump",
"ta3_filler",
"techage_ta3",
"ta3_oilexplorer",
"ta3_drillbox",
@ -1264,6 +1290,7 @@ techage.manual_DE.aItemName = {
"ta4_tank",
"ta4_pump",
"ta4_furnaceheater",
"ta4_waterpump",
}
techage.manual_DE.aPlanTable = {
@ -1277,6 +1304,8 @@ techage.manual_DE.aPlanTable = {
"",
"",
"",
"",
"",
"coalpile",
"coalburner",
"",
@ -1344,6 +1373,7 @@ techage.manual_DE.aPlanTable = {
"",
"",
"",
"",
"ta3_distiller",
"",
"",
@ -1406,5 +1436,6 @@ techage.manual_DE.aPlanTable = {
"",
"",
"",
"",
}

View File

@ -160,6 +160,7 @@ end
local function node_timer(pos, elapsed)
local nvm = techage.get_nvm(pos)
nvm.capa = nvm.capa or 0
nvm.capa_max = nvm.capa_max or 0
local taken = 0
local given = 0
@ -234,7 +235,7 @@ techage.register_node({"techage:heatexchanger1"}, {
local nvm = techage.get_nvm(pos)
-- used by heatexchanger2
if topic == "state" then
return nvm.capa_max, nvm.capa, PWR_PERF, math.max(nvm.needed or 0, 0)
return (nvm.capa_max or 0), (nvm.capa or 0), PWR_PERF, math.max(nvm.needed or 0, 0)
elseif topic == "integrity" then
return inlet_cmnd(pos, "volume", payload)
elseif topic == "state" then
@ -262,6 +263,10 @@ techage.register_node({"techage:heatexchanger1"}, {
if nvm.running and nvm.charging then
play_sound(pos)
end
local mem = tubelib2.get_mem(pos)
local nvm = techage.get_nvm(pos)
nvm.capa = (nvm.capa or 0) + (mem.capa or 0)
tubelib2.del_mem(pos)
end,
})

View File

@ -48,7 +48,7 @@ local function formspec(self, pos, nvm)
end
local function can_start(pos, nvm, state)
print("can_start", he1_cmnd(pos, "can_start"))
--print("can_start", he1_cmnd(pos, "can_start"))
return he1_cmnd(pos, "can_start") or S("did you check the plan?")
end

View File

@ -135,6 +135,10 @@ local function after_place_node(pos)
M(pos):set_int("outdir", networks.side_to_outdir(pos, "R"))
Pipe:after_place_node(pos)
Cable:after_place_node(pos)
local inv = M(pos):get_inventory()
inv:set_size('src', 4)
inv:set_stack('src', 2, {name = "techage:gasoline", count = 60})
inv:set_stack('src', 4, {name = "techage:gasoline", count = 60})
end
local function after_dig_node(pos, oldnode, oldmetadata, digger)

View File

@ -97,7 +97,7 @@ end
local net_def = {
ele1 = {
sides = {U=1, D=1}, -- Cable connection sides
sides = {U=1, D=1, L=1, R=1, F=1, B=1}, -- Cable connection sides
ntype = "con1",
on_power = on_power,
on_nopower = on_nopower,

View File

@ -144,3 +144,13 @@ techage.register_node({"techage:filler"}, {
return techage.put_items(inv, "dst", stack)
end,
})
minetest.register_craft({
output = "techage:filler",
recipe = {
{"default:steel_ingot", "group:wood", "default:steel_ingot"},
{"techage:tubeS", "", "techage:tubeS"},
{"default:steel_ingot", "group:wood", "default:steel_ingot"},
},
})

View File

@ -46,7 +46,6 @@ end
-- store network ID on each pump like node
local function store_netID(pos, outdir, netID)
networks.connection_walk(pos, outdir, Pipe, function(pos, indir, node)
print("store_netID", dump(indir))
local ntype = net_def(pos, "pipe2").ntype
if ntype and ntype == "pump" then
local nvm = techage.get_nvm(pos)
@ -85,7 +84,6 @@ local function get_netID(pos, outdir)
end
local function get_network_table(pos, outdir, ntype)
print("get_network_table", outdir)
local netID = get_netID(pos, outdir)
if netID then
local netw = networks.get_network("pipe2", netID)

View File

@ -65,7 +65,7 @@ local State4 = techage.NodeStates:new({
local function pumping(pos, nvm, state, capa)
local outdir = M(pos):get_int("outdir")
local starter = get_starter_name(pos)
print("pumping", outdir, Flip[outdir])
--print("pumping", outdir, Flip[outdir])
local taken, name = liquid.take(pos, Flip[outdir], nil, capa, starter)
if taken > 0 then
local leftover = liquid.put(pos, outdir, name, taken, starter)

View File

@ -102,7 +102,6 @@ No plan available=Kein Plan verfügar
No wind at this altitude!=Kein Wind auf dieser Höhe
Node owner=Blockbesitzer
Number of all nodes=Anzahl aller Blöcke
Number of nodes=Anzahl Blöcke
Oil Drill Box=Ölbohrkiste
Oil Pumpjack=Ölpumpe
Oil Source=Erdöl
@ -116,8 +115,6 @@ Position temperature=Positionstemperatur
Power AC=Wechselstrom
Power DC=Gleichstrom
Power Source=Stromquelle
Primary available=Primär verfügbar
Primary needed=Primär benötigt
Priv missing=Rechte fehlen
Propane Cylinder Large=Propangasflasche groß
Propane Cylinder Small=Propangasflasche klein
@ -134,8 +131,6 @@ Remove derrick=Entferne Ölturm
Rinsing=Waschen
River Water Barrel=Flusswasserfass
Save=Speichern
Secondary available=Sekundär verfügbar
Secondary needed=Sekundär benötigt
Send signal if nodes have been:=Sende ein Signal falls Blöcke:
Show all forceload blocks in a 64x64x64 range=Zeige alle Forceload Blöcke im Umkreis von 64x64x64 Blöcken
Sieved Basalt Gravel=Basaltkies gesiebt
@ -296,7 +291,7 @@ TechAge Gate Block=TechAge Torblock
TechAge Gravel=TechAge Kies
TechAge Info Tool (use @= read status info)=TechAge Info Werkzeug
TechAge Programmer (right @= read number, left @= write numbers)=TechAge Programmer (rechts @= lese Nummer, links @= schreibe Nummern)
TechAge Repair Kit=TechAge Reparier Set
TechAge Repair Kit=TechAge Reparaturset
TechAge Signal Lamp=TechAge Signallampe
TechAge Signal Lamp (can be colored)=TechAge Signallampe (kann gefärbt werden)
TechAge Steel Mat=TechAge Stahlmatte
@ -360,7 +355,13 @@ reactor defect=Reaktor defekt
reactor defect or no power=Reaktor defekt oder kein Strom
reactor has no power=Reaktor hat keinen Strom
removed=entfernt
repaired=repariert
stopped=gestoppt
water temperature=Wassertemperatur
wrong storage diameter=Falscher Wärmespeicher-Durchmesser
##### not used anymore #####
Number of nodes=Anzahl Blöcke
Secondary needed=Sekundär benötigt
Secondary available=Sekundär verfügbar
Primary available=Primär verfügbar
Primary needed=Primär benötigt

View File

@ -119,6 +119,8 @@ Power Source=Stromquelle
Primary available=Primär verfügbar
Primary needed=Primär benötigt
Priv missing=Rechte fehlen
Propane Cylinder Large=Propangasflasche groß
Propane Cylinder Small=Propangasflasche klein
Pumpjack=Ölpumpe
Punch the block to make the area visible.=Schlage auf den Bock um den Bereich anzuzeigen.
Pusher=Schieber
@ -214,7 +216,6 @@ TA3 Fuel Oil=TA3 Schweröl
TA3 Fuel Oil Barrel=TA3 Schwerölfass
TA3 Fuel Oil Canister=TA3 Schwerölkanister
TA3 Furnace Oil Burner=TA3 Ofen-Ölbrenner
TA3 Gas=TA3 Gas
TA3 Gasoline=TA3 Benzin
TA3 Gasoline Barrel=TA3 Benzinfass
TA3 Gasoline Canister=TA3 Benzinkanister
@ -236,6 +237,7 @@ TA3 Player Detector=TA3 Spieler Detektor
TA3 Power Station Firebox=TA3 Kraftwerks-Feuerbox
TA3 Power Station Oil Burner=TA3 Kraftwerks-Ölbrenner
TA3 Power Terminal=TA3 Strom Terminal
TA3 Propane=TA3 Propan
TA3 Protected Chest=TA3 Gesicherte Kiste
TA3 Pump=TA3 Pumpe
TA3 Repeater=TA3 Wiederholer
@ -294,7 +296,7 @@ TechAge Gate Block=TechAge Torblock
TechAge Gravel=TechAge Kies
TechAge Info Tool (use @= read status info)=TechAge Info Werkzeug
TechAge Programmer (right @= read number, left @= write numbers)=TechAge Programmer (rechts @= lese Nummer, links @= schreibe Nummern)
TechAge Repair Kit=TechAge Reparier Set
TechAge Repair Kit=TechAge Reparaturset
TechAge Signal Lamp=TechAge Signallampe
TechAge Signal Lamp (can be colored)=TechAge Signallampe (kann gefärbt werden)
TechAge Steel Mat=TechAge Stahlmatte

View File

@ -100,7 +100,6 @@ No plan available=
No wind at this altitude!=
Node owner=
Number of all nodes=
Number of nodes=
Oil Drill Box=
Oil Pumpjack=
Oil Source=
@ -114,8 +113,6 @@ Position temperature=
Power AC=
Power DC=
Power Source=
Primary available=
Primary needed=
Priv missing=
Propane Cylinder Large=
Propane Cylinder Small=
@ -132,8 +129,6 @@ Remove derrick=
Rinsing=
River Water Barrel=
Save=
Secondary available=
Secondary needed=
Send signal if nodes have been:=
Show all forceload blocks in a 64x64x64 range=
Sieved Basalt Gravel=
@ -358,6 +353,7 @@ reactor defect=
reactor defect or no power=
reactor has no power=
removed=
repaired=
stopped=
water temperature=
wrong storage diameter=

View File

@ -16,6 +16,34 @@ Regenerative Energiequellen wie Wind, Sonne und Biokraft helfen dir, das Ölzeit
[wlanchip|image]
## Software Update
Zum 23.02.2020 gab es ein größeres Software-Update, was einige Änderungen und aus Sicht der Spieler auch "Probleme" mit sich bringt. Das Software-Update war aber nötig, um die techage Mod weiter ausbauen und entwickeln zu können.
Da sich mit dem Update die Art und Weise wie Daten der Maschinen gespeichert werden, geändert hat, sind nach dem Update alle Maschinen erst einmal ohne Daten und damit Funktionslos und müssen "repariert" werden.
Dazu gibt es ein Reparaturset, bestehend aus dem Schraubenschlüssel (Techage Info Werkzeug) und der Werkzeugtasche (TechAge Reparaturset). Beide Werkzeuge können gecraftet werden.
- Mit dem Schraubenschlüssel können die Verbindungen über das Stromnetz geprüft werden. Dazu einfach auf einen Generator oder eine Junction klicken, dann werden alle verbundenen Blöcke in der Umgebung markiert. Bei Unterbrechungen immer den letzten markierten Block (Junction) in der Kette neu setzen.
- normale Maschinen müssen nur neu gestartet werden. Hilft dies nicht, einfach neu setzen.
- Generatoren (auch Akkus und Brennstoffzelle) können entweder neu gesetzt, oder mit dem Reparaturset angeklickt und damit repariert werden.
- Die Trägermodule der Solarzellen müssen ebenfalls mit dem "Reparaturset" angeklickt werden.
- Die Stromschalterbox und die Stromschalter müssen neu gesetzt werden. Die Stromschalterbox verhält sich beim Setzen nun ähnlich wie Stromkabel.
- Der TA4 Solar Wechselrichter besteht jetzt nur noch aus einem Block. Der zweite Block muss entfernt und durch ein rotes Kabel ersetzt werden.
- Wasserstoff ist nun wie eine Flüssigkeit zu behandeln. Elektrolyseur und Brennstoffzelle müssen daher nicht mehr über Röhren und Schieber sondern über Pumpen und Flüssigkeitsleitungen miteinander verbunden werden.
### Was hat sich am Spiel geändert?
- der TA1 Hopper ist weg, dafür kann jetzt der Hopper aus der Mod Minecart genutzt werden.
- Blöcke für Wasser und andere Flüssigkeiten (Boiler, Tanks) haben kein Inventory mehr. Diese muss man nun füllen bzw. leeren, in dem man mit einem vollen bzw. leeren Behälter auf den Block klickt. Bei Wasser ist das der Eimer, bei Öl und anderen Flüssigkeiten die Fässer oder Kanister.
- für TA2 und TA3 gibt er jetzt einen Steinbrecher (Quarry) zum Abbau von Steinen.
- Die Stromschalterbox und die Stromschalter wurden überarbeitet und sind nun leichter zu Platzieren.
- Alle Menüs werden nun automatisch und zyklisch aktualisiert, den "Update" Button gibt es nicht mehr.
- Die Tanks können nun nicht mehr direkt über Schieber gefüllt oder geleert werden. Hierzu ist zusätzlich ein TA Einfülltrichter (TA Liquid Filler) notwendig.
- Gas, was beim Destillieren entsteht (Propangas), kann über den Reformer in Wasserstoff umgewandelt und dann zu Strom gemacht werden.
- Der TA4 Solar Wechselrichter besteht jetzt nur noch aus einem Block.
- Generator und Wärmetauscher beim Energiespeicher arbeiten nun unabhängig von einander und können auch einzeln mit dem Stromnetz verbunden sein.
-
## Hinweise
Diese Dokumentation ist sowohl "ingame" (Block Konstruktionsplan) als auch auf GitHub als MD-Files verfügbar.
@ -76,4 +104,5 @@ Es wird zur Herstellung von Aluminium benötigt, was vor allem in TA4 Verwendung
- 28.09.2019: Um Solaranlage erweitert
- 05.10.2019: Daten zur Solaranlage und Beschreibung zum Wechselrichter und zum Power-Terminal geändert
- 18.11.2019: Kapitel für Erze, Reaktor, Aluminium, Silo, Bauxit, Ofenheizung, Kieswaschanlage hinzugefügt
- 22.02.2020: Korrekturen und Kapitel zum Update

View File

@ -55,7 +55,7 @@ Der Schmelztiegel hat ein eigenes Menü mit Rezepten und ein Inventar, wo du die
## Erze und Werkzeuge
TA1 hat seine eigenen Werkzeuge wie Hammer und Kiessieb, aber auch bereits eine Maschine zur Automatisierung, den TA1 Trichter (hopper).
TA1 hat seine eigenen Werkzeuge wie Hammer und Kiessieb, aber auch der Minecart Hopper kann genutzt werden.
[ta1_gravelsieve|image]
@ -78,9 +78,9 @@ Um hier nicht stundenlang am Sieb zu stehen, kann das Sieben mit dem Trichter (h
### Trichter / Hopper
Der Trichter saugt Gegenstände (items) von oben ein und gibt diese nach rechts weiter. Beim Platzieren des Trichters muss daher auf die Ausgaberichtung geachtet werden.
Der Hopper aus der Mod "Minecart" dient in erster Linie zum Be- und Entladen von Minecarts. Er saugt Gegenstände (items) von oben ein und gibt diese nach rechts weiter. Beim Platzieren des Trichters muss daher auf die Ausgaberichtung geachtet werden.
Der Trichter kann auch Items aus Kisten (chest) ziehen, sofern die Kiste auf dem Trichter steht.
Der Trichter kann aber auch Items aus Kisten (chest) ziehen, sofern die Kiste auf dem Trichter steht.
Der Trichter kann auch Items in Kisten legen, sofern die Kiste neben dem Trichter steht.

View File

@ -39,7 +39,7 @@ Die Feuerbox muss mit Kohle oder Holzkohle gefüllt werden. Die Brenndauer ist a
### TA2 Boiler
Teil der Dampfmaschine. Muss mit Wasser gefüllt werden. Wem kein Wasser mehr vorhanden ist oder die Temperatur zu weit absinkt, schaltet sich die Dampfmaschine ab.
Teil der Dampfmaschine. Muss mit Wasser gefüllt werden. Dies erfolgt durch Klicken mit einem Wassereimer auf den Boiler. Wenn kein Wasser mehr vorhanden ist oder die Temperatur zu weit absinkt, schaltet sich die Dampfmaschine ab.
[ta2_boiler|image]

View File

@ -49,7 +49,7 @@ Der Ölbrenner kann nur 50 Einheiten Kraftstoff aufnehmen. Ein zusätzlicher Öl
### TA3 Boiler unten/oben
Teil des Kraftwerk. Muss mit Wasser gefüllt werden. Wem kein Wasser mehr vorhanden ist oder die Temperatur zu weit absinkt, schaltet sich der Boiler ab.
Teil des Kraftwerk. Muss mit Wasser gefüllt werden. Wem kein Wasser mehr vorhanden ist oder die Temperatur zu weit absinkt, schaltet sich das Kraftwerk ab.
[ta3_boiler|image]
@ -84,7 +84,7 @@ TA3 besitzt 2 Arten von Stromkabel:
- Überlandleitungen (TA Stromleitung) für Freiluftverkabelung über große Strecken. Diese Kabel sind geschützt, können also von anderen Spielern nicht entfernt werden.
Mehrere Verbraucher und Generatoren können in einem Stromnetzwerk zusammen betrieben werden. Mit Hilfe der Verteilerdosen können so große Netzwerke aufgebaut werden.
Wird zu wenig Strom bereitgestellt, gehen Teile der Verbraucher aus, bzw. Lampen beginnen zu flackern.
Wird zu wenig Strom bereitgestellt, gehen die Verbraucher aus.
In diesem Zusammenhang ist auch wichtig, dass die Funktionsweise von Forceload Blöcken verstanden wurde, denn bspw. Generatoren liefern nur Strom, wenn der entsprechende Map-Block geladen ist. Dies kann mit einen Forceload Block erzwungen werden.
In TA4 kommt noch ein Kabel für die Solaranlage hinzu.
@ -189,10 +189,9 @@ Bei Volllast kann ein Akku 400 s lang Strom aufnehmen und wenn er voll ist, auch
### TA3 Strom Terminal / Power Terminal
Das Strom-Terminal muss vor eine Verteilerdose platziert werden. Es zeigt Daten aus dem Stromnetz an wie:
Das Strom-Terminal muss mit dem Stromnetz verbunden werden. Es zeigt Daten aus dem Stromnetz an wie:
- Anzahl und Leistung der verschiedenen Generatoren und Akkus (aktuell/maximal)
- Anzahl der Netzwerk-Blöcke (max. 1000)
Die Daten des Terminals werden beim Öffnen des Menüs für einige Sekunden aktualisiert. Danach kann die Anzeige durch Anklicken des "Update" Buttons erneut aktualisiert werden.
[ta3_powerterminal|image]
@ -236,7 +235,7 @@ Ist Teil des TA3 Industrieofen. Siehe TA3 Industrieofen.
## Flüssigkeiten
Flüssigkeiten wie Wasser oder Öl können nur die spezielle Leitungen gepumpt und in Tanks gespeichert werden. Wie auch bei Wasser gibt es aber Behälter (Eimer, Kanister, Fässer), in denen die Flüssig gelagert und transportiert werden kann.
Flüssigkeiten wie Wasser oder Öl können nur die spezielle Leitungen gepumpt und in Tanks gespeichert werden. Wie auch bei Wasser gibt es aber Behälter (Kanister, Fässer), in denen die Flüssig gelagert und transportiert werden kann.
Über die gelben Leitungen und Verbindungsstücke ist es auch möglich, mehrere Tanks zu verbinden. Allerdings müssen die Tanks den selben Inhalt haben und zwischen Tank, Pumpe und Verteiler muss immer mindestens eine gelbe Leitung sein.
Bspw. zwei Tanks direkt mit einem Verteilerstück zu verbinden, geht nicht.
@ -247,11 +246,8 @@ Bspw. zwei Tanks direkt mit einem Verteilerstück zu verbinden, geht nicht.
### TA3 Tank / TA3 Tank
In einem Tank können Flüssigkeiten gespeichert werden. Ein Tank kann über eine Pumpe gefüllt bzw. geleert werden. Dazu muss die Pumpe über einer Leitung (gelbe Röhre) mit dem Tank verbunden sein.
Ein Tank kann aber auch über Eimer/Fässer gefüllt bzw. geleert werden:
- werden leere Fässer mit einem Schieber oder von Hand in den Tank gegeben, werden diese gefüllt und können ausgangsseitig wieder entnommen werden
- werden volle Fässer mit einem Schieber oder von Hand in den Tank gegeben, werden diese geleert und können ausgangsseitig wieder entnommen werden
Dabei ist zu beachten, dass Fässer nur komplett gefüllt oder entleert werden können. Sind bspw. weniger als 10 Einheiten im Tank, muss dieser Rest mit Eimern oder Kanistern entnommen oder leergepumpt werden.
Ein Tank kann auch von Hand gefüllt oder geleert werden, indem mit einem vollen oder leeren Flüssigkeitsbehälter (Fass, Kanister) auf den Tank geklickt wird. Dabei ist zu beachten, dass Fässer nur komplett gefüllt oder entleert werden können. Sind bspw. weniger als 10 Einheiten im Tank, muss dieser Rest mit Kanistern entnommen oder leergepumpt werden.
In einen TA3 Tank passen 500 Einheiten oder 50 Fässer einer Flüssigkeit.
@ -268,10 +264,21 @@ Hinweis 1: Die Pumpe darf nicht direkt neben den Tank platziert werden. Es muss
Hinweis 2: Nach dem Starten markiert die Pumpe 10 x die Blöcke, von und zu denen gepumpt wird.
[ta3_pump|image]
### TA Einfülltrichter / TA Liquid Filler
Um Flüssigkeiten zwischen Behältern und Tanks umzufüllen, dient der Einfülltrichter.
- wird der Einfülltrichter unter einen Tank gesetzt und werden leere Fässer mit einem Schieber oder von Hand in den Einfülltrichter gegeben, wird der Tankinhalt in die Fässer umgefüllt und die Fässer können ausgangsseitig wieder entnommen werden
- wird der Einfülltrichter auf einen Tank gesetzt und werden volle Fässer mit einem Schieber oder von Hand in den Einfülltrichter gegeben, werden diese in den Tank umgefüllt und die Fässer können ausgangsseitig wieder entnommen werden
Dabei ist zu beachten, dass Fässer nur komplett gefüllt oder entleert werden können. Sind bspw. weniger als 10 Einheiten im Tank, muss dieser Rest mit Kanistern entnommen oder leergepumpt werden.
[ta3_filler|image]
## Öl-Förderung
Um deine Generatoren und Öfen mit Öl betreiben zu können, muss du zuerst nach Öl suchen und einen Bohrturm errichten und danach das Öl fördern.
@ -636,7 +643,7 @@ Die Verarbeitungsleistung ist 2 Items alle 8 s. Der Block benötigt 5 ku Strom.
Das Techage Info Tool (Schraubenschlüssel) hat verschiedene Funktionen. Er zeigt die Uhrzeit, die Position, die Temperatur und das Biome an, wenn auf einen unbekannten Block geklickt wird.
Wird auf einen TechAge Block mit Kommandoschnittstelle geklickt, werden alle verfügbaren Daten abgerufen (siehe auch "Logik-/Schalt-Blöcke").
Bei Strom-Verteilerdosen werden die Daten aus dem Stromnetz angezeigt. Außerdem werden die benachbarten Netzwerkteilnehmer (über bis zu 4 Verteiler hinweg) mit einem blauen Käfig und einem Text angezeigt. Der Text zeigt die Position und die Anzahl der Verbindungen zu anderen Blöcken (0..6). Dies soll bei der Suche nach Kabelunterbrechungen helfen.
Bei Strom-Verteilerdosen werden die benachbarten Netzwerkteilnehmer (bis zu 50 Meter weit) mit einem blauen Käfig angezeigt.
[ta3_end_wrench|image]

View File

@ -55,6 +55,7 @@ In dieser Zeit steht immer die gleiche Leistung zur Verfügung. Nach 18:00 schal
Für die Leistung der Solarmodule ist die Biome Temperatur entscheidend. Je heißer die Temperatur, um so höher der Ertrag.
Die Biome Temperatur kann mit dem Techage Info Tool (Schraubenschlüssel) bestimmt werden. Sie schwankt typischerweise zwischen 0 und 100:
- bei 100 steht die volle Leistung zur Verfügung
- bei 50 steht die halbe Leistung zur Verfügung
- bei 0 steht keine Leistung zur Verfügung
@ -94,8 +95,7 @@ Die Trägermodule können direkt aneinander gesetzt und so zu einer Modulreihe v
### TA4 Solar Wechselrichter / Solar Inverter
Der Wechselrichter wandelt den Solarstrom (DC) in Wechselstrom (AC) um, so dass dieser in das Stromnetz eingespeist werden kann.
Ein Wechselrichter, bestehend aus zwei Blöcken kann maximal 100 ku an Strom einspeisen, was 33 Solarmodulen oder auch mehr entspricht.
Der DC Block muss links neben den AC-Block gesetzt werden.
Ein Wechselrichter kann maximal 100 ku an Strom einspeisen, was 33 Solarmodulen oder auch mehr entspricht.
[ta4_solar_inverter|image]
@ -164,7 +164,9 @@ Die Turbine ist Teil des Energiespeichers. Sie muss neben den Generator gesetzt
### TA4 Generator
Der Generator dient zur Stromerzeugung. Daher muss auch der Generator am Stromnetz angeschlossen werden. Dabei muss beachtet werden, dass es ein funktionierendes Stromnetz ist, denn der Generator des Energiespeichers kann nicht als einzelne Stromquelle funktionieren. Der Generator kann 60 ku abgeben.
Der Generator dient zur Stromerzeugung. Daher muss auch der Generator am Stromnetz angeschlossen werden.
Der Generator kann 60 ku abgeben.
[ta4_generator|image]
@ -311,3 +313,9 @@ Die Ofenheizung benötigt 14 ku Strom.
[ta4_furnaceheater|image]
### TA4 Wasserpumpe / Water Pump
Mit der Wasserpumpe kann Wasser über Flüssigkeitsleitungen in Tanks gepumpt und so für Rezepte genutzt werden. Die Wasserpumpe muss dazu ins Meer gesetzt werden Ein "Pool" aus ein paar Wasserblöcken geht nicht!
[ta4_waterpump|image]

View File

@ -1,6 +1,8 @@
# Inhaltsverzeichnis
- [Tech Age Mod](./manual_DE.md#tech-age-mod)
- [Software Update](./manual_DE.md#software-update)
- [Was hat sich am Spiel geändert?](./manual_DE.md#was-hat-sich-am-spiel-geändert?)
- [Hinweise](./manual_DE.md#hinweise)
- [Erze und Mineralien](./manual_DE.md#erze-und-mineralien)
- [Meridium](./manual_DE.md#meridium)
@ -70,6 +72,7 @@
- [Flüssigkeiten](./manual_ta3_DE.md#flüssigkeiten)
- [TA3 Tank / TA3 Tank](./manual_ta3_DE.md#ta3-tank--ta3-tank)
- [TA3 Pumpe / TA3 Pump](./manual_ta3_DE.md#ta3-pumpe--ta3-pump)
- [TA Einfülltrichter / TA Liquid Filler](./manual_ta3_DE.md#ta-einfülltrichter--ta-liquid-filler)
- [Öl-Förderung](./manual_ta3_DE.md#Öl-förderung)
- [TA3 Ölexplorer / Oil Explorer](./manual_ta3_DE.md#ta3-Ölexplorer--oil-explorer)
- [TA3 Ölbohrkiste / Oil Drill Box](./manual_ta3_DE.md#ta3-Ölbohrkiste--oil-drill-box)
@ -138,4 +141,5 @@
- [Weitere TA4 Blöcke](./manual_ta4_DE.md#weitere-ta4-blöcke)
- [TA4 Tank / TA4 Tank](./manual_ta4_DE.md#ta4-tank--ta4-tank)
- [TA4 Pumpe / TA4 Pump](./manual_ta4_DE.md#ta4-pumpe--ta4-pump)
- [TA4 Ofenheizung / furnace heater](./manual_ta4_DE.md#ta4-ofenheizung--furnace-heater)
- [TA4 Ofenheizung / furnace heater](./manual_ta4_DE.md#ta4-ofenheizung--furnace-heater)
- [TA4 Wasserpumpe / Water Pump](./manual_ta4_DE.md#ta4-wasserpumpe--water-pump)

View File

@ -126,7 +126,7 @@ function techage.power.power_distribution(network, tlib_type)
network.available2 = get_generator_sum(network.gen2, tlib_type)
network.needed1 = get_consumer_sum(network.con1, tlib_type)
network.needed2 = get_consumer_sum(network.con2, tlib_type)
print(network.available1, network.available2, network.needed1, network.needed2, network.alive)
--print(network.available1, network.available2, network.needed1, network.needed2, network.alive)
-- store results
network.on = network.available1 + network.available2 >= network.needed1

View File

@ -62,6 +62,9 @@ function techage.power.formspec_label_bar(x, y, label, max_power, current_power,
local offs = 2.4 - (current_power / max_power) * 2.4
ypos = 0.4 + in_range(offs, 0.4, 2.4)
end
if current_power >= 100 then
current_power = math.floor(current_power)
end
percent = (percent + 5) / 1.1 -- texture correction
return "container["..x..","..y.."]"..
"box[0,0;2.3,3.3;#395c74]"..

View File

@ -56,3 +56,22 @@ techage.register_junction("techage:electric_junction", 2/8, Boxes, Cable, {
},
},
})
local Names = {}
for idx = 0,63 do
Names[#Names+1] = "techage:electric_junction"..idx
end
minetest.register_lbm({
label = "Repair Junction",
name = "techage:electric_junction",
nodenames = Names,
run_at_every_load = true,
action = function(pos, node)
local ndef = minetest.registered_nodes[node.name]
ndef.after_place_node(pos)
ndef.tubelib2_on_update2(pos, 0, Cable)
tubelib2.del_mem(pos)
end,
})

View File

@ -213,6 +213,9 @@ minetest.register_node("techage:power_pole2", {
Cable:after_dig_tube(pos, oldnode)
end
end,
tubelib2_on_update2 = function(pos, dir1, tlib2, node)
power.update_network(pos, nil, tlib2)
end,
on_rotate = screwdriver.disallow, -- important!
paramtype = "light",
@ -292,6 +295,7 @@ minetest.register_node("techage:power_pole_conn", {
},
connects_to = {"techage:power_line", "techage:power_lineS", "techage:power_lineA"},
-- after_place_node -- see techage:power_pole
tubelib2_on_update2 = function(pos, dir1, tlib2, node)
power.update_network(pos, nil, tlib2)
end,

View File

@ -89,7 +89,7 @@ local function after_dig_node(pos, oldnode)
end
local function tubelib2_on_update2(pos, outdir, tlib2, node)
power.update_network(pos, outdir, tlib2)
power.update_network(pos, nil, tlib2)
end
local net_def1 = {
@ -279,3 +279,14 @@ minetest.register_craft({
{"", "", ""},
},
})
minetest.register_lbm({
label = "Repair Carrier Module",
name = "techage:ta4_solar_carrier",
nodenames = {"techage:ta4_solar_carrier", "techage:ta4_solar_carrierB"},
run_at_every_load = true,
action = function(pos, node)
local ndef = minetest.registered_nodes[node.name]
ndef.after_place_node(pos)
end,
})

View File

@ -219,6 +219,10 @@ techage.register_node({"techage:ta3_akku"}, {
meta:set_string("node_number", own_num)
meta:set_string("infotext", S("TA3 Accu Box").." "..own_num)
end
local mem = tubelib2.get_mem(pos)
local nvm = techage.get_nvm(pos)
nvm.capa = (nvm.capa or 0) + (mem.capa or 0)
tubelib2.del_mem(pos)
end,
})

View File

@ -20,6 +20,157 @@ local Cable2 = techage.TA4_Cable
local Pipe2 = techage.LiquidPipe
local networks = techage.networks
local ListOfNodes = {
["techage:generator"] = true,
["techage:generator_on"] = true,
["techage:ta4_generator"] = true,
["techage:ta4_generator_on"] = true,
["techage:ta4_fuelcell"] = true,
["techage:ta4_fuelcell_on"] = true,
["techage:t3_pump"] = true,
["techage:t3_pump_on"] = true,
["techage:t4_pump"] = true,
["techage:t4_pump_on"] = true,
["techage:ta4_solar_inverter"] = true,
["techage:flywheel"] = true,
["techage:flywheel_on"] = true,
["techage:tiny_generator"] = true,
["techage:tiny_generator_on"] = true,
["techage:ta4_electrolyzer"] = true,
["techage:ta4_electrolyzer_on"] = true,
["techage:oilfirebox"] = true,
}
local function delete_data(pos)
local meta = minetest.get_meta(pos)
local owner = meta:get_string("owner")
local number = meta:get_string("number")
local node_number = meta:get_string("node_number")
tubelib2.del_mem(pos)
meta:from_table(nil)
meta:set_string("owner", owner)
meta:set_string("number", number)
meta:set_string("node_number", node_number)
end
local function inv_get_count(inv, listname, size)
local cnt = 0
for i = 1,size do
cnt = cnt + inv:get_stack(listname, i):get_count()
end
return cnt
end
local function inv_get_name(inv, listname, size)
for i = 1,size do
local name = inv:get_stack(listname, i):get_name()
if name ~= "" then
return name
end
end
return ""
end
local function inv_clear(inv, listname, size)
for i = 1,size do
inv:set_stack(listname, i, nil)
end
end
local function restore_inv_content(pos, listname, size)
local inv = M(pos):get_inventory()
local count = inv_get_count(inv, listname, size)
if count > 0 then
local nvm = techage.get_nvm(pos)
nvm.liquid = nvm.liquid or {}
nvm.liquid.amount = count
nvm.liquid.name = inv_get_name(inv, listname, size)
inv:set_stack(listname, 1, nil)
inv_clear(inv, listname, size)
return true
end
return false
end
local function init_data(pos, netw)
local sides = netw.ele1 and netw.ele1.sides
if sides and sides["R"] then
M(pos):set_int("outdir", networks.side_to_outdir(pos, "R"))
M(pos):set_string("infotext", "repaired")
end
sides = netw.pipe2 and netw.pipe2.sides
if sides and sides["R"] then
M(pos):set_int("outdir", networks.side_to_outdir(pos, "R"))
M(pos):set_string("infotext", "repaired")
end
sides = netw.ele2 and netw.ele2.sides
if sides and sides["L"] then
M(pos):set_int("leftdir", networks.side_to_outdir(pos, "L"))
end
sides = netw.axle and netw.axle.sides
if sides and sides["R"] then
M(pos):set_int("outdir", networks.side_to_outdir(pos, "R"))
end
Cable1:after_place_node(pos)
Cable2:after_place_node(pos)
Pipe2:after_place_node(pos)
end
local function repair(itemstack, user, pointed_thing)
local pos = pointed_thing.under
if pos and user then
if minetest.is_protected(pos, user:get_player_name()) then
return itemstack
end
local number = techage.get_node_number(pos)
local node = minetest.get_node(pos)
local ndef = minetest.registered_nodes[node.name]
if ndef then
local netw = ndef.networks
if netw and ListOfNodes[node.name] then
if node.name == "techage:tiny_generator" or node.name == "techage:tiny_generator_on" then
restore_inv_content(pos, "fuel", 1)
elseif node.name == "techage:oilfirebox" then
restore_inv_content(pos, "fuel", 1)
elseif node.name == "techage:ta4_fuelcell" or node.name == "techage:ta4_fuelcell_on" then
restore_inv_content(pos, "src", 4)
elseif node.name == "techage:ta4_electrolyzer" or node.name == "techage:ta4_electrolyzer_on" then
restore_inv_content(pos, "dst", 1)
end
delete_data(pos)
init_data(pos, netw)
minetest.chat_send_player(user:get_player_name(), ndef.description.." "..S("repaired"))
itemstack:add_wear(65636/200)
return itemstack
end
if netw and netw.ele1 and netw.ele1.ntype == "junc" then
ndef.after_place_node(pos)
ndef.tubelib2_on_update2(pos, 0, Cable1)
minetest.chat_send_player(user:get_player_name(), ndef.description.." "..S("repaired"))
itemstack:add_wear(65636/200)
return itemstack
end
if netw and netw.ele2 and netw.ele2.ntype == "junc" then
ndef.after_place_node(pos)
ndef.tubelib2_on_update2(pos, 0, Cable2)
minetest.chat_send_player(user:get_player_name(), ndef.description.." "..S("repaired"))
itemstack:add_wear(65636/200)
return itemstack
end
end
end
return itemstack
end
local function network_check(start_pos, Cable, player_name)
local ndef = techage.networks.net_def(start_pos, Cable.tube_type)
local outdir = nil
@ -123,7 +274,8 @@ minetest.register_tool("techage:repairkit", {
inventory_image = "techage_repairkit.png",
wield_image = "techage_repairkit.png^[transformR270",
groups = {cracky=1, book=1},
on_use = read_state,
on_use = repair,
on_place = repair,
node_placement_prediction = "",
stack_max = 1,
})
@ -140,14 +292,14 @@ minetest.register_tool("techage:end_wrench", {
stack_max = 1,
})
--minetest.register_craft({
-- output = "techage:repairkit",
-- recipe = {
-- {"", "basic_materials:gear_steel", ""},
-- {"", "techage:end_wrench", ""},
-- {"", "basic_materials:oil_extract", ""},
-- },
--})
minetest.register_craft({
output = "techage:repairkit",
recipe = {
{"", "basic_materials:gear_steel", ""},
{"", "techage:end_wrench", ""},
{"", "basic_materials:oil_extract", ""},
},
})
minetest.register_craft({
output = "techage:end_wrench",