extends Node export (PackedScene) var Creature var selected = [] var rng = RandomNumberGenerator.new() func _ready(): rng.randomize() pass func spawn_a_bitch(): var c = Creature.instance() add_child(c) # Geef de bitch een random positie en rotatie c.rotate_y(rand_range(-5, 5)) c.transform = Transform(c.transform.basis, Vector3(rand_range(-7, 7), 0, rand_range(-5, 5))) return c func kill_a_bitch(): var c = get_child(get_child_count()-1) if c: c.queue_free() #remove_child(c) func combine_a_bitch(): if selected.size() == 2: var new_dna = [] for i in range(selected[0].dna.size()): if rng.randf() > 0.5: new_dna.append(selected[0].dna[i]) else: new_dna.append(selected[1].dna[i]) var new_child = spawn_a_bitch() new_child.dna = new_dna deselect_all() select(new_child) new_child.describe() func deselect_all(): for i in range(selected.size()): selected[i].get_node("SelectionIndicator").visible = false; selected = [] func select(creature): if selected.has(creature): creature.get_node("SelectionIndicator").visible = false; selected.erase(creature) else: selected.append(creature) creature.get_node("SelectionIndicator").visible = true; func select_a_bitch(camera, event, click_position, click_normal, index, creature_id): if event.is_action_pressed("select_creature"): var kindeke = get_child(creature_id) select(kindeke) print(creature_id)