From b0e7e97dab8032c7166197125d6583a9253bc10f Mon Sep 17 00:00:00 2001 From: Joachim Stolberg Date: Mon, 19 Jul 2021 22:00:26 +0200 Subject: [PATCH] Improve power terminal --- manuals/manual_ta3_DE.md | 2 +- power/formspecs.lua | 11 +++++------ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/manuals/manual_ta3_DE.md b/manuals/manual_ta3_DE.md index 2df49d8..a02fca6 100644 --- a/manuals/manual_ta3_DE.md +++ b/manuals/manual_ta3_DE.md @@ -95,7 +95,7 @@ In TA4 kommt noch ein Kabel für die Solaranlage hinzu. Speichersysteme im Stromnetz erfüllen zwei Aufgaben: -- Um Bedarfsspitzen abzufangen: Alle Generatoren liefern immer gerade soviel Leistung, wie benötigt wird. Werden aber Verbraucher ein/ausgeschaltet oder kommt es aus anderen Gründen zu Bedarfsschwankungen, so können Verbraucher kurzzeitig ausfallen. Um dies zu verhindern, sollte immer mindestens ein Akkublock in jedem Netzwerk vorhanden sein. Dieser dient aus Puffer und gleicht diese Schwankungen im Sekundenbereich aus. +- Um Bedarfsspitzen abzufangen: Alle Generatoren liefern immer gerade soviel Leistung, wie benötigt wird. Werden aber Verbraucher ein/ausgeschaltet oder kommt es aus anderen Gründen zu Bedarfsschwankungen, so können Verbraucher kurzzeitig ausfallen. Um dies zu verhindern, sollte immer mindestens ein Akkublock in jedem Netzwerk vorhanden sein. Dieser dient als Puffer und gleicht diese Schwankungen im Sekundenbereich aus. - Um regenerative Energie zu speichern: Solar und Wind stehen nicht 24 Stunden am Tag zur Verfügung. Damit die Stromversorgung nicht ausfällt, wenn kein Strom produziert wird, müssen ein oder mehrere Speichersysteme im Netzwerk verbaut werden. Alternativ können die Lücken auch mit Öl/Kohle-Strom überbrückt werden. Ein Speichersystem gibt seine Kapazität in kud an, also ku pro day (Tag). Bspw. ein Speichersystem mit 100 kud liefert 100 ku einen Spieltag lang, oder auch 10 ku für 10 Spieltage. diff --git a/power/formspecs.lua b/power/formspecs.lua index ff7ef81..bb05264 100644 --- a/power/formspecs.lua +++ b/power/formspecs.lua @@ -122,26 +122,25 @@ end function techage.formspec_charging_bar(pos, x, y, label, data) local charging = 0 local percent = 50 - local consumed = 0 - local available = 0 + local ypos = 1.6 if data then charging = data.provided - data.consumed - consumed = round(data.consumed) - available = round(data.available) if charging > 0 then percent = 50 + (charging / data.available * 50) + ypos = 1.6 - (charging / data.available * 1.2) elseif charging < 0 then percent = 50 + (charging / data.consumed * 50) + ypos = 1.6 - (charging / data.consumed * 1.2) end end + ypos = in_range(ypos, 0.4, 2.8) return "container[".. x .. "," .. y .. "]" .. "box[0,0;2.3,3.3;#395c74]" .. "label[0.2,0;" .. label .. "]" .. - "label[0.7,0.4;" .. available .. " ku]" .. "image[0,0.5;1,3;" .. charging_bar(charging, percent) .. "]" .. - "label[0.7,2.8;" .. consumed .. " ku]" .. + "label[0.75," .. ypos .. ";" .. round(charging) .. " ku]" .. "container_end[]" end