extends RefCounted const MENU := preload("res://scripts/planets/freighter_menu.gd") static func build(screen: Control) -> void: var navigation := MENU.card(screen._content) MENU.label(navigation, "NAWIGACJA / ODKRYTE UKŁADY", 14, MENU.GOLD) MENU.label(navigation, "Obecny: System %d · Najdalszy odkryty: %d" % [GameState.system_level, GameState.highest_system], 12) var row := MENU.row(navigation) var destination := OptionButton.new() destination.name = "SystemDestination" destination.size_flags_horizontal = Control.SIZE_EXPAND_FILL destination.add_theme_font_size_override("font_size", 11) destination.add_theme_font_override("font", ThemeDB.fallback_font) for level in range(1, GameState.highest_system + 1): destination.add_item("System %d%s" % [level, " · HARD" if preload("res://scripts/levels/level_balance.gd").is_hard(level) else ""], level) if GameState.active_distant_map.is_empty(): destination.select(GameState.system_level - 1) destination.disabled = not GameState.active_distant_map.is_empty() row.add_child(destination) var travel := MENU.button(row, "LEĆ DO UKŁADU", func(): screen._travel_to_system(destination.get_selected_id()), true) travel.name = "TravelToSystem" travel.disabled = true destination.item_selected.connect(func(_index): travel.disabled = not GameState.active_distant_map.is_empty() or destination.get_selected_id() == GameState.system_level) MENU.label(navigation, "Nowe układy odblokujesz, przechodząc dalej przez tunel po pokonaniu przeciwników.", 11, MENU.MUTED) preload("res://scripts/planets/distant_expeditions_panel.gd").build(screen) screen._refresh_live_labels() static func cabin(screen: Control) -> void: MENU.label(screen._content, "SEKCJA REZERWOWA", 14, MENU.GOLD) MENU.label(screen._content, "Pomieszczenie czeka na nowe przeznaczenie.", 12)