Reworked seed_string to seed_value
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
class_name AreaGenerator
|
||||
extends Node
|
||||
|
||||
|
||||
func generate(seed_value: int) -> AreaData:
|
||||
var rng := RandomNumberGenerator.new()
|
||||
rng.seed = seed_value
|
||||
|
||||
var data : AreaData = AreaData.new()
|
||||
data.seed_value = seed_value
|
||||
|
||||
_fill_stages(rng, data)
|
||||
|
||||
return data
|
||||
|
||||
|
||||
func _fill_stages(rng: RandomNumberGenerator, data : AreaData) -> void:
|
||||
pass
|
||||
@@ -0,0 +1 @@
|
||||
uid://bcq74qwnbylg2
|
||||
@@ -0,0 +1,6 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://c4l1cv3o25lhv"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://bcq74qwnbylg2" path="res://game/world/generators/area_generator.gd" id="1_hahgo"]
|
||||
|
||||
[node name="AreaGenerator" type="Node"]
|
||||
script = ExtResource("1_hahgo")
|
||||
@@ -1,20 +1,27 @@
|
||||
class_name WorldGenerator
|
||||
extends Node
|
||||
|
||||
|
||||
func generate(seed_string: String) -> WorldData:
|
||||
@onready var area_generator : AreaGenerator = $AreaGenerator
|
||||
|
||||
|
||||
const MAX_AREA_COUNT = 3
|
||||
|
||||
|
||||
func generate(seed_value: int) -> WorldData:
|
||||
var rng := RandomNumberGenerator.new()
|
||||
rng.seed = seed_value
|
||||
|
||||
var data : WorldData = WorldData.new()
|
||||
data.seed_value = seed_value
|
||||
|
||||
data.seed_string = seed_string
|
||||
|
||||
_fill_areas(data)
|
||||
_fill_areas(rng, data)
|
||||
|
||||
return data
|
||||
|
||||
|
||||
func _fill_areas(data : WorldData) -> void:
|
||||
const MAX_AREA_COUNT = 3
|
||||
var rng := RandomNumberGenerator.new()
|
||||
rng.seed = hash(data.seed_string)
|
||||
|
||||
func _fill_areas(rng: RandomNumberGenerator, data : WorldData) -> void:
|
||||
for i in MAX_AREA_COUNT:
|
||||
pass
|
||||
var seed_value := rng.randi()
|
||||
var area := area_generator.generate(seed_value)
|
||||
data.areas.append(area)
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://ggf76ayl53bb"]
|
||||
[gd_scene load_steps=3 format=3 uid="uid://ggf76ayl53bb"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://b7e3xk14le68j" path="res://game/world/generators/world_generator.gd" id="1_c1jvo"]
|
||||
[ext_resource type="PackedScene" uid="uid://c4l1cv3o25lhv" path="res://game/world/generators/area_generator.tscn" id="2_exe4n"]
|
||||
|
||||
[node name="WorldGenerator" type="Node"]
|
||||
script = ExtResource("1_c1jvo")
|
||||
|
||||
[node name="AreaGenerator" parent="." instance=ExtResource("2_exe4n")]
|
||||
|
||||
Reference in New Issue
Block a user