Map numeric keys to rod presets in dashboard
This commit is contained in:
@@ -57,6 +57,7 @@ class ReactorDashboard:
|
|||||||
DashboardKey("r", "Reset & clear state"),
|
DashboardKey("r", "Reset & clear state"),
|
||||||
DashboardKey("a", "Toggle auto rod control"),
|
DashboardKey("a", "Toggle auto rod control"),
|
||||||
DashboardKey("+/-", "Withdraw/insert rods"),
|
DashboardKey("+/-", "Withdraw/insert rods"),
|
||||||
|
DashboardKey("1-9", "Set rods to 0.1 … 0.9 (manual)"),
|
||||||
DashboardKey("[/]", "Adjust consumer demand −/+50 MW"),
|
DashboardKey("[/]", "Adjust consumer demand −/+50 MW"),
|
||||||
DashboardKey("s/d", "Setpoint −/+250 MW"),
|
DashboardKey("s/d", "Setpoint −/+250 MW"),
|
||||||
DashboardKey("p", "Maintain core (shutdown required)"),
|
DashboardKey("p", "Maintain core (shutdown required)"),
|
||||||
@@ -84,7 +85,7 @@ class ReactorDashboard:
|
|||||||
"Turbines / Grid",
|
"Turbines / Grid",
|
||||||
[
|
[
|
||||||
DashboardKey("t", "Toggle turbine bank"),
|
DashboardKey("t", "Toggle turbine bank"),
|
||||||
DashboardKey("1/2/3", "Toggle turbine units 1-3"),
|
DashboardKey("Shift+1/2/3", "Toggle turbine units 1-3"),
|
||||||
DashboardKey("y/u/i", "Maintain turbine 1/2/3"),
|
DashboardKey("y/u/i", "Maintain turbine 1/2/3"),
|
||||||
DashboardKey("c", "Toggle consumer"),
|
DashboardKey("c", "Toggle consumer"),
|
||||||
],
|
],
|
||||||
@@ -173,8 +174,15 @@ class ReactorDashboard:
|
|||||||
elif ch in (ord("t"), ord("T")):
|
elif ch in (ord("t"), ord("T")):
|
||||||
self._queue_command(ReactorCommand(turbine_on=not self.reactor.turbine_active))
|
self._queue_command(ReactorCommand(turbine_on=not self.reactor.turbine_active))
|
||||||
elif ord("1") <= ch <= ord("9"):
|
elif ord("1") <= ch <= ord("9"):
|
||||||
idx = ch - ord("1")
|
target = (ch - ord("0")) / 10.0
|
||||||
self._toggle_turbine_unit(idx)
|
self._queue_command(ReactorCommand(rod_position=target, rod_manual=True))
|
||||||
|
elif ch in (ord("!"), ord("@"), ord("#"), ord("$"), ord("%"), ord("^"), ord("&"), ord("*"), ord("(")):
|
||||||
|
idx = ch - ord("!")
|
||||||
|
if 0 <= idx < len(self.reactor.turbines):
|
||||||
|
self._toggle_turbine_unit(idx)
|
||||||
|
elif curses.KEY_F1 <= ch <= curses.KEY_F9:
|
||||||
|
target = (ch - curses.KEY_F1 + 1) / 10.0
|
||||||
|
self._queue_command(ReactorCommand(rod_position=target, rod_manual=True))
|
||||||
elif ch in (ord("+"), ord("=")):
|
elif ch in (ord("+"), ord("=")):
|
||||||
# Insert rods (increase fraction)
|
# Insert rods (increase fraction)
|
||||||
self._queue_command(ReactorCommand(rod_position=self._clamped_rod(constants.ROD_MANUAL_STEP)))
|
self._queue_command(ReactorCommand(rod_position=self._clamped_rod(constants.ROD_MANUAL_STEP)))
|
||||||
|
|||||||
Reference in New Issue
Block a user