Added EnemyGenerator

This commit is contained in:
2025-12-07 16:35:18 +03:00
parent acd1202e42
commit c8ea642b88
7 changed files with 86 additions and 2 deletions
+16
View File
@@ -0,0 +1,16 @@
class_name EnemyGenerator
extends Node
var local_seed_rng : RandomNumberGenerator = RandomNumberGenerator.new()
func generate(seed_value: int) -> EnemyData:
local_seed_rng.seed = seed_value
var data : EnemyData = EnemyData.new()
data.seed_value = seed_value
return data
@@ -0,0 +1 @@
uid://r51oawb6oedw
@@ -0,0 +1,6 @@
[gd_scene load_steps=2 format=3 uid="uid://bqtiiog23c2ta"]
[ext_resource type="Script" uid="uid://r51oawb6oedw" path="res://game/world/generators/enemy_generator.gd" id="1_ehucw"]
[node name="EnemyGenerator" type="Node"]
script = ExtResource("1_ehucw")
+16 -1
View File
@@ -2,15 +2,30 @@ class_name PassageGenerator
extends Node
const ENEMY_COUNT = 10
@onready var enemy_generator : EnemyGenerator = $EnemyGenerator
var local_seed_rng : RandomNumberGenerator = RandomNumberGenerator.new()
var enemy_seed_rng : RandomNumberGenerator = RandomNumberGenerator.new()
func generate(seed_value: int) -> PassageData:
local_seed_rng.seed = seed_value
enemy_seed_rng.seed = local_seed_rng.randi()
var data : PassageData = PassageData.new()
data.seed_value = seed_value
_fill_enemies(data)
return data
func _fill_enemies(data: PassageData) -> void:
for i in ENEMY_COUNT:
var seed_value := enemy_seed_rng.randi()
var enemy := enemy_generator.generate(seed_value)
data.enemies.append(enemy)
+4 -1
View File
@@ -1,6 +1,9 @@
[gd_scene load_steps=2 format=3 uid="uid://cfcpr07j58cvx"]
[gd_scene load_steps=3 format=3 uid="uid://cfcpr07j58cvx"]
[ext_resource type="Script" uid="uid://bi5vt3ikxya8d" path="res://game/world/generators/passage_generator.gd" id="1_3arab"]
[ext_resource type="PackedScene" uid="uid://bqtiiog23c2ta" path="res://game/world/generators/enemy_generator.tscn" id="2_u6kxl"]
[node name="PassageGenerator" type="Node"]
script = ExtResource("1_3arab")
[node name="EnemyGenerator" parent="." instance=ExtResource("2_u6kxl")]