27 lines
970 B
GDScript
27 lines
970 B
GDScript
extends "res://scripts/game/game.gd"
|
|
|
|
const MINERALS := ["iron", "titanium", "uranium", "aluminium", "sulfur"]
|
|
|
|
func _ready() -> void:
|
|
super._ready()
|
|
for enemy in get_tree().get_nodes_in_group("enemies"):
|
|
enemy.set_physics_process(false)
|
|
for poi in get_tree().get_nodes_in_group("exploration_pois"):
|
|
poi.queue_free()
|
|
for index in MINERALS.size():
|
|
var reward_seed := 1
|
|
var rng := RandomNumberGenerator.new()
|
|
while true:
|
|
rng.seed = reward_seed
|
|
if ["iron", "aluminium", "titanium", "uranium", "sulfur"][rng.randi_range(0, 4)] == MINERALS[index]:
|
|
break
|
|
reward_seed += 1
|
|
var asteroid := StaticBody2D.new()
|
|
asteroid.set_script(preload("res://scripts/levels/exploration_poi.gd"))
|
|
asteroid.set("kind", "asteroid")
|
|
asteroid.set("poi_id", "ore_preview_%s" % MINERALS[index])
|
|
asteroid.set("reward_seed", reward_seed)
|
|
asteroid.set("player", player)
|
|
asteroid.position = player.position + Vector2((index - 2) * 120, 130)
|
|
add_child(asteroid)
|