fix rail switch

This commit is contained in:
Overside srl
2026-02-01 11:22:46 +01:00
parent c1ce3b06f4
commit dd1ba0fa9a
5 changed files with 58 additions and 24 deletions

View File

@@ -5,7 +5,9 @@ extends Node3D
@onready var camera_label : Label = $HUD/camera_label
@onready var train: MeshInstance3D = $Ground/Train
@onready var camera: TrainControlCamera = $TrainCamera
@onready var rail_switch: Area3D = $Ground/RailSwtich
@onready var switch_label : Label = $HUD/switch_label
func _process(_delta: float) -> void:
_update_ui()
@@ -14,9 +16,9 @@ func _process(_delta: float) -> void:
SceneSwitcher.switch_scene(main_scene.resource_path)
if Input.is_action_just_pressed("change_train"):
SceneSwitcher.switch_scene(main_scene.resource_path)
_toggle_rail()
func _update_ui() -> void:
if speed_label and train:
var kmh = train.get_speed() * 3.6
@@ -24,3 +26,22 @@ func _update_ui() -> void:
if camera_label and camera:
camera_label.text = "Camera: %s" % camera.get_mode_name()
func _toggle_rail() -> void:
if train and rail_switch:
rail_switch.toggle_switch()
train.switch_to_rail(rail_switch.switch_to_rail)
func _update_switch_status():
if not switch_label:
return
#if rail_switch:
#var state_name = rail_switch.get_state_name()
#var color = Color.YELLOW if rail_switch.current_state == rail_switch.SwitchState.LEFT else Color.CYAN
#switch_label.text = "Scambio: %s" % state_name
#switch_label.add_theme_color_override("font_color", color)
#else:
#switch_label.text = "Scambio: N/A"