mirror of
https://github.com/GarrettGunnell/God-Machine.git
synced 2025-10-19 14:43:16 +00:00
Implement new seed button
This commit is contained in:
parent
59f1bd47ad
commit
a680e38ea7
5 changed files with 28 additions and 15 deletions
|
@ -1,4 +1,4 @@
|
|||
[gd_scene load_steps=26 format=4 uid="uid://cfsgy7huubpok"]
|
||||
[gd_scene load_steps=27 format=4 uid="uid://cfsgy7huubpok"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://djni3vb2o3xa1" path="res://Assets/Scripts/game_master.gd" id="1_ttgh6"]
|
||||
[ext_resource type="Script" uid="uid://drfxlavovcgta" path="res://Assets/Scripts/automata_compositor_effect.gd" id="1_vlji8"]
|
||||
|
@ -16,6 +16,7 @@
|
|||
[ext_resource type="Texture2D" uid="uid://bq5kp2dk1xacv" path="res://Assets/Textures/UI/play button.png" id="11_nb11o"]
|
||||
[ext_resource type="Script" uid="uid://n1c7utg00au7" path="res://Assets/Scripts/UI/reseed_button.gd" id="13_4qkp8"]
|
||||
[ext_resource type="Texture2D" uid="uid://c6gbyodrab0sa" path="res://Assets/Textures/UI/toolbar.png" id="16_ltoj3"]
|
||||
[ext_resource type="Script" uid="uid://cbxol4ngxuqsp" path="res://Assets/Scenes/new_seed_button.gd" id="17_tm25p"]
|
||||
|
||||
[sub_resource type="Environment" id="Environment_0xm2m"]
|
||||
|
||||
|
@ -29,9 +30,6 @@ needs_normal_roughness = false
|
|||
script = ExtResource("1_vlji8")
|
||||
pause = false
|
||||
update_speed = 0.05
|
||||
current_seed = 3009
|
||||
random_seed = true
|
||||
reseed = false
|
||||
exposure = Vector4(2, 1, 1, 1)
|
||||
metadata/_custom_type_script = "uid://drfxlavovcgta"
|
||||
|
||||
|
@ -181,9 +179,9 @@ scroll_active = false
|
|||
autowrap_mode = 0
|
||||
|
||||
[node name="Spawn Lower Button" type="Panel" parent="UI/Neighborhood 1/Tool Bar"]
|
||||
offset_left = 182.0
|
||||
offset_left = 183.0
|
||||
offset_top = 418.0
|
||||
offset_right = 236.0
|
||||
offset_right = 235.0
|
||||
offset_bottom = 456.0
|
||||
mouse_default_cursor_shape = 2
|
||||
script = ExtResource("13_4qkp8")
|
||||
|
@ -227,7 +225,7 @@ autowrap_mode = 0
|
|||
[node name="Stable Lower Button" type="Panel" parent="UI/Neighborhood 1/Tool Bar"]
|
||||
offset_left = 311.0
|
||||
offset_top = 418.0
|
||||
offset_right = 365.0
|
||||
offset_right = 363.0
|
||||
offset_bottom = 456.0
|
||||
mouse_default_cursor_shape = 2
|
||||
script = ExtResource("13_4qkp8")
|
||||
|
@ -247,7 +245,7 @@ scroll_active = false
|
|||
autowrap_mode = 0
|
||||
|
||||
[node name="Stable Upper Button" type="Panel" parent="UI/Neighborhood 1/Tool Bar"]
|
||||
offset_left = 365.0
|
||||
offset_left = 364.0
|
||||
offset_top = 418.0
|
||||
offset_right = 419.0
|
||||
offset_bottom = 456.0
|
||||
|
@ -402,7 +400,7 @@ offset_top = 583.0
|
|||
offset_right = 213.0
|
||||
offset_bottom = 624.0
|
||||
mouse_default_cursor_shape = 2
|
||||
script = ExtResource("13_4qkp8")
|
||||
script = ExtResource("17_tm25p")
|
||||
|
||||
[connection signal="gui_input" from="UI/Neighborhood 1/Grid" to="UI/Neighborhood 1/Grid" method="_on_gui_input"]
|
||||
[connection signal="mouse_entered" from="UI/Neighborhood 1/Grid" to="UI/Neighborhood 1/Grid" method="_on_mouse_entered"]
|
||||
|
|
4
Assets/Scenes/new_seed_button.gd
Normal file
4
Assets/Scenes/new_seed_button.gd
Normal file
|
@ -0,0 +1,4 @@
|
|||
extends AcerolaPanel
|
||||
|
||||
func on_pressed() -> void:
|
||||
get_node("/root/Node3D/Game Master").set_seed(randi() % 10000)
|
1
Assets/Scenes/new_seed_button.gd.uid
Normal file
1
Assets/Scenes/new_seed_button.gd.uid
Normal file
|
@ -0,0 +1 @@
|
|||
uid://cbxol4ngxuqsp
|
|
@ -4,9 +4,8 @@ class_name AutomataCompositorEffect
|
|||
|
||||
@export var pause = false
|
||||
@export_range(0.001, 0.5) var update_speed = 0.05
|
||||
@export var current_seed : int = 0
|
||||
@export var random_seed = false
|
||||
@export var reseed = true
|
||||
|
||||
var reseed = true
|
||||
|
||||
@export_group("Shader Settings")
|
||||
@export var exposure = Vector4(2, 1, 1, 1)
|
||||
|
@ -25,6 +24,8 @@ var next_generation : RID
|
|||
var world_image_texture : ImageTexture
|
||||
|
||||
var timer = 0.0
|
||||
|
||||
var current_seed : int = 0
|
||||
var needs_seeding = true
|
||||
|
||||
func _init():
|
||||
|
@ -96,9 +97,6 @@ func _render_callback(p_effect_callback_type, p_render_data):
|
|||
var z_groups = 1
|
||||
|
||||
if (reseed):
|
||||
if (random_seed): current_seed = randi() % 10000
|
||||
print(current_seed)
|
||||
|
||||
needs_seeding = true
|
||||
reseed = false
|
||||
|
||||
|
@ -136,5 +134,8 @@ func _render_callback(p_effect_callback_type, p_render_data):
|
|||
|
||||
timer += Engine.get_main_loop().root.get_process_delta_time()
|
||||
|
||||
func set_seed(new_seed : int):
|
||||
current_seed = new_seed
|
||||
|
||||
func get_world_texture() -> RID:
|
||||
return world_texture;
|
||||
|
|
|
@ -3,6 +3,8 @@ class_name GameMaster
|
|||
|
||||
var automata_compositor_effect : CompositorEffect
|
||||
|
||||
var current_seed : int = 0
|
||||
|
||||
func _ready() -> void:
|
||||
var root_node = Engine.get_main_loop().root
|
||||
var environment = root_node.get_node_or_null("Node3D/WorldEnvironment")
|
||||
|
@ -19,3 +21,10 @@ func _process(delta: float) -> void:
|
|||
|
||||
func queue_reseed() -> void:
|
||||
automata_compositor_effect.reseed = true
|
||||
|
||||
func set_seed(new_seed : int) -> void:
|
||||
current_seed = new_seed
|
||||
automata_compositor_effect.set_seed(current_seed)
|
||||
|
||||
func get_seed() -> int:
|
||||
return current_seed
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue