extends RefCounted const SAMPLE_CHANCE := 0.15 static func drop(enemy: Node2D) -> void: if randf() < SAMPLE_CHANCE: spawn(enemy,{"samples":1},Vector2(-38,30)) if int(enemy.get("loot_tier")) == 2 and GameState.active_distant_map.is_empty(): var profile := {"id":"boss:%d:%d" % [GameState.system_seed,randi()],"seed":randi(),"name":"Boss układu %d" % GameState.system_level} spawn(enemy,{"map":preload("res://scripts/planets/distant_expeditions.gd").offer(profile,GameState.system_level)},Vector2(0,65)) static func spawn(enemy: Node2D, payload: Dictionary, offset: Vector2) -> void: var pickup := Node2D.new() pickup.set_script(preload("res://scripts/items/expedition_pickup.gd")) pickup.payload = payload pickup.position = enemy.position + offset enemy.get_parent().call_deferred("add_child",pickup)