34 lines
1.5 KiB
GDScript
34 lines
1.5 KiB
GDScript
extends Node
|
|
const RECIPES := preload("res://scripts/items/crafting_recipes.gd")
|
|
func _ready() -> void:
|
|
GameState.start_new_run()
|
|
var captain: Resource = GameState.captain
|
|
var hud := preload("res://scripts/game/flight_hud.gd").new()
|
|
hud._give_debug_resources()
|
|
for mineral in preload("res://scripts/planets/planet_rewards.gd").MATERIAL_KEYS:
|
|
if mineral != "parts": assert(captain.minerals[mineral] == 100)
|
|
assert(captain.parts == 100 and captain.expedition.analysis_samples == 100)
|
|
hud._give_debug_resources()
|
|
assert(captain.parts == 200 and captain.expedition.analysis_samples == 200)
|
|
hud.free()
|
|
var screen := preload("res://scenes/planets/freighter_interior.tscn").instantiate()
|
|
add_child(screen)
|
|
captain.minerals.iron = 99
|
|
screen._construct_room("expansion_2")
|
|
assert(not screen.deck.is_built("expansion_2") and captain.minerals.titanium == 200)
|
|
captain.minerals.iron = 200
|
|
screen._select_section("expansion_2")
|
|
screen._construct_room("expansion_2")
|
|
assert(screen.deck.is_built("expansion_2"))
|
|
for mineral in RECIPES.MINERALS: assert(captain.minerals[mineral] == 100)
|
|
assert(captain.minerals.silicon == 200 and captain.parts == 200)
|
|
screen._construct_room("expansion_2")
|
|
assert(captain.minerals.iron == 100)
|
|
screen._construct_room("cabin_1")
|
|
for mineral in RECIPES.MINERALS: assert(captain.minerals[mineral] == 0)
|
|
screen._select_section("storage")
|
|
for frame in 5: await get_tree().process_frame
|
|
print("CONSTRUCTION_RESOURCES_TEST_OK")
|
|
screen.free()
|
|
get_tree().quit()
|