Dodanie słownika

This commit is contained in:
Tirith 2025-10-24 09:30:51 +02:00
parent 74b0b412bd
commit 15c2f39730
6 changed files with 45 additions and 36 deletions

View File

@ -3,10 +3,8 @@ extends Node
# --- KONFIGURACJA --- # --- KONFIGURACJA ---
@export var SECTOR_COUNT: int = 17 @export var SECTOR_COUNT: int = 17
@export var PLANETS_PER_SECTOR_RANGE: Vector2 = Vector2(5, 5) @export var PLANETS_PER_SECTOR_RANGE: Vector2 = Settings.PLANET_NUMBER
const MIN_DISTANCE = 80.0 # Minimalna odległość (promień) między środkami gwiazd
const MAX_ATTEMPTS = 50 # Maksymalna liczba prób znalezienia miejsca
# --- DANE --- # --- DANE ---
var sectors_data: Array = [] # Każdy element: {"name", "position", "planets", "star"} var sectors_data: Array = [] # Każdy element: {"name", "position", "planets", "star"}
@ -17,29 +15,7 @@ var current_sector: int = -1
var update_timer := 0.0 var update_timer := 0.0
# Nazwy sektorów i planet # Nazwy sektorów i planet
var sector_names = [
"Aetherion", "Altaris", "Andur System", "Artemis Reach", "Astrion",
"Azura Prime", "Borealis Expanse", "Caldris Belt", "Canthar System", "Celion Verge",
"Corvax Sector", "Cygnera Rift", "Daedalus Reach", "Darnis Cluster", "Dravon Expanse",
"Eclipta Prime", "Erevos System", "Eryndor Belt", "Ethon Reach", "Epsilon Mare",
"Falcoris Rim", "Feron Cluster", "Gaelis System", "Galmar Belt", "Gryphon Reach",
"Halion Expanse", "Helios Verge", "Hespera Sector", "Hyden Reach", "Icarion System",
"Illun Belt", "Istris Cluster", "Jorath System", "Kaelor Expanse", "Kassian Reach",
"Koralis Rim", "Krynn Sector", "Lunaris Reach", "Lysara System", "Maelor Verge",
"Magnor Belt", "Mareth Cluster", "Meridian Expanse", "Morthal System", "Myrris Reach",
"Nadir Verge", "Naos Sector", "Nerath Cluster", "Norian Belt", "Nova Thal",
"Oblivis Reach", "Odessa Expanse", "Orionis Verge", "Orryx System", "Pallas Belt",
"Parallax Rim", "Perion Sector", "Pharos System", "Phoenix Reach", "Primis Expanse",
"Pyra Cluster", "Quaron Belt", "Quiris System", "Ragnar Verge", "Rathor Expanse",
"Ravenna Sector", "Regalis System", "Remora Reach", "Rydan Belt", "Saren Cluster",
"Selena Verge", "Seraphis System", "Shadow Rift", "Silvar Reach", "Solara Expanse",
"Starnis Belt", "Syrion Cluster", "Talion System", "Tarsis Verge", "Tauren Expanse",
"Tenebris Rim", "Thalassa Reach", "Tharon Belt", "Tirion Sector", "Tritonis Expanse",
"Umbra Verge", "Valis Reach", "Varon Cluster", "Velora System", "Verrin Belt",
"Veyra Expanse", "Viridis Rim", "Volnar Sector", "Vortex Reach", "Vulcaris System",
"Wraith Expanse", "Xandor Cluster", "Xerion Verge", "Ymir Belt", "Zephyra System",
"Zerath Expanse", "Zyra Prime", "Zyneth Reach", "Zorath System", "Zyphon Rim"
]
var planet_names = [ var planet_names = [
@ -52,6 +28,7 @@ var planet_names = [
# --- START --- # --- START ---
func _ready(): func _ready():
print("test sss")
randomize() randomize()
_initialize_sectors() _initialize_sectors()
print("[Manager] Initialized with %d sectors" % SECTOR_COUNT) print("[Manager] Initialized with %d sectors" % SECTOR_COUNT)
@ -64,11 +41,11 @@ func _process(delta):
# --- LOSOWANIE UNIKALNEJ NAZWY SEKTORA --- # --- LOSOWANIE UNIKALNEJ NAZWY SEKTORA ---
func get_unique_sector_name() -> String: func get_unique_sector_name() -> String:
if sector_names.size() == 0: if Names.sector_names.size() == 0:
return "Unknown Sector" return "Unknown Sector"
var index = randi() % sector_names.size() var index = randi() % Names.sector_names.size()
var name = sector_names[index] var name = Names.sector_names[index]
sector_names.remove_at(index) Names.sector_names.remove_at(index)
return name return name
# --- INICJALIZACJA SEKTORÓW --- # --- INICJALIZACJA SEKTORÓW ---
@ -198,7 +175,7 @@ func _random_star_texture() -> String:
func find_safe_position() -> Vector2: func find_safe_position() -> Vector2:
var screen_size = get_viewport().get_visible_rect().size var screen_size = get_viewport().get_visible_rect().size
for attempt in range(MAX_ATTEMPTS): for attempt in range(Settings.MAX_ATTEMPTS):
# 1. Losowanie potencjalnej pozycji w obszarze (zgodnie z Twoimi marginesami) # 1. Losowanie potencjalnej pozycji w obszarze (zgodnie z Twoimi marginesami)
var potential_pos = Vector2( var potential_pos = Vector2(
randf_range(50, screen_size.x - 50), randf_range(50, screen_size.x - 50),
@ -216,7 +193,7 @@ func find_safe_position() -> Vector2:
func is_position_safe(potential_pos: Vector2) -> bool: func is_position_safe(potential_pos: Vector2) -> bool:
for existing_pos in placed_star_positions: for existing_pos in placed_star_positions:
var distance = potential_pos.distance_to(existing_pos) var distance = potential_pos.distance_to(existing_pos)
if distance < MIN_DISTANCE: if distance < Settings.MIN_DISTANCE:
return false # Kolizja znaleziona return false # Kolizja znaleziona
return true # Brak kolizji z żadną istniejącą gwiazdą return true # Brak kolizji z żadną istniejącą gwiazdą

View File

@ -17,12 +17,13 @@ config/icon="res://icon.svg"
[autoload] [autoload]
Names="*res://scripts/dictionary.gd"
Settings="*res://scripts/settings.gd"
Manager="*res://Manager.gd" Manager="*res://Manager.gd"
MusicManager="*res://music_manager.gd" MusicManager="*res://music_manager.gd"
Settings="*res://scripts/settings.gd"
[display] [display]
window/size/mode=2 window/size/mode=3
window/stretch/mode="canvas_items" window/stretch/mode="canvas_items"
window/stretch/aspect="ignore" window/stretch/aspect="ignore"

24
scripts/dictionary.gd Normal file
View File

@ -0,0 +1,24 @@
extends Node
var sector_names = [
"Aetherion", "Altaris", "Andur System", "Artemis Reach", "Astrion",
"Azura Prime", "Borealis Expanse", "Caldris Belt", "Canthar System", "Celion Verge",
"Corvax Sector", "Cygnera Rift", "Daedalus Reach", "Darnis Cluster", "Dravon Expanse",
"Eclipta Prime", "Erevos System", "Eryndor Belt", "Ethon Reach", "Epsilon Mare",
"Falcoris Rim", "Feron Cluster", "Gaelis System", "Galmar Belt", "Gryphon Reach",
"Halion Expanse", "Helios Verge", "Hespera Sector", "Hyden Reach", "Icarion System",
"Illun Belt", "Istris Cluster", "Jorath System", "Kaelor Expanse", "Kassian Reach",
"Koralis Rim", "Krynn Sector", "Lunaris Reach", "Lysara System", "Maelor Verge",
"Magnor Belt", "Mareth Cluster", "Meridian Expanse", "Morthal System", "Myrris Reach",
"Nadir Verge", "Naos Sector", "Nerath Cluster", "Norian Belt", "Nova Thal",
"Oblivis Reach", "Odessa Expanse", "Orionis Verge", "Orryx System", "Pallas Belt",
"Parallax Rim", "Perion Sector", "Pharos System", "Phoenix Reach", "Primis Expanse",
"Pyra Cluster", "Quaron Belt", "Quiris System", "Ragnar Verge", "Rathor Expanse",
"Ravenna Sector", "Regalis System", "Remora Reach", "Rydan Belt", "Saren Cluster",
"Selena Verge", "Seraphis System", "Shadow Rift", "Silvar Reach", "Solara Expanse",
"Starnis Belt", "Syrion Cluster", "Talion System", "Tarsis Verge", "Tauren Expanse",
"Tenebris Rim", "Thalassa Reach", "Tharon Belt", "Tirion Sector", "Tritonis Expanse",
"Umbra Verge", "Valis Reach", "Varon Cluster", "Velora System", "Verrin Belt",
"Veyra Expanse", "Viridis Rim", "Volnar Sector", "Vortex Reach", "Vulcaris System",
"Wraith Expanse", "Xandor Cluster", "Xerion Verge", "Ymir Belt", "Zephyra System",
"Zerath Expanse", "Zyra Prime", "Zyneth Reach", "Zorath System", "Zyphon Rim"
]

View File

@ -0,0 +1 @@
uid://b4nmsakekdbwx

View File

@ -39,7 +39,7 @@ func _create_sector_buttons():
# Ustawienie koloru konturu # Ustawienie koloru konturu
label.add_theme_color_override("font_outline_color", Color.BLACK) label.add_theme_color_override("font_outline_color", Color.BLACK)
label.add_theme_font_size_override("font_size", 9) label.add_theme_font_size_override("font_size", 11)
label.modulate = Color(0.887, 0.867, 0.836, 1.0) label.modulate = Color(0.887, 0.867, 0.836, 1.0)
label.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER label.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER
label.vertical_alignment = VERTICAL_ALIGNMENT_CENTER label.vertical_alignment = VERTICAL_ALIGNMENT_CENTER
@ -71,7 +71,7 @@ func _on_sector_selected(index: int):
# --- TŁO --- # --- TŁO ---
func _init_background(): func _init_background():
var background = Sprite2D.new() var background = Sprite2D.new()
background.texture = load("res://assets/background/galaxy_background.jpg") background.texture = load(Settings.GALAXY_BACKGROUND)
background.centered = true background.centered = true
background.position = get_viewport_rect().size / 2 background.position = get_viewport_rect().size / 2
var screen_size = get_viewport_rect().size var screen_size = get_viewport_rect().size

View File

@ -2,3 +2,9 @@ extends Node
const UPDATE_INTERVAL := 30.0 #Cykl w sekundach const UPDATE_INTERVAL := 30.0 #Cykl w sekundach
var ORBIT_STEP = 60 #odległośc miedzy orbitami var ORBIT_STEP = 60 #odległośc miedzy orbitami
const FIRST_ORBIT_STEP = 80 #pierwsza planeta od gwiazdy const FIRST_ORBIT_STEP = 80 #pierwsza planeta od gwiazdy
const MIN_DISTANCE = 80.0 # Minimalna odległość (promień) między środkami gwiazd
const MAX_ATTEMPTS = 50 # Maksymalna liczba prób znalezienia miejsca
const PLANET_NUMBER = Vector2(1, 5)
#GRAFIKI
const GALAXY_BACKGROUND: = "res://assets/background/galaxy_background.jpg" # Tło galaktyki