mirror of
https://github.com/Xevion/project-cybersyn.git
synced 2025-12-06 11:16:02 -06:00
@@ -1,4 +1,20 @@
|
||||
---------------------------------------------------------------------------------------------------
|
||||
Version: 1.3.0
|
||||
Date: 2023-9-24
|
||||
Features:
|
||||
- Added an alert when no provider is found for an item, indicating a bottleneck in your factory - contributed by FinalFrag
|
||||
- The manager gui now displays control signals - contributed by Shadowvoices
|
||||
- The manager gui now excludes requests that do not exceed the request threshold - contributed by Shadowvoices
|
||||
Bugfixes:
|
||||
- Fixed a crash when clicking on a combinator when the GUI is open - contributed by PeteyPii
|
||||
- Fixed a crash when setting a combinator to depot mode without a network - contributed by download13
|
||||
- Fixed a crash when opening the manager when adding cybersyn to an existing save - contributed by Mjonir
|
||||
- Stations with provider item thresholds can no longer generate empty train orders - contributed by svr8450
|
||||
Translation:
|
||||
- Swedish language added - contributed by Sharparam
|
||||
- Chinese language update - contributed by luaotix
|
||||
- Russian language update - contributed by Eldrinn-Elantey
|
||||
---------------------------------------------------------------------------------------------------
|
||||
Version: 1.2.16
|
||||
Date: 2023-5-14
|
||||
Bugfixes:
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "cybersyn",
|
||||
"version": "1.2.16",
|
||||
"version": "1.3.0",
|
||||
"title": "Project Cybersyn",
|
||||
"author": "Mami",
|
||||
"factorio_version": "1.1",
|
||||
|
||||
@@ -3,4 +3,4 @@
|
||||
--- It is used in migrations.lua to determine if any migrations need to be run for beta testers.
|
||||
--- It is expected these are only meaningful between releases during beta testing.
|
||||
--- It should be set to nil for any release version.
|
||||
return nil
|
||||
return 0
|
||||
|
||||
@@ -67,6 +67,7 @@ depot-broken=A train is lost because its depot was broken
|
||||
refueler-broken=A train is lost because its refueler was broken
|
||||
station-broken=A train is lost because one of its delivery stations was broken
|
||||
train-at-incorrect=A train parked at a station it was not scheduled to delivered to
|
||||
missing-provider=Could not find a station providing __1__ to make a delivery to __2__
|
||||
missing-train=Could not find any train on the correct network to make a delivery from __2__ to __1__
|
||||
no-train-has-capacity=Could not find a train with enough cargo capacity to make a delivery from __2__ to __1__
|
||||
no-train-matches-r-layout=Could not find a train on the allow-list of __1__ to make a delivery
|
||||
|
||||
@@ -11,7 +11,7 @@ control-signals=Контрольные сигналы
|
||||
;history=History
|
||||
in-transit=В пути
|
||||
inventory=Инвентарь
|
||||
layout=Схема движения поезда
|
||||
layout=Схема ж/д состава
|
||||
name=Название
|
||||
network-name-label=Фильтр сети:
|
||||
network-id-label=ID сети:
|
||||
@@ -21,7 +21,7 @@ no-alerts=[img=warning-white] Тревог нет
|
||||
no-stations=[img=warning-white] Станций нет
|
||||
;not-available=Not available
|
||||
no-trains=[img=warning-white] Поездов нет
|
||||
open-station-gui=Открыть интерфейс станции\n[font=default-semibold][color=128,206,240]Shift:[/color][/font] Открыть станцию на карте\n[font=default-semibold][color=128,206,240]Control:[/color][/font] Открыть интерфейс кибернетического комбинатора станции\n[font=default-semibold][color=128,206,240]Alt:[/color][/font] Открыть интерфейс кибернетического комбинатора контроля станции
|
||||
open-station-gui=Открыть интерфейс станции\n[font=default-semibold][color=128,206,240]Shift:[/color][/font] Открыть станцию на карте\n[font=default-semibold][color=128,206,240]Control:[/color][/font] Открыть интерфейс кибернетического комбинатора станции\n[font=default-semibold][color=128,206,240]Alt:[/color][/font] Открыть интерфейс кибернетического комбинатора управления станции
|
||||
open-train-gui=Открыть интерфейс поезда
|
||||
provided=Снабжение
|
||||
;provided-requested-description=Green = provided\nRed = requested
|
||||
|
||||
103
cybersyn/locale/sv-SE/base.cfg
Normal file
103
cybersyn/locale/sv-SE/base.cfg
Normal file
@@ -0,0 +1,103 @@
|
||||
[mod-description]
|
||||
cybersyn=Använder cybernetiska kombinatorer för att skapa funktionsfyllda tågnätverk för logistik. Du kan koordinera de ekonomiska in- och utflödena för hela din megabas med bara den här modden.
|
||||
|
||||
[mod-setting-name]
|
||||
cybersyn-enable-planner=Aktivera centralplanering
|
||||
cybersyn-ticks-per-second=Centralplaneringsuppdateringar per sekund
|
||||
cybersyn-update-rate=Centralplaneringuppdateringsfrekvens
|
||||
cybersyn-request-threshold=Standardbeställningströskel
|
||||
cybersyn-priority=Standardprioritet
|
||||
cybersyn-locked-slots=Standardvärde för låsta platser per lastvagn
|
||||
cybersyn-network-flag=Standardnätverksmask
|
||||
cybersyn-fuel-threshold=Bränsletröskel
|
||||
cybersyn-depot-bypass-enabled=Hoppa över depåer
|
||||
cybersyn-warmup-time=Stationsuppvärmningstid (sek)
|
||||
cybersyn-stuck-train-time=Timeout för tåg som fastnat (sek)
|
||||
cybersyn-allow-cargo-in-depot=Tillåt last i depåer
|
||||
cybersyn-invert-sign=Invertera kombinatorers utsignaler (förlegad)
|
||||
cybersyn-manager-enabled=Aktivera Cybersyn-GUI:t
|
||||
cybersyn-manager-update-rate=Uppdateringsfrekvens för hanteraren
|
||||
cybersyn-manager-result-limit=Max antal entiteter som visas på GUI-sidor.
|
||||
|
||||
[mod-setting-description]
|
||||
cybersyn-enable-planner=Aktivera eller avaktivera centralplaneringsalgoritmen. När den är avstängd kommer inga nya tåg att skickas iväg.
|
||||
cybersyn-ticks-per-second=Antal gånger per sekund som centralplaneraren ska uppdatera nätverksstatusen och planera leveranser. Värdet rundas upp till en divisor 60. Om satt till 0 stoppas alla avsändningar.
|
||||
cybersyn-update-rate=Antal stationer per tick som uppdateras eller får leveranser planerade åt gången. Större nummer låter centralplaneraren hålla sig uppdaterade gentemot nätverkets status, men kräver mer prestanda.
|
||||
cybersyn-request-threshold=Standardvärde för förfrågningströskeln när en specifik tröskelsignal inte ges till en station. När en station tar emot en negativ lastsignal som är större än förfrågningströskeln, förutsatt att det finns en annan station med en positiv signal som är större än tröskeln, planeras en leverans av lasten mellan de två stationerna.
|
||||
cybersyn-priority=Standardvärde för prioritet när en prioritetssignal inte ges till en station, depå, eller bränslestation. Stationer med högre prioritet tar emot leveranser innan stationer med lägre prioritet.
|
||||
cybersyn-locked-slots=Standardvärde för antal låsta platser per lastvagn när en signal för "låsta platser per lastvagn" inte ges till stationen. När en leverantörsstation har ett värde X för "låsta platser per lastvagn", leder det till att tåg som utför leveranser från den stationen får sin order justerad så att varje lastvagn har åtminstone X platser som lämnas tomma. Detta är nödvändigt för att möjliggöra leverantörsstationer som kan leverera fler än en typ av last.
|
||||
cybersyn-network-flag=Standardvärde för nätverksmasken (en samling subnätverk) en station konfigureras med om ingen signal för nätverksmask ges till den. Heltalet tolkas bitvis för 32 möjliga subnätverk att välja mellan.
|
||||
cybersyn-fuel-threshold=Andelen av ett tågs bränsleinnehåll som måste vara fylld för att tåget ska hoppa över bränslestationer. När värdet är 1 kommer tåg alltid att besöka en bränslestation efter varje utförd leverans.
|
||||
cybersyn-depot-bypass-enabled=Med den här inställningen aktiverad kan tåg, efter att de slutfört sin leverans och eventuell påfyllning av bränsle, få en ny order från nätverket utan att först återvända till sin depå.
|
||||
cybersyn-warmup-time=Antal sekunder som en Cybernetisk kombinator väntar innan den ansluter till Cybersyn-nätverket. Det här tillåter tid för ändringar eller korrigeringar till kretsnätverket innan tåg börjar skickas till en nyligen byggd station.
|
||||
cybersyn-stuck-train-time=Antal sekunder räknat från ett tågs avgångstid som en varning skickas för att meddela att ett tåg antagligen fastnat och inte har slutfört sin leverans. Spelaren kommer antagligen behöva felsöka sitt nätverk för att få loss tåget.
|
||||
cybersyn-allow-cargo-in-depot=Tillåter att tåg anländer till en depå med last kvar i sina vagnar. Inga varningar kommer skapas och tåget hålls inte kvar i depån. Dessutom, för tåg med en order att besöka en beställarstation som har "Inaktivetetsvillkor" ikryssat, kommer de att vänta på inaktivetet istället för tom last. Användbart för att skapa tågsystem där depåer hanterar överflödig last. Endast för avancerade användare.
|
||||
cybersyn-invert-sign=Invertera (ändra positivt till negativt och vice versa) utsignalen från Cybernetiska kombinatorer till att vara som de är i LTN eller tidigare versioner av Projekt Cybersyn.
|
||||
cybersyn-manager-enabled=Ger en översikt över alla tåg och stationer som är anslutna till Cybersyn-nätverket. Gränssnittet är under utveckling och kan leda till många krascher.
|
||||
cybersyn-manager-updates-per-second=Ställer in hur ofta gränssnittet för Cybersyn-hanteraren uppdateras. Cybersyn-hanteraren måste vara aktiverad för att den här inställningen ska ha någon effekt.
|
||||
cybersyn-manager-result-limit=Sätter en gräns på antalet matchande entiteter (t.ex. stationer, tåg) för att begränsa tiden det tar att uppdatera när listan uppdateras.\nSätt till -1 för att visa allt.
|
||||
|
||||
[item-name]
|
||||
cybersyn-combinator=__ENTITY__cybersyn-combinator__
|
||||
|
||||
[item-description]
|
||||
cybersyn-combinator=Placera vid en tågstation för att lägga till den till Cybersyn-tågnätverket. Stationen kan nu beställa eller leverera last som skickas in till kombinatorn via signaler i kretsnätverket.
|
||||
|
||||
[entity-name]
|
||||
cybersyn-combinator=Cybernetisk kombinator
|
||||
cybersyn-combinator-output=Cybernetisk kombinator-utsignaler
|
||||
|
||||
[entity-description]
|
||||
cybersyn-combinator=Har 5 olika lägen. Det behövs bara stationsläge och depåläge för att komma igång.
|
||||
|
||||
[technology-name]
|
||||
cybersyn-train-network=Cybersyn tågnätverk
|
||||
|
||||
[technology-description]
|
||||
cybersyn-train-network=Tågstationsenheter som kan koordinera in- och utflöden för en hel ekonomi.
|
||||
|
||||
[virtual-signal-name]
|
||||
cybersyn-priority=Stationsprioritet
|
||||
cybersyn-request-threshold=Beställningströskel
|
||||
cybersyn-locked-slots=Låsta platser per lastvagn
|
||||
|
||||
[cybersyn-messages]
|
||||
nonempty-train=Ett tåg hålls kvar i depån eftersom det fortfarande innehåller last
|
||||
unexpected-train=Ett tåg har oväntat återvänt till depån utan att slutföra sin leverans
|
||||
stuck-train=Ett tåg har fastnat
|
||||
cannot-path-between-surfaces=Ett tåg försöker leverera mellan två olika ytor som inte är sammankopplade. Testa att använda separata nätverk för ytorna.
|
||||
depot-broken=Ett tåg är vilse för att dess depå försvann
|
||||
refueler-broken=Ett tåg är vilse för att dess bränslestation försvann
|
||||
station-broken=Ett tåg är vilse för att en av dess leveransstationer försvann
|
||||
train-at-incorrect=Ett tåg är parkerat vid en station den inte var planerad att leverera till
|
||||
missing-train=Kunde inte hitta något tåg på rätt nätverk för att utföra leverans från __2__ till __1__
|
||||
no-train-has-capacity=Kunde inte hitta något tåg med tillräcklig kapacitet för att utföra leverans från __2__ till __1__
|
||||
no-train-matches-r-layout=Kunde inte hitta något tåg på listan av tillåtna tåg för __1__ för att utföra en leverans
|
||||
no-train-matches-p-layout=Kunde inte hitta något tåg på listan av tillåtna tåg för __2__ för att leverera till __1__
|
||||
|
||||
[cybersyn-gui]
|
||||
combinator-title=__ENTITY__cybersyn-combinator__
|
||||
operation=Läge
|
||||
comb1=Station
|
||||
depot=Depå
|
||||
refueler=Bränslestation
|
||||
comb2=Stationskontroll
|
||||
wagon-manifest=Vagnkontroll
|
||||
switch-provide=Leverantör
|
||||
switch-request=Beställare
|
||||
switch-provide-tooltip=Lås den här stationen till att endast leverera föremål till nätverket. I ospecificerat läge kan den både leverera och beställa.
|
||||
switch-request-tooltip=Lås den här stationen till att endast beställa föremål från nätverket. I ospecificerat läge kan den både beställa och leverera.
|
||||
network=Nätverk
|
||||
network-tooltip=En signal som används för att identifiera vilket nätverk den här kombinatorn tillhör. Tåg skickas endast endast från depåer till leverantörer och beställare om de alla delar samma signal.
|
||||
allow-list-description=Automatiskt tillåtna tåg
|
||||
allow-list-tooltip=Om aktiverad kommer den här stationen automatiskt tillåta tåg att använda den om alla vagnar på tåget kan lastas på eller av vid den. Annars används ingen automatisk logik och alla tåg kan använda staionen oavsett.
|
||||
is-stack-description=Stapeltrösklar
|
||||
is-stack-tooltip=Alla beställningströsklar för den här stationen tolkas som ett antal staplar istället för styckantal. Trösklar för vätskor påverkas inte.
|
||||
enable-inactive-description=Inaktivitetsvillkor
|
||||
enable-inactive-tooltip=Om aktiverad krävs det att tåg vid en leverantör väntar på inaktivitet innan det lämnar, även om ordern redan har fyllts. Detta är främst användbart för att förhindra att lastkranar fastnar med saker i sina händer.
|
||||
use-same-depot-description=Använd samma depå
|
||||
use-same-depot-tooltip=Om aktiverad kommer tåg som lämnar från den här depån alltid att återvända till samma station. Annars är tåget tillåtet att återvända till en annan depåstation med samma namn som den här.
|
||||
depot-bypass-description=Hoppa över depå
|
||||
depot-bypass-tooltip=Tåg från den här depån kan få nya ordrar utan att först parkera vid depån, om de inte har en pågående order. De kommer fortfarande att återvända till depån om de har låg bränslenivå och det inte finns några bränslestationer tillgängliga på nätverket.
|
||||
enable-slot-barring-description=Blockera ofiltrerade platser
|
||||
enable-slot-barring-tooltip=Platser i intilliggande vagn som inte har filter blockeras istället så att föremål inte kan lastas i dem.
|
||||
57
cybersyn/locale/sv-SE/manager.cfg
Normal file
57
cybersyn/locale/sv-SE/manager.cfg
Normal file
@@ -0,0 +1,57 @@
|
||||
[mod-name]
|
||||
cybersyn=Projekt Cybersyn
|
||||
|
||||
[controls]
|
||||
cybersyn-toggle-gui=Visa/dölj Cybersyn-hanteraren
|
||||
|
||||
[cybersyn-gui]
|
||||
alerts=Larm
|
||||
all-paren=(Alla)
|
||||
control-signals=Styrsignaler
|
||||
;history=Historik
|
||||
in-transit=Transporterar
|
||||
inventory=Innehåll
|
||||
layout=Tåglayout
|
||||
name=Namn
|
||||
network-name-label=Nätverksfilter:
|
||||
network-id-label=Nätverks-ID:
|
||||
network-id=Nätverks-ID
|
||||
no-alerts=[img=warning-white] Inga larm
|
||||
;no-history=[img=warning-white] Ingen historik
|
||||
no-stations=[img=warning-white] Inga stationer
|
||||
;not-available=Ej tillgänglig
|
||||
no-trains=[img=warning-white] Inga tåg
|
||||
open-station-gui=Öppna stations-GUI\n[font=default-semibold][color=128,206,240]Skift:[/color][/font] Öppna station på kartan\n[font=default-semibold][color=128,206,240]Kontroll:[/color][/font] Öppna stationens Cybernetiska kombinator\n[font=default-semibold][color=128,206.240]Alt:[/color][/font] Öppna stationens Cybernetiska stationskontrollkombinator
|
||||
open-train-gui=Öppna tåg-GUI
|
||||
provided=Levererat
|
||||
;provided-requested-description=Grönt = levererat\nRött = beställt
|
||||
provided-requested=Levererat / beställt
|
||||
;refresh-tooltip=Uppdatera\n[font=default-semibold][color=128,206,240]Skift:[/color][/font] Slå på/av autouppdatering
|
||||
requested=Beställt
|
||||
search-label=Stationsnamn:
|
||||
search-item-label=Lastfilter:
|
||||
shipment=Leverans
|
||||
shipments=Leveranser
|
||||
stations=Stationer
|
||||
status=Nätverkssignal
|
||||
surface-label=Yta:
|
||||
time=Tid
|
||||
train-id=Tåg-ID
|
||||
trains=Tåg
|
||||
|
||||
[cybersyn-message]
|
||||
error-cybernetic-combinator-not-found=Kunde inte hitta en Cybernetisk kombinator för stationen.
|
||||
error-station-control-combinator-not-found=Kunde inte hitta en Cybernetisk stationskontrollkombinator för stationen.
|
||||
error-station-is-invalid=Stationen är felaktig, var god uppdatera GUI:t.
|
||||
error-train-is-invalid=Tåget är felaktigt, var god uppdatera GUI:t.
|
||||
error-cross-surface-camera-invalid=Kan inte flytta kameran till en entitet på en annan yta!
|
||||
|
||||
[cybersyn-mod-setting-description]
|
||||
iterations-per-tick=Minska numret om du har prestandaproblem.
|
||||
|
||||
[cybersyn-mod-setting-name]
|
||||
history-length=Historiklängd
|
||||
iterations-per-tick=Iterationer per tick [img=info]
|
||||
|
||||
[shortcut-name]
|
||||
cybersyn-toggle-gui=Visa/dölj Cybersyn-hanteraren
|
||||
@@ -1,106 +1,163 @@
|
||||
[mod-setting-name]
|
||||
cybersyn-enable-planner=启用中央计划
|
||||
cybersyn-ticks-per-second=每秒中央规划更新
|
||||
cybersyn-update-rate=中央计划更新率
|
||||
cybersyn-request-threshold=默认请求阈值
|
||||
cybersyn-priority=默认优先级
|
||||
cybersyn-locked-slots=每个货车的默认锁定插槽
|
||||
cybersyn-network-flag=默认网络掩码
|
||||
cybersyn-fuel-threshold=燃料阈值
|
||||
cybersyn-depot-bypass-enabled=车厂绕行
|
||||
cybersyn-warmup-time=站预热时间(秒)
|
||||
cybersyn-stuck-train-time=卡住火车超时(秒)
|
||||
cybersyn-allow-cargo-in-depot=允许仓库中的货物
|
||||
cybersyn-invert-sign=反转组合器输出(已弃用)
|
||||
#cybersyn-manager-enabled=
|
||||
#cybersyn-manager-updates-per-second=
|
||||
#cybersyn-manager-result-limit=
|
||||
|
||||
[mod-setting-description]
|
||||
cybersyn-enable-planner=启用或禁用中央计划算法。 如果禁用,则不会派遣新列车。
|
||||
cybersyn-ticks-per-second=中央计划者每秒更新网络状态和安排交付的次数。 该值将四舍五入为 60 的除数。将其设置为 0 将停止所有调度。
|
||||
cybersyn-update-rate=一次可以轮询多少个站点,或者可以一次安排交付。 更大的数字允许中央计划者保持更多关于网络当前状态的最新信息,但以性能为代价。
|
||||
cybersyn-request-threshold = 请求阈值信号未提供给站点时的默认请求阈值。 当站点收到超过其请求阈值的否定项目信号时,只要存在任何站点的正信号大于请求阈值,就会在两个站点之间安排该项目的交付。
|
||||
cybersyn-priority=当优先信号未给予站点、仓库或加油站时的默认优先级。 具有较高优先级的站点将在具有较低优先级的站点之前接收交付。
|
||||
cybersyn-locked-slots=当“每个货车锁定插槽”信号未提供给站点时,每个货车锁定插槽的默认数量。 当供应站锁定了 X 个货车的货位时,任何试图从它运送货物的火车都将修改其订单,这样每辆货车将至少有 X 个货车空置。 这是使多项目提供程序站正常运行所必需的。
|
||||
cybersyn-network-flag =当没有网络信号给站点时,站点将服务的默认子网集。 该整数按位解释以提供 32 个可能的子网络供选择。
|
||||
cybersyn-fuel-threshold=火车燃料库存的百分比必须满才能跳过加油。 如果设置为 1,火车将在完成交付后始终访问加油站。
|
||||
cybersyn-depot-bypass-enabled=如果选中,当火车完成交付和加油时,它可能会在返回其站点之前从网络接收新订单。
|
||||
cybersyn-warmup-time=Cybernetic 组合器在连接到 Cybersyn 网络之前将等待多少秒。 这是在火车开始调度到新设计的车站之前修改或纠正电路网络的宽限期。
|
||||
cybersyn-stuck-train-time=在火车调度后的这么多秒后,将发送警报,让您知道火车可能被卡住并且尚未完成交付。 玩家可能必须调试他们的网络才能让火车脱困。
|
||||
cybersyn-allow-cargo-in-depot=如果选中,火车将被允许在仓库中装载货物; 不会生成任何警报,也不会保留列车。 此外,在选中“不活动状态”的情况下,带有访问请求站点命令的列车将等待不活动状态,而不是等待空载货物。 可用于创建火车系统,其中仓库处理超额货物。 仅限高级用户。
|
||||
cybersyn-invert-sign=将 Cybernetic 组合器的输出符号翻转为与 LTN 或早期版本的 Cybersyn 项目相同。
|
||||
#cybersyn-manager-result-limit=
|
||||
|
||||
[item-name]
|
||||
cybersyn-combinator=Cybersyn 组合器
|
||||
|
||||
[item-description]
|
||||
cybersyn-combinator=放置在火车站旁边以将其添加到 Cybersyn 火车网络。 该站点现在可以请求或提供电路网络向其报告的项目。
|
||||
|
||||
[entity-name]
|
||||
cybersyn-combinator=Cybernetic 组合器
|
||||
cybersyn-combinator-output=Cybernetic 组合输出
|
||||
|
||||
[entity-description]
|
||||
cybersyn-combinator=有 5 种不同的模式。 然而,您只需要车站模式和仓库模式即可开始。
|
||||
|
||||
[technology-name]
|
||||
cybersyn-train-network=Cybersyn 火车网络
|
||||
|
||||
[technology-description]
|
||||
cybersyn-train-network=能够协调整个经济体的输入和输出的火车站控制器。
|
||||
|
||||
[virtual-signal-name]
|
||||
cybersyn-priority=站优先级
|
||||
cybersyn-request-threshold=请求阈值
|
||||
cybersyn-locked-slots=每个货车的锁定插槽
|
||||
|
||||
[cybersyn-messages]
|
||||
nonempty-train=一列火车因仍有货物而被停在车站
|
||||
unexpected-train=火车在完成交付之前意外返回车站
|
||||
stuck-train=火车卡住了
|
||||
cannot-path-between-surfaces=火车正试图在两个未连接的表面之间进行交付,可能将它们放在不同的网络上
|
||||
depot-broken=一列火车丢失了,因为它的车站坏了
|
||||
refueler-broken=一列火车丢失了,因为它的加油机坏了
|
||||
station-broken=一列火车丢失了,因为它的一个交付站坏了
|
||||
train-at-incorrect=一列火车停在了一个它没有计划交付的车站
|
||||
missing-train=无法在正确的网络上找到任何火车来进行从 __2__ 到 __1__ 的运送
|
||||
no-train-has-capacity=无法找到具有足够载货能力的火车从 __2__ 到 __1__
|
||||
no-train-matches-r-layout=无法在 __1__ 的允许列表中找到要交付的火车
|
||||
no-train-matches-p-layout=无法在 __2__ 的允许列表中找到要运送到 __1__ 的火车
|
||||
|
||||
[cybersyn-gui]
|
||||
combinator-title=Cybernetic 组合器
|
||||
operation=模式
|
||||
comb1=站
|
||||
depot=仓库
|
||||
refueler=加油机
|
||||
comb2=站控制
|
||||
wagon-manifest=货车控制
|
||||
switch-provide=仅提供
|
||||
switch-request=仅请求
|
||||
switch-provide-tooltip=锁定该站点以仅向网络提供项目。 默认情况下,它既请求又提供。
|
||||
switch-request-tooltip=锁定该站点以仅从网络请求项目。 默认情况下,它既请求又提供。
|
||||
network=网络
|
||||
network-tooltip=一个信号用于识别这个组合器是哪个网络的成员。 只有当所有列车都使用相同的信号识别时,列车才会从车站发送到提供站和请求站。
|
||||
allow-list-description =自动允许列表
|
||||
allow-list-tooltip=如果列车的每节货车都可以在此站装卸,则网络中的列车将自动添加到允许列表中。 未选中时,不使用允许列表,所有火车都可以停在这里。
|
||||
is-stack-description =堆栈阈值
|
||||
is-stack-tooltip=选中时,该站的所有请求阈值都被解释为项目堆栈的计数而不是总项目的计数。 流体的阈值不受影响。
|
||||
enable-inactive-description =不活动状态
|
||||
enable-inactive-tooltip=选中后,即使订单已完成,供应商处的火车也需要等待不活动状态。 这对于防止插入器将物品卡在手中通常很有用。
|
||||
use-same-depot-description=需要相同的仓库
|
||||
use-same-depot-tooltip=当检查从这个车站开出的火车总是返回到这个车站。 如果未选中,则允许列车返回任何与该站点同名的站点。
|
||||
depot-bypass-description =仓库旁路
|
||||
depot-bypass-tooltip=当从这个车厂检查的火车不必停在这个车厂来接收新订单,他们只需要没有当前的活动订单。 如果他们的燃料不足并且没有可用的加油机,他们仍会返回该加油站。
|
||||
enable-slot-barring-description =禁止未过滤的插槽
|
||||
enable-slot-barring-tooltip=选中时,相邻货车的任何未过滤的槽位将被禁止,因此任何物品都不能装载到其中。
|
||||
|
||||
|
||||
|
||||
[mod-name]
|
||||
cybersyn=赛博火车网络计划
|
||||
cybersyn=Cybersyn 赛博协同控制工程
|
||||
|
||||
[mod-description]
|
||||
cybersyn=创建功能丰富的火车物流网络。 只需使用此模组,您就可以协调整个大型基地的投入和产出。汉化:Plexpt。 交流群:830846580
|
||||
cybersyn=[color=green]Project Cybersyn - Logistics Train Dispatcher[/color]\n通过协同控制运算器创建功能丰富的列车物流网络。有了本模组,您就可以协调整个大型基地的整体投入和产出。
|
||||
|
||||
[mod-setting-name]
|
||||
cybersyn-enable-planner=启用协同控制
|
||||
cybersyn-ticks-per-second=每秒协同控制更新
|
||||
cybersyn-update-rate=协同控制更新频率
|
||||
cybersyn-request-threshold=默认请求阈值
|
||||
cybersyn-priority=默认优先级
|
||||
cybersyn-locked-slots=默认每车厢锁定格数
|
||||
cybersyn-network-flag=默认网络掩码
|
||||
cybersyn-fuel-threshold=燃料阈值
|
||||
cybersyn-depot-bypass-enabled=启用车库绕行
|
||||
cybersyn-warmup-time=车站预备时间(秒)
|
||||
cybersyn-stuck-train-time=列车卡住超时(秒)
|
||||
cybersyn-allow-cargo-in-depot=允许车库中存放货物
|
||||
cybersyn-invert-sign=反转运算器输出(已弃用)
|
||||
cybersyn-manager-enabled=Cybersyn管理器预览版
|
||||
cybersyn-manager-updates-per-second=管理器每秒更新
|
||||
cybersyn-manager-result-limit=管理器界面上显示的最大实体数量
|
||||
|
||||
[mod-setting-description]
|
||||
cybersyn-enable-planner=启用或禁用协同控制。若禁用,则不会派遣新列车。
|
||||
cybersyn-ticks-per-second=协同控制每秒应更新网络状态和安排交付的次数。此值将向上舍入为60的除数。将其设置为0将停止所有派遣。
|
||||
cybersyn-update-rate=每tick可以同时轮询多少个站台或可以同时安排交付。较大的数字允许协同控制更及时地了解网络的当前状态,但会牺牲性能。
|
||||
cybersyn-request-threshold=当站台未收到请求阈值信号时的默认请求阈值。当站台收到一个负的物品信号并超过其请求阈值时,只要存在任何一个信号大于请求阈值的正信号站台,就会在该两个站台间安排该项目的交付。
|
||||
cybersyn-priority=当站台、车库或加油站未收到优先级信号时的默认优先级。优先级更高的站台将优先交付。
|
||||
cybersyn-locked-slots=当供应站未收到每货运车厢锁定格数信号时的默认锁定格数。当供应站的每货运车厢锁定格数为X时,任何试图从该站点交付物品的列车都将修改其指令,使每个货运车厢至少留有X个空格数。这对于使多物品供应站正确运作是必要的。
|
||||
cybersyn-network-flag=当站台未收到网络信号时的默认网络掩码。该整数被按位解释为32个可能的子网络进行选择。
|
||||
cybersyn-fuel-threshold=列车的燃料库存必须达到多少百分比才能跳过加油。如果将其设置为1,则列车将始终在完成交付后访问加油站。
|
||||
cybersyn-depot-bypass-enabled=若选中,则当列车完成交付和加油后,可以在返回其车库之前从网络中接受新订单。
|
||||
cybersyn-warmup-time=协同控制运算器在连接到Cybersyn网络之前要等待多少秒。这是一个宽限期,便于在列车开始调度到一个新站台前,修改或纠正信号网络。
|
||||
cybersyn-stuck-train-time=在列车派遣后的这么多秒后,将发送警报,以让您知道列车可能卡住了,并且无完成交付。玩家可能需要调试其网络以使列车脱困。
|
||||
cybersyn-allow-cargo-in-depot=若选中,则允许列车在车库中装载货物。不会生成任何警报,列车也不会被拦住。此外,具有访问请求站点并勾选了“静止状态”的订单的列车将等待静止状态,而非等待清空货物。这对于创建由车库处理多余货物的列车系统非常有用。仅适用于高水准玩家。
|
||||
cybersyn-invert-sign=翻转协同控制运算器输出的信号,使其与LTN或Project Cybersyn早期版本中的信号相同。
|
||||
cybersyn-manager-enabled=允许查看连接到Cybersyn的所有列车和车站。此管理器界面目前正处于开发中,可能会导致多次崩溃。
|
||||
cybersyn-manager-updates-per-second=控制Cybersyn管理器界面刷新的频率。必须将Cybersyn管理器设置为启用才能生效。
|
||||
cybersyn-manager-result-limit=限制匹配实体(如车站、列车)的数量,以限制刷新列表时消耗的更新时间。\n-1表示返回所有结果。
|
||||
|
||||
[item-name]
|
||||
cybersyn-combinator=Cybersyn 协同控制运算器
|
||||
|
||||
[item-description]
|
||||
cybersyn-combinator=放置在车站旁,将其添加到Cybersyn列车网络。 该站点现在可以请求或供应由信号网络向其交付的物品。
|
||||
|
||||
[entity-name]
|
||||
cybersyn-combinator=Cybersyn 协同控制运算器
|
||||
cybersyn-combinator-output=协同控制运算器输出端
|
||||
|
||||
[entity-description]
|
||||
cybersyn-combinator=有5种不同的模式。但您仅需站台和车库模式便能开始。
|
||||
|
||||
[technology-name]
|
||||
cybersyn-train-network=Cybersyn 列车协同控制网络
|
||||
|
||||
[technology-description]
|
||||
cybersyn-train-network=一款列车站台控制器,能够统筹全局运输的物流调度。
|
||||
|
||||
[virtual-signal-name]
|
||||
cybersyn-priority=站台优先级
|
||||
cybersyn-request-threshold=请求阈值
|
||||
cybersyn-locked-slots=每车厢锁定格数
|
||||
|
||||
[cybersyn-messages]
|
||||
nonempty-train=因尚有货物,一辆列车被扣留在车库。
|
||||
unexpected-train=一辆列车在完成交付前意外返回了车库。
|
||||
stuck-train=一辆列车卡住了。
|
||||
cannot-path-between-surfaces=一辆列车正在两个不相连的表面之间进行交付,可能导致将它们放在不同的网络上。
|
||||
depot-broken=一辆列车因其车库损坏而抛锚。
|
||||
refueler-broken=一辆列车因其加油站损坏而抛锚。
|
||||
station-broken=一辆列车因其交付站台损坏而抛锚。
|
||||
train-at-incorrect=一辆列车停在其无计划交付的站台。
|
||||
missing-train=在正确的网络上找不到从__2__到__1__交付的任何列车。
|
||||
no-train-has-capacity=无法找到具有足够货物容量的从__2__到__1__的列车。
|
||||
no-train-matches-r-layout=无法在__1__的允许列表中找到要交付的列车。
|
||||
no-train-matches-p-layout=无法在__2__的允许列表中找到要运送到__1__的列车。
|
||||
|
||||
[cybersyn-gui]
|
||||
combinator-title=协同控制运算器
|
||||
operation=模式
|
||||
comb1=站台
|
||||
depot=车库
|
||||
refueler=加油站
|
||||
comb2=站台控制
|
||||
wagon-manifest=车厢控制
|
||||
switch-provide=仅供应
|
||||
switch-request=仅请求
|
||||
switch-provide-tooltip=锁定该站台以仅向网络供应物品。 默认情况下,它既请求又供应。
|
||||
switch-request-tooltip=锁定该站台以仅向网络请求物品。 默认情况下,它既请求又供应。
|
||||
network=网络
|
||||
network-tooltip=一个信号用于识别该运算器归属于哪个网络。 只有当所有列车都使用相同的信号识别时,列车才会从车库调度列车到供应站与请求站。
|
||||
allow-list-description=自动允许列表
|
||||
allow-list-tooltip=正常交付下,任何具有足够载货量的列车都能满足要求。启用后,列车必须在本站的“自动允许列表”中。若每节车厢都可以在此站以机械臂或泵装卸,列车将自动添加到允许列表中。
|
||||
is-stack-description=堆栈阈值
|
||||
is-stack-tooltip=启用后,该站的所有请求阈值都被解释为物品堆栈的计数而非物品的总数。流体的阈值不受影响。
|
||||
enable-inactive-description=静止状态
|
||||
enable-inactive-tooltip=启用后,即使订单已完成,供应站处的列车也需要等待静止状态。这对于防止机械臂将物品卡在手中通常很有用。
|
||||
use-same-depot-description=需要相同车库
|
||||
use-same-depot-tooltip=启用后,列车始终返回其车库。未启用后,则允许列车返回任何与该车库同名的车库。
|
||||
depot-bypass-description=车库绕行
|
||||
depot-bypass-tooltip=启用后,列车不必停在车库内以接收新订单,它们只需无当前有效的订单。如果燃料不足和无加油站,它们仍然会返回该车库。
|
||||
enable-slot-barring-description=禁止未筛选格数
|
||||
enable-slot-barring-tooltip=启用后,相邻车厢中任何未筛选的格数都将被禁止,这样就无任何物品可以装入其中。
|
||||
|
||||
#manager
|
||||
alerts=警报
|
||||
all-paren=(所有)
|
||||
control-signals=控制信号
|
||||
;history=历史记录
|
||||
in-transit=在途
|
||||
inventory=库存
|
||||
layout=列车构成
|
||||
name=名称
|
||||
network-name-label=网络筛选:
|
||||
network-id-label=网络ID:
|
||||
network-id=网络ID
|
||||
no-alerts=[img=warning-white]无警报
|
||||
;no-history=[img=warning-white]无历史记录
|
||||
no-stations=[img=warning-white]无车站
|
||||
;not-available=不可用
|
||||
no-trains=[img=warning-white]无列车
|
||||
open-ltn-combinator-gui=[font=default-semibold][color=128,206,240]Control:[/color][/font] 打开cybersyn组合器界面
|
||||
open-station-gui=打开车站界面\n[font=default-semibold][color=128,206,240]Shift:[/color][/font]在地图中打开车站\n[font=default-semibold][color=128,206,240]Control:[/color][/font]打开车站的协同控制运算器\n[font=default-semibold][color=128,206,240]Alt:[/color][/font]打开站台控制的协同控制运算器
|
||||
open-train-gui=打开列车界面
|
||||
provided=供应
|
||||
;provided-requested-description=绿色=供应\n红色=请求
|
||||
provided-requested=供应/请求
|
||||
;refresh-tooltip=刷新\n[font=default-semibold][color=128,206,240]Shift:[/color][/font] 切换自动刷新
|
||||
requested=请求
|
||||
search-label=车站名称:
|
||||
search-item-label=物品筛选:
|
||||
shipment=装运
|
||||
shipments=装运
|
||||
stations=车站
|
||||
status=网络信号
|
||||
surface-label=表面:
|
||||
time=时间
|
||||
train-id=列车ID
|
||||
trains=列车
|
||||
|
||||
#manager
|
||||
[controls]
|
||||
cybersyn-toggle-gui=切换Cybersyn管理器
|
||||
|
||||
[cybersyn-message]
|
||||
error-cybernetic-combinator-not-found=找不到该车站的协同控制运算器。
|
||||
error-station-control-combinator-not-found=找不到该车站的协同控制运算器。
|
||||
error-station-is-invalid=车站无效,请刷新管理器。
|
||||
error-train-is-invalid=列车无效,请刷新管理器。
|
||||
error-cross-surface-camera-invalid=无法将视角移动至不同表面上的实体上!
|
||||
|
||||
[cybersyn-mod-setting-description]
|
||||
iterations-per-tick=若您遇到性能问题,降低本数值。
|
||||
|
||||
[cybersyn-mod-setting-name]
|
||||
history-length=历史记录长度
|
||||
iterations-per-tick=每tick的迭代次数[img=info]
|
||||
|
||||
[shortcut-name]
|
||||
cybersyn-toggle-gui=Cybersyn管理器
|
||||
|
||||
@@ -1,56 +0,0 @@
|
||||
[mod-name]
|
||||
cybersyn=Project Cybersyn
|
||||
|
||||
[controls]
|
||||
#cybersyn-toggle-gui=切换 LTN 管理器
|
||||
|
||||
[cybersyn-gui]
|
||||
alerts=警报
|
||||
all-paren=(所有)
|
||||
control-signals=控制信号
|
||||
in-transit=在途
|
||||
inventory=库存
|
||||
#layout=
|
||||
name=名字
|
||||
#network-name-label=
|
||||
network-id-label=网络ID:
|
||||
network-id=网络ID
|
||||
no-alerts=[img=warning-white] 没有警报
|
||||
;no-history=[img=warning-white] 没有历史记录
|
||||
no-stations=[img=warning-white] 没有站
|
||||
;not-available=不可用
|
||||
no-trains=[img=warning-white] 没有火车
|
||||
open-station-gui=开站GUI\n[font=default-semibold][color=128,206,240]Shift:[/color][/font] 在地图上开站
|
||||
open-train-gui=打开火车 GUI
|
||||
provided=提供
|
||||
;provided-requested-description=绿色 = 提供\n红色 = 要求
|
||||
provided-requested=提供/请求
|
||||
;refresh-tooltip=刷新\n[font=default-semibold][color=128,206,240]Shift:[/color][/font] 切换自动刷新
|
||||
requested=请求
|
||||
search-label=搜索:
|
||||
#search-item-label=
|
||||
shipment=装运
|
||||
shipments=出货量
|
||||
stations=站
|
||||
#status=状态
|
||||
surface-label=表面:
|
||||
time=时间
|
||||
train-id=列车编号
|
||||
trains=火车
|
||||
|
||||
[cybersyn-message]
|
||||
#error-cybernetic-combinator-not-found=
|
||||
#error-station-control-combinator-not-found=
|
||||
error-station-is-invalid=站点无效,请刷新 GUI。
|
||||
error-train-is-invalid=火车无效,请刷新 GUI。
|
||||
#error-cross-surface-camera-invalid=
|
||||
|
||||
[cybersyn-mod-setting-description]
|
||||
iterations-per-tick=如果你有性能问题,减少这个数字。
|
||||
|
||||
[cybersyn-mod-setting-name]
|
||||
history-length=历史长度
|
||||
iterations-per-tick=每次滴答的迭代次数[img=info]
|
||||
|
||||
[shortcut-name]
|
||||
#cybersyn-toggle-gui=切换 LTN 管理器
|
||||
@@ -157,11 +157,17 @@ function create_manifest(map_data, r_station_id, p_station_id, train_id, primary
|
||||
end
|
||||
local p_effective_item_count = p_station.item_p_counts[item_name]
|
||||
--could be an item that is not present at the station
|
||||
local effective_threshold
|
||||
local override_threshold = p_station.item_thresholds and p_station.item_thresholds[item_name]
|
||||
if override_threshold and p_station.is_stack and item_type == "item" then
|
||||
override_threshold = override_threshold*get_stack_size(map_data, item_name)
|
||||
end
|
||||
if p_effective_item_count and p_effective_item_count >= (override_threshold or r_threshold) then
|
||||
if override_threshold and override_threshold <= r_threshold then
|
||||
effective_threshold = override_threshold
|
||||
else
|
||||
effective_threshold = r_threshold
|
||||
end
|
||||
if p_effective_item_count and p_effective_item_count >= effective_threshold then
|
||||
local item = {name = item_name, type = item_type, count = min(-r_effective_item_count, p_effective_item_count)}
|
||||
if item_name == primary_item_name then
|
||||
manifest[#manifest + 1] = manifest[1]
|
||||
@@ -492,7 +498,9 @@ local function tick_dispatch(map_data, mod_settings)
|
||||
create_delivery(map_data, r_station_id, p_station_id, best_train_id, manifest)
|
||||
return false
|
||||
else
|
||||
if correctness == 1 then
|
||||
if correctness == 0 then
|
||||
send_alert_missing_provider(item_name, r_station.entity_stop)
|
||||
elseif correctness == 1 then
|
||||
send_alert_missing_train(r_station.entity_stop, closest_to_correct_p_station.entity_stop)
|
||||
elseif correctness == 2 then
|
||||
send_alert_no_train_has_capacity(r_station.entity_stop, closest_to_correct_p_station.entity_stop)
|
||||
|
||||
@@ -776,6 +776,17 @@ function send_alert_sounds(train)
|
||||
end
|
||||
|
||||
|
||||
---@param item_name string
|
||||
---@param r_stop LuaEntity
|
||||
function send_alert_missing_provider(item_name, r_stop)
|
||||
for _, player in pairs(r_stop.force.players) do
|
||||
player.add_custom_alert(
|
||||
r_stop,
|
||||
send_alert_about_missing_train_icon,
|
||||
{"cybersyn-messages.missing-provider", item_name, r_stop.backer_name},
|
||||
true)
|
||||
end
|
||||
end
|
||||
---@param r_stop LuaEntity
|
||||
---@param p_stop LuaEntity
|
||||
function send_alert_missing_train(r_stop, p_stop)
|
||||
|
||||
@@ -92,7 +92,7 @@ local function handle_drop_down(e)
|
||||
--prevent the use of the each signal with depots
|
||||
local network = element.parent.parent.bottom.network--[[@as LuaGuiElement]]
|
||||
local signal = network.elem_value--[[@as SignalID]]
|
||||
if signal.name == NETWORK_EACH then
|
||||
if signal and (signal.name == NETWORK_EACH) then
|
||||
network.elem_value = nil
|
||||
set_comb_network_name(comb, nil)
|
||||
end
|
||||
|
||||
@@ -132,10 +132,17 @@ function inventory_tab.build(map_data, player_data)
|
||||
inventory_provided[item.name] = inventory_provided[item.name] + count
|
||||
end
|
||||
else
|
||||
if inventory_requested[item.name] == nil then
|
||||
inventory_requested[item.name] = count
|
||||
else
|
||||
inventory_requested[item.name] = inventory_requested[item.name] + count
|
||||
local r_threshold = station.item_thresholds and station.item_thresholds[item.name] or station.r_threshold
|
||||
if station.is_stack and item_type == "item" then
|
||||
r_threshold = r_threshold*get_stack_size(map_data, item.name)
|
||||
end
|
||||
|
||||
if -count >= r_threshold then
|
||||
if inventory_requested[item.name] == nil then
|
||||
inventory_requested[item.name] = count
|
||||
else
|
||||
inventory_requested[item.name] = inventory_requested[item.name] + count
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -51,6 +51,15 @@ function manager_gui.on_lua_shortcut(e)
|
||||
if e.element then
|
||||
if e.element.name == "manager_window" then
|
||||
manager.wrapper(e, manager.handle.manager_toggle)
|
||||
elseif e.element.name == COMBINATOR_NAME and e.name == defines.events.on_gui_closed then
|
||||
-- With the manager enabled, this handler overwrites the combinator's
|
||||
-- on_gui_close handler. Copy the logic to close the combinator's GUI here
|
||||
-- as well.
|
||||
local player = game.get_player(e.player_index)
|
||||
if not player then return end
|
||||
if player.gui.screen[COMBINATOR_NAME] then
|
||||
player.gui.screen[COMBINATOR_NAME].destroy()
|
||||
end
|
||||
end
|
||||
else
|
||||
manager.wrapper(e, manager.handle.manager_toggle)
|
||||
@@ -60,9 +69,10 @@ end
|
||||
|
||||
|
||||
|
||||
function manager_gui.on_player_created(e)
|
||||
local player = game.get_player(e.player_index)
|
||||
local function create_player(player_index)
|
||||
local player = game.get_player(player_index)
|
||||
if not player then return end
|
||||
|
||||
local player_data = {
|
||||
search_network_mask = -1,
|
||||
trains_orderings = {},
|
||||
@@ -71,12 +81,16 @@ function manager_gui.on_player_created(e)
|
||||
refs = manager.create(player),
|
||||
selected_tab = "stations_tab",
|
||||
}
|
||||
global.manager.players[e.player_index] = player_data
|
||||
global.manager.players[player_index] = player_data
|
||||
|
||||
--manager.update(global, player, player_data)
|
||||
--top_left_button_update(player, player_data)
|
||||
end
|
||||
|
||||
function manager_gui.on_player_created(e)
|
||||
create_player(e.player_index)
|
||||
end
|
||||
|
||||
function manager_gui.on_player_removed(e)
|
||||
global.manager.players[e.player_index] = nil
|
||||
end
|
||||
@@ -147,9 +161,16 @@ end
|
||||
|
||||
|
||||
function manager_gui.on_migration()
|
||||
for i, p in pairs(game.players) do
|
||||
if global.manager.players[i] == nil then
|
||||
create_player(i)
|
||||
end
|
||||
end
|
||||
|
||||
for i, v in pairs(global.manager.players) do
|
||||
manager_gui.reset_player(i, v)
|
||||
end
|
||||
|
||||
init_items(global.manager)
|
||||
end
|
||||
|
||||
|
||||
@@ -250,7 +250,7 @@ function stations_tab.build(map_data, player_data, query_limit)
|
||||
|
||||
gui.add(refs.provided_requested_table, util.slot_table_build_from_station(station))
|
||||
gui.add(refs.shipments_table, util.slot_table_build_from_deliveries(station))
|
||||
gui.add(refs.control_signals_table, util.slot_table_build_from_control_signals(station))
|
||||
gui.add(refs.control_signals_table, util.slot_table_build_from_control_signals(station, map_data))
|
||||
|
||||
end
|
||||
|
||||
|
||||
@@ -171,10 +171,11 @@ end
|
||||
|
||||
--- @param station Station
|
||||
--- @return GuiElemDef[]
|
||||
function util.slot_table_build_from_control_signals(station)
|
||||
function util.slot_table_build_from_control_signals(station, map_data)
|
||||
---@type GuiElemDef[]
|
||||
local children = {}
|
||||
local comb1_signals, comb2_signals = get_signals(station)
|
||||
|
||||
if comb1_signals then
|
||||
for _, v in pairs(comb1_signals) do
|
||||
local item = v.signal
|
||||
@@ -205,6 +206,68 @@ function util.slot_table_build_from_control_signals(station)
|
||||
::continue::
|
||||
end
|
||||
end
|
||||
|
||||
if comb2_signals then
|
||||
for _, v in pairs(comb2_signals) do
|
||||
local item = v.signal
|
||||
local count = v.count
|
||||
local name = item.name
|
||||
local sprite = ""
|
||||
local color = "default"
|
||||
|
||||
if item.type == "item" or item.type == "fluid" then
|
||||
local sprite, img_path, item_string = util.generate_item_references(name)
|
||||
if sprite ~= nil then
|
||||
local color
|
||||
if count > 0 then
|
||||
color = "green"
|
||||
else
|
||||
color = "blue"
|
||||
end
|
||||
end
|
||||
|
||||
if station.is_stack and item.type == "item" then
|
||||
count = count * get_stack_size(map_data, name)
|
||||
end
|
||||
|
||||
if game.is_valid_sprite_path(sprite) then
|
||||
children[#children + 1] = {
|
||||
type = "sprite-button",
|
||||
enabled = false,
|
||||
style = "ltnm_small_slot_button_" .. color,
|
||||
sprite = sprite,
|
||||
tooltip = {
|
||||
"",
|
||||
img_path,
|
||||
item_string,
|
||||
"\n"..format.number(count),
|
||||
},
|
||||
number = count
|
||||
}
|
||||
end
|
||||
|
||||
elseif item.type == "virtual" then
|
||||
sprite = "virtual-signal" .. "/" .. name
|
||||
if game.is_valid_sprite_path(sprite) then
|
||||
children[#children + 1] = {
|
||||
type = "sprite-button",
|
||||
enabled = false,
|
||||
style = "ltnm_small_slot_button_" .. color,
|
||||
sprite = sprite,
|
||||
tooltip = {
|
||||
"",
|
||||
"[img=virtual-signal." .. name .. "]",
|
||||
{ "virtual-signal-name." .. name },
|
||||
"\n"..format.number(count),
|
||||
},
|
||||
number = count
|
||||
}
|
||||
end
|
||||
end
|
||||
::continue::
|
||||
end
|
||||
end
|
||||
|
||||
return children
|
||||
end
|
||||
|
||||
|
||||
@@ -353,6 +353,7 @@ interface.add_refueler_schedule = add_refueler_schedule
|
||||
--[[alerts]]
|
||||
------------------------------------------------------------------
|
||||
|
||||
interface.send_alert_missing_provider = send_alert_missing_provider
|
||||
interface.send_alert_missing_train = send_alert_missing_train
|
||||
interface.send_alert_unexpected_train = send_alert_unexpected_train
|
||||
interface.send_alert_nonempty_train_in_depot = send_alert_nonempty_train_in_depot
|
||||
|
||||
Reference in New Issue
Block a user