28 lines
1.4 KiB
GDScript
28 lines
1.4 KiB
GDScript
extends Node2D
|
|
|
|
func _ready() -> void:
|
|
GameState.start_new_run()
|
|
var profile := {"id":"hermit-preview","name":"Asteria","seed":8428159,"difficulty":0.4,"landing_damage":5,"oxygen":55,"temperature":55,"flora":10,"easy":false,"system_level":7}
|
|
assert(GameState.captain.expedition.begin_visit(profile))
|
|
var data: Dictionary = preload("res://scripts/planets/surface_generator.gd").generate(8428159,profile)
|
|
var kind := "time_engineer" if "--engineer" in OS.get_cmdline_user_args() else "hermit"
|
|
data.pois[0].kind = kind
|
|
data.pois[0].position = Vector2.ZERO
|
|
var world := Node2D.new()
|
|
world.set_script(preload("res://scripts/planets/surface_world.gd"))
|
|
world.data = data
|
|
add_child(world)
|
|
var camera := Camera2D.new()
|
|
camera.zoom = Vector2.ONE*3.0
|
|
camera.position = Vector2(0,8)
|
|
add_child(camera)
|
|
world.refresh_pois(Vector2.ZERO)
|
|
var building: Sprite2D = world._poi_sprites[data.pois[0].id]
|
|
assert(building.material != null and building.has_node("GroundContact"))
|
|
assert(building.texture.get_image().detect_alpha() != Image.ALPHA_NONE)
|
|
for frame in 12: await get_tree().process_frame
|
|
await RenderingServer.frame_post_draw
|
|
assert(get_viewport().get_texture().get_image().save_png("res://artifacts/%s_grounded_preview.png" % kind) == OK)
|
|
print("HERMIT GROUNDING PREVIEW PASS: replacement sprite, alpha, biome material, contact shadow and service marker")
|
|
get_tree().quit()
|