aboutsummaryrefslogtreecommitdiff
path: root/client/map
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2024-09-06 23:43:42 +0200
committermetamuffin <metamuffin@disroot.org>2024-09-06 23:43:42 +0200
commit06baf4555dc1c7a64bed7d059fbe34c99e9638fb (patch)
tree923d343033a8c1aa28a8d6c834c0332ddd2201ab /client/map
parentd7fefc69c0a8a4b70d3553125af5f5cabdba6b3b (diff)
downloadhurrycurry-06baf4555dc1c7a64bed7d059fbe34c99e9638fb.tar
hurrycurry-06baf4555dc1c7a64bed7d059fbe34c99e9638fb.tar.bz2
hurrycurry-06baf4555dc1c7a64bed7d059fbe34c99e9638fb.tar.zst
refactor settings again (part 1)
Diffstat (limited to 'client/map')
-rw-r--r--client/map/auto_setup/environment_setup.gd17
-rw-r--r--client/map/auto_setup/light_setup.gd4
-rw-r--r--client/map/map.gd19
-rw-r--r--client/map/tiles/exterior_tree.gd2
-rw-r--r--client/map/tiles/grass.gd2
-rw-r--r--client/map/tiles/light_tile.gd2
6 files changed, 24 insertions, 22 deletions
diff --git a/client/map/auto_setup/environment_setup.gd b/client/map/auto_setup/environment_setup.gd
index 3ce8add3..49f93ccb 100644
--- a/client/map/auto_setup/environment_setup.gd
+++ b/client/map/auto_setup/environment_setup.gd
@@ -22,12 +22,13 @@ func set_sky(sky_name: String):
environment.sky.sky_material = load("res://map/environment/presets/%s_sky.tres" % sky_name)
func _ready():
- apply_settings()
- Global.settings_changed.connect(apply_settings)
+ pass
+ #Global.settings_changed.connect(apply_settings)
-func apply_settings():
- environment.ssao_enabled = Global.get_setting("ssao")
- environment.sdfgi_enabled = Global.get_setting("gi") == 1 and allow_sdfgi
- environment.glow_enabled = Global.get_setting("glow")
- if !Global.on_vulkan():
- environment.environment.tonemap_exposure = 0.5
+# TODO
+#func apply_settings():
+ #environment.ssao_enabled = Global.get_setting("graphics.ssao")
+ #environment.sdfgi_enabled = Global.get_setting("graphics.gi") == "sdfgi" and allow_sdfgi
+ #environment.glow_enabled = Global.get_setting("graphics.glow")
+ #if !Global.on_vulkan():
+ #environment.environment.tonemap_exposure = 0.5
diff --git a/client/map/auto_setup/light_setup.gd b/client/map/auto_setup/light_setup.gd
index 1e256dae..b42b3662 100644
--- a/client/map/auto_setup/light_setup.gd
+++ b/client/map/auto_setup/light_setup.gd
@@ -24,8 +24,8 @@ func _ready():
func apply_settings():
if completely_disable_light_if_shadows_disabled:
- visible = Global.get_setting("shadows")
- shadow_enabled = Global.get_setting("shadows")
+ visible = Global.get_setting("graphics.shadows")
+ shadow_enabled = Global.get_setting("graphics.shadows")
func set_sky(sky_name: String):
match sky_name:
diff --git a/client/map/map.gd b/client/map/map.gd
index 208665bf..fc3bd1bb 100644
--- a/client/map/map.gd
+++ b/client/map/map.gd
@@ -52,17 +52,18 @@ func clear_tile(pos: Vector2i):
func _ready():
voxelgi_timer.connect("timeout", gi_bake)
- Global.settings_changed.connect(func():
- # is not baked yet but setting is true
- if Global.get_setting("gi") == 2 and not currently_baked:
- gi_bake()
- else:
- currently_baked = false
- voxelgi.data = null
- )
+ Settings.hook_changed("graphics.gi", apply_gi_setting)
+
+func apply_gi_setting(state):
+ if state == "voxelgi" and not currently_baked:
+ gi_bake()
+ else:
+ currently_baked = false
+ voxelgi.data = null
+
func gi_bake():
- if not Global.get_setting("gi") == 2: return
+ if not Global.get_setting("graphics.gi") == 2: return
print("Map: Rebaking VoxelGI")
currently_baked = true
gi_bake_blocking()
diff --git a/client/map/tiles/exterior_tree.gd b/client/map/tiles/exterior_tree.gd
index edc08df3..9054cbaa 100644
--- a/client/map/tiles/exterior_tree.gd
+++ b/client/map/tiles/exterior_tree.gd
@@ -27,7 +27,7 @@ func _init(rename: String, _neighbors: Array):
var trunk: Mesh = load("res://map/tiles/tree/trunk_%d.res" % tree)
var leaves: Mesh = load("res://map/tiles/tree/leaves_%d_%s.res" % [
tree,
- "lq" if Global.get_setting("lq_trees") else "hq"
+ "lq" if Global.get_setting("graphics.lq_trees") else "hq"
])
var trunk_instance: MeshInstance3D = MeshInstance3D.new()
trunk_instance.mesh = trunk
diff --git a/client/map/tiles/grass.gd b/client/map/tiles/grass.gd
index b33642a3..4bd3587c 100644
--- a/client/map/tiles/grass.gd
+++ b/client/map/tiles/grass.gd
@@ -25,7 +25,7 @@ func _init(rename: String, _neighbors: Array):
var random = RandomNumberGenerator.new()
random.seed = rename.hash()
- for _i in Global.get_setting("grass_amount"):
+ for _i in Global.get_setting("graphics.grass_amount"):
var g: Node3D = GRASS_SIDE.instantiate()
base_mesh.add_child(g)
g.position = Vector3(random.randf_range(-.5, .5), 0, random.randf_range(-.5, .5))
diff --git a/client/map/tiles/light_tile.gd b/client/map/tiles/light_tile.gd
index fac3ee39..947c8c8b 100644
--- a/client/map/tiles/light_tile.gd
+++ b/client/map/tiles/light_tile.gd
@@ -26,4 +26,4 @@ func _ready():
func update_shadows():
for l in lights:
- l.shadow_enabled = Global.get_setting("shadows")
+ l.shadow_enabled = Global.get_setting("graphics.shadows")