49 lines
1.1 KiB
GDScript
49 lines
1.1 KiB
GDScript
extends Node3D
|
|
|
|
var survivors: int = 5
|
|
var survivor_rate: float = .75
|
|
var speed_modifer: int = 0
|
|
var spawn_readiness: bool = false
|
|
|
|
@onready var survivor = preload("res://scenes/survivor.tscn")
|
|
@onready var world = preload("res://scenes/world.tscn")
|
|
|
|
@onready var survivor_spawn = get_node("/root/Game/World/SuvivorSpawn")
|
|
@onready var start_pos = survivor_spawn.global_position
|
|
|
|
func _ready() -> void:
|
|
spawn_readiness = false
|
|
|
|
func _physics_process(delta):
|
|
if spawn_readiness == true:
|
|
spawn_survivor()
|
|
spawn_readiness = false
|
|
|
|
else:
|
|
func start() -> void:
|
|
spawn_readiness = true
|
|
|
|
#func _physics_process(delta):
|
|
#if spawn_readiness == true:
|
|
#spawn_survivor()
|
|
#spawn_readiness = false
|
|
#
|
|
#else: pass
|
|
|
|
func spawn_survivor():
|
|
|
|
if spawn_readiness == false: pass
|
|
|
|
else:
|
|
|
|
var survivor_delay: float = randf_range(1, 2.5)
|
|
|
|
|
|
for x in range(survivors):
|
|
var s = survivor.instantiate()
|
|
get_tree().root.add_child.call_deferred(s)
|
|
#get_node("/root/Game/World").add_child(s)
|
|
s.position = start_pos + start_variance
|
|
await get_tree().create_timer(survivor_rate * survivor_delay).timeout
|
|
spawn_readiness = true
|
|
|