rust-instructions/power/power-prague.md
2024-12-24 09:36:17 +01:00

173 lines
5.7 KiB
Markdown

```mermaid
graph TD;
%%{init: {'theme':'dark'}}%%
%% Class Definitions
classDef root fill:#ff0000,stroke:#000,stroke-width:2,color:#fff; %% Red background, white text
classDef branch fill:#000000,stroke:#000,stroke-width:2,color:#fff; %% Black background, white text
classDef wind fill:gray,stroke:#000,stroke-width:2,color:#fff; %% Grey background, white text circle
classDef solar fill:yellow,stroke:#000,stroke-width:2,color:#000; %% Yellow background, black text
classDef batt fill:blue,stroke:#000,stroke-width:2,color:#000; %% Light blue background, black text
classDef splitter fill:gray,stroke:#000,stroke-width:2,color:#000; %% Light grey background, black text
classDef switch fill:gray,stroke:#000,stroke-width:2,color:#000; %% Light grey background, black text
classDef gates fill:gray,stroke:#000,stroke-width:2,color:#000; %% Light grey background, black text
classDef blocker fill:blue,stroke:#000,stroke-width:2,color:#000; %% Light blue background, black text
classDef red_light fill:#ff0000,stroke:#000,stroke-width:2,color:#fff; %% Red background, white text
classDef white_light fill:#fff,stroke:#000,stroke-width:2,color:#000; %% White background, black text
classDef yellow_light fill:yellow,stroke:#000,stroke-width:2,color:#000; %% Yellow background, black text
Wind1((Wind))
%%Root1(Root)
%%Solar1[Solar]
Splitter1([Splitter])
Splitter2([Splitter])
Batt1[(Batt)]
Branch1{{Branch}}
Branch2{{Branch}}
Branch3{{Branch}}
Branch4{{Branch}}
Branch5{{Branch}}
Branch6{{Branch}}
Branch7{{Branch}}
Branch8{{Branch}}
Branch9{{Branch}}
Branch10{{Branch}}
Branch11{{Branch}}
Branch12{{Branch}}
Switch1[Switch]
Switch2[Switch]
Switch3[Switch]
Switch4[Switch]
Switch5[Switch]
Blocker1[Blocker]
OrGate1["OR<br>Gate"]
LightRed1(("Red<br>Indicator"))
Furnace1(Furnace)
Furnace2(Furnace)
Furnace3(Furnace)
Furnace4(Furnace)
Furnace5(Furnace)
Furnace6(Furnace)
Light1((Light))
Light2((Light))
Light3((Light))
Light4((Light))
Light5((Light))
Light6((Light))
Light7((Light))
Light8((Light))
LightSearch1(("Search<br>Light"))
LightSearch2(("Search<br>Light"))
WeaponRack1["Weapon<br>Rack"]
Turret1(((Turret)))
Turret2(((Turret)))
Conveyor1(Conveyor)
Conveyor2(Conveyor)
%% Power Source with failsafe
Wind1 -->|50-150| Switch1;
Switch1 -->|50-150| Branch1;
Branch1 -->|"99<br>Branch out"| OrGate1;
Branch1 -->|"0-50<br>Power out"| Branch2;
Branch2 -->|"1<br>Branch out<br>Block pass"| Blocker1;
Branch2 -->|"0-49<br>Power Out"| Batt1;
Blocker1 -->|"100"| Branch3;
Branch3 -->|"99<br>Power out"| OrGate1;
Branch3 -->|"1<br>Branch out"| LightRed1;
Batt1 -->|"100<br>Power in"| Blocker1;
OrGate1 -->|99| Branch4;
%% Power Distribution
Branch4 -->|"89<br>Power out"| Branch5;
Branch4 -->|"10<br>Branch out"| Turret1;
Branch5 -->|"79<br>Power out"| Branch6;
Branch5 -->|"10<br>Branch out"| Turret2;
Branch6 -->|"74<br>Power out"| Branch7;
Branch6 -->|"5<br>Branch out"| Switch2;
Switch2 -->|5| CarLift1;
Branch7 -->|"72<br>Power out"| Branch8;
Branch7 -->|"2<br>Branch out"| Conveyor1
Conveyor1 -->|1| Conveyor2;
Branch8 -->|"54<br>Power out"| Branch9;
Branch8 -->|"18<br>Branch out"| Switch3;
Switch3 -->|"18<br>Branch out"| Branch12;
Branch12 -->|"9<br>Power out"| Splitter1;
Branch12 -->|"9<br>Branch out"| Splitter2;
Splitter1 -->|3| Furnace1;
Splitter1 -->|3| Furnace2;
Splitter1 -->|3| Furnace3;
Splitter2 -->|3| Furnace4;
Splitter2 -->|3| Furnace5;
Splitter2 -->|3| Furnace6;
Branch9 -->|"46<br>Power out"| Branch10;
Branch9 -->|"8<br>Branch out"| Switch4;
Switch4 -->|8| Light1;
Light1 -->|7| Light2;
Light2 -->|6| Light3;
Light3 -->|5| Light4;
Light4 -->|4| Light5;
Light5 -->|3| Light6;
Light6 -->|2| Light7;
Light7 -->|1| Light8;
Branch10 -->|"26<br>Power out"| Branch11;
Branch10 -->|"20<br>Branch out"| Switch5;
Switch5 -->|20| LightSearch1;
LightSearch1 -->|10| LightSearch2;
Branch11
Branch11 -->|"20<br>Branch out"| WeaponRack1;
%% Link Styles
linkStyle 0,1,2,3,9,10,11,13,15,18,21,32,42 stroke:red,stroke-width:2;
linkStyle 4,33,34,35,36,37,38,39,40,41,43,44,45,46 stroke:yellow,stroke-width:2;
linkStyle 22,23,24,25,26,27,28,29,30,31 stroke:orange,stroke-width:2;
linkStyle 19,20 stroke:purple,stroke-width:2;
linkStyle 16,17 stroke:lightblue,stroke-width:2;
linkStyle 12,14 stroke:white,stroke-width:2;
linkStyle 5 stroke:green,stroke-width:2;
linkStyle 6,7,8 stroke:blue,stroke-width:2;
%% Class Assignments
class Root1 root;
class Branch1 branch;
class Branch2 branch;
class Branch3 branch;
class Branch4 branch;
class Branch5 branch;
class Branch6 branch;
class Branch7 branch;
class Branch8 branch;
class Branch9 branch;
class Branch10 branch;
class Branch11 branch;
class Branch12 branch;
class Wind1 wind;
class Solar1 solar;
class Batt1 batt;
class Splitter1 splitter;
class Splitter2 splitter;
class OrGate1 gates;
class Switch1 switch;
class Switch2 switch;
class Switch3 switch;
class Switch4 switch;
class Switch5 switch;
class Blocker1 blocker;
class LightRed1 red_light;
class Light1 white_light;
class Light2 white_light;
class Light3 white_light;
class Light4 white_light;
class Light5 white_light;
class Light6 white_light;
class Light7 white_light;
class Light8 white_light;
class LightSearch1 yellow_light;
class LightSearch2 yellow_light;
class WeaponRack1 white_light;
```