cawez_puzzlebox/globals.gd
2024-08-02 20:01:23 -04:00

84 lines
2.0 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):
if Input.get_axis("less", "more") != 0.0:
var amount = Input.get_axis("less", "more") * delta * 2.5
fractal = clampf(fractal + amount, fractal_min, fractal_max)
if fractal != fractal_min && fractal != fractal_max:
Sounds.get_node("fractal").multiply = 1.5
else:
Sounds.get_node("fractal").multiply = 0.0
else:
Sounds.get_node("fractal").multiply = 0.0
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)
func change_fractal(base, new_min, new_max):
fractal = base
fractal_min = new_min
fractal_max = new_max
fractal = clampf(fractal, fractal_min, fractal_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)
if old_down.normalized().dot(global_down.normalized()) < 0.9:
Sounds.get_node("gravity").play()
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