cawez_puzzlebox/globals.gd
2024-07-01 11:21:22 -04:00

79 lines
1.8 KiB
GDScript

extends Node
# Custom Settings
var sensitivity = 0.004
var fov = 75
var music_volume = linear_to_db(0.5)
var voice_volume = linear_to_db(1.0)
# World Settings
var global_down = Vector3(0,0,0)
# Player values accessed elsewhere
var restart = false
var next = false
var fractal = 0
var fractal_min = 0
var fractal_max = 10
# Debug
var benchmark = false
func _ready():
set_global_down(Vector3(0,-1,0))
func _process(delta):
var amount = Input.get_axis("less", "more") * delta * 2.5
fractal = clampf(fractal + amount, fractal_min, fractal_max)
if Input.get_action_strength("restart") > 0.0:
restart = true
if Input.is_action_just_released("fullscreen"):
if DisplayServer.window_get_mode() == DisplayServer.WINDOW_MODE_EXCLUSIVE_FULLSCREEN:
DisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_WINDOWED)
else:
DisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_EXCLUSIVE_FULLSCREEN)
if benchmark:
var tmp = Time.get_ticks_msec() + 100
while Time.get_ticks_msec() < tmp:
pass
if Input.is_action_just_pressed("debug"):
benchmark = !benchmark
func change_fractal(base, new_min, new_max):
fractal = base
fractal_min = new_min
fractal_max = new_max
func set_global_down(new_down: Vector3):
var old_down = global_down
global_down = new_down.normalized()
# Applies jitter
global_down += old_down * 0.01
# Jitter not enough?
global_down += Vector3(0.002, 0, 0)
func write_save(location, value):
var file = FileAccess.open("user://" + location + ".save", FileAccess.WRITE)
file.store_var(value)
func get_save(location, default) -> float:
if FileAccess.file_exists("user://" + location + ".save"):
print("file found: " + location)
var file = FileAccess.open("user://" + location + ".save", FileAccess.READ)
return file.get_var()
else :
print("file not found")
return default