forked from unfa/liblast
User settings are now saved
parent
4059c47c31
commit
01ddf2b25b
|
@ -0,0 +1,5 @@
|
|||
extends "res://Assets/UI/Menu.gd"
|
||||
|
||||
func on_mouse_sensitivity_set(sensitivity):
|
||||
GUI.set_mouse_sensitivity(sensitivity)
|
||||
GUI.set_setting("Sensitivity", sensitivity)
|
|
@ -1,8 +1,10 @@
|
|||
[gd_scene load_steps=2 format=2]
|
||||
[gd_scene load_steps=3 format=3 uid="uid://c6hqr4kqxt5rw"]
|
||||
|
||||
[ext_resource path="res://Assets/UI/Menu.tscn" type="PackedScene" id=1]
|
||||
[ext_resource type="PackedScene" path="res://Assets/UI/Menu.tscn" id="1"]
|
||||
[ext_resource type="Script" path="res://Assets/UI/ControlsMenu.gd" id="2_wjgrv"]
|
||||
|
||||
[node name="ControlsMenu" instance=ExtResource( 1 )]
|
||||
[node name="ControlsMenu" instance=ExtResource( "1" )]
|
||||
script = ExtResource( "2_wjgrv" )
|
||||
|
||||
[node name="MouseSensitivity" type="HBoxContainer" parent="." index="0"]
|
||||
offset_right = 337.0
|
||||
|
@ -13,17 +15,24 @@ script = null
|
|||
offset_right = 133.0
|
||||
offset_bottom = 26.0
|
||||
text = "Mouse sensitivity"
|
||||
structured_text_bidi_override_options = [ ]
|
||||
structured_text_bidi_override_options = []
|
||||
script = null
|
||||
|
||||
[node name="Slider" type="HSlider" parent="MouseSensitivity" index="1"]
|
||||
offset_left = 137.0
|
||||
offset_right = 337.0
|
||||
offset_bottom = 16.0
|
||||
rect_min_size = Vector2( 200, 0 )
|
||||
rect_min_size = Vector2(200, 0)
|
||||
min_value = 0.1
|
||||
max_value = 2.0
|
||||
step = 0.0
|
||||
value = 0.1
|
||||
exp_edit = true
|
||||
script = null
|
||||
|
||||
[node name="Back" parent="." index="1"]
|
||||
offset_top = 30.0
|
||||
offset_right = 337.0
|
||||
offset_bottom = 59.0
|
||||
|
||||
[connection signal="value_changed" from="MouseSensitivity/Slider" to="." method="on_mouse_sensitivity_set"]
|
||||
|
|
|
@ -6,12 +6,16 @@ var settings = {}
|
|||
func _ready():
|
||||
if has_settings():
|
||||
load_settings()
|
||||
print(settings)
|
||||
apply_settings()
|
||||
|
||||
func has_settings():
|
||||
var filecheck = File.new()
|
||||
return filecheck.file_exists(settings_filename)
|
||||
|
||||
func set_setting(key, value):
|
||||
settings[key] = value
|
||||
save_settings()
|
||||
|
||||
func save_settings():
|
||||
var file = File.new()
|
||||
file.open(settings_filename, File.WRITE)
|
||||
|
@ -24,5 +28,23 @@ func load_settings():
|
|||
settings = file.get_var()
|
||||
file.close()
|
||||
|
||||
func apply_settings():
|
||||
for key in settings.keys():
|
||||
match key:
|
||||
"Fullscreen":
|
||||
toggle_fullscreen(settings[key])
|
||||
"Sensitivity":
|
||||
set_mouse_sensitivity(settings[key])
|
||||
|
||||
# These functions are for applying settings changes
|
||||
func quit_game():
|
||||
get_tree().quit()
|
||||
|
||||
func toggle_fullscreen(is_fullscreen):
|
||||
if is_fullscreen:
|
||||
get_tree().get_root().mode = Window.MODE_FULLSCREEN
|
||||
else:
|
||||
get_tree().get_root().mode = Window.MODE_WINDOWED
|
||||
|
||||
func set_mouse_sensitivity(sensitivity):
|
||||
pass
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[gd_scene load_steps=4 format=3 uid="uid://b856vwmg8a6o4"]
|
||||
|
||||
[ext_resource type="PackedScene" path="res://Assets/UI/MenuButton.tscn" id="1"]
|
||||
[ext_resource type="PackedScene" uid="uid://d135tevauvmoq" path="res://Assets/UI/MenuButton.tscn" id="1"]
|
||||
[ext_resource type="PackedScene" path="res://Assets/UI/Menu.tscn" id="2"]
|
||||
[ext_resource type="Script" path="res://Assets/UI/GUI.gd" id="3"]
|
||||
|
||||
|
|
|
@ -1,11 +1,5 @@
|
|||
extends "res://Assets/UI/Menu.gd"
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready():
|
||||
pass
|
||||
|
||||
func toggle_fullscreen(button_pressed):
|
||||
if button_pressed:
|
||||
get_tree().get_root().mode = Window.MODE_FULLSCREEN
|
||||
else:
|
||||
get_tree().get_root().mode = Window.MODE_WINDOWED
|
||||
func on_fullscreen_toggled(button_pressed):
|
||||
GUI.toggle_fullscreen(button_pressed)
|
||||
GUI.set_setting("Fullscreen", button_pressed)
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
[gd_scene load_steps=4 format=2]
|
||||
[gd_scene load_steps=4 format=3 uid="uid://cd6qhohan2oa1"]
|
||||
|
||||
[ext_resource path="res://Assets/UI/Menu.tscn" type="PackedScene" id=1]
|
||||
[ext_resource path="res://Assets/UI/GraphicsMenu.gd" type="Script" id=2]
|
||||
[ext_resource path="res://Assets/UI/MenuCheckButton.tscn" type="PackedScene" id=3]
|
||||
[ext_resource type="PackedScene" path="res://Assets/UI/Menu.tscn" id="1"]
|
||||
[ext_resource type="Script" path="res://Assets/UI/GraphicsMenu.gd" id="2"]
|
||||
[ext_resource type="PackedScene" uid="uid://bl1fc5cl4fcav" path="res://Assets/UI/MenuCheckButton.tscn" id="3"]
|
||||
|
||||
[node name="GraphicsMenu" instance=ExtResource( 1 )]
|
||||
script = ExtResource( 2 )
|
||||
[node name="GraphicsMenu" instance=ExtResource( "1" )]
|
||||
script = ExtResource( "2" )
|
||||
|
||||
[node name="Fullscreen" parent="." index="0" instance=ExtResource( 3 )]
|
||||
[node name="Fullscreen" parent="." index="0" instance=ExtResource( "3" )]
|
||||
anchor_right = 0.0
|
||||
anchor_bottom = 0.0
|
||||
offset_right = 76.0
|
||||
|
@ -19,4 +19,4 @@ offset_top = 44.0
|
|||
offset_right = 76.0
|
||||
offset_bottom = 73.0
|
||||
|
||||
[connection signal="data_changed" from="Fullscreen" to="." method="toggle_fullscreen"]
|
||||
[connection signal="toggled" from="Fullscreen" to="." method="on_fullscreen_toggled"]
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
extends VBoxContainer
|
||||
|
||||
var previous_menu : Node = null
|
||||
var settings = {}
|
||||
@onready var GUI = get_parent()
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready():
|
||||
|
@ -17,3 +19,4 @@ func go_back():
|
|||
previous_menu.show()
|
||||
previous_menu = null
|
||||
queue_free()
|
||||
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
[gd_scene load_steps=2 format=2]
|
||||
[gd_scene load_steps=2 format=3 uid="uid://d135tevauvmoq"]
|
||||
|
||||
[ext_resource path="res://Assets/UI/MenuButton.gd" type="Script" id=1]
|
||||
[ext_resource type="Script" path="res://Assets/UI/MenuButton.gd" id="1"]
|
||||
|
||||
[node name="MenuButton" type="Button"]
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
script = ExtResource( 1 )
|
||||
script = ExtResource( "1" )
|
||||
__meta__ = {
|
||||
"_edit_use_anchors_": false
|
||||
}
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
[gd_scene load_steps=2 format=2]
|
||||
[gd_scene load_steps=2 format=3 uid="uid://bl1fc5cl4fcav"]
|
||||
|
||||
[ext_resource path="res://Assets/UI/MenuCheckButton.gd" type="Script" id=1]
|
||||
[ext_resource type="Script" path="res://Assets/UI/MenuCheckButton.gd" id="1"]
|
||||
|
||||
[node name="MenuCheckButton" type="CheckButton"]
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
script = ExtResource( 1 )
|
||||
script = ExtResource( "1" )
|
||||
__meta__ = {
|
||||
"_edit_use_anchors_": false
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
[gd_scene load_steps=3 format=3 uid="uid://d37bped35n16j"]
|
||||
|
||||
[ext_resource type="PackedScene" path="res://Assets/UI/Menu.tscn" id="1"]
|
||||
[ext_resource type="PackedScene" path="res://Assets/UI/MenuButton.tscn" id="2"]
|
||||
[ext_resource type="PackedScene" uid="uid://d135tevauvmoq" path="res://Assets/UI/MenuButton.tscn" id="2"]
|
||||
|
||||
[node name="OptionsMenu" instance=ExtResource( "1" )]
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
[gd_scene load_steps=12 format=3 uid="uid://b1078bn8gy2qf"]
|
||||
|
||||
[ext_resource type="PackedScene" path="res://Assets/MapComponents/SpawnPoint.tscn" id="1"]
|
||||
[ext_resource type="PackedScene" uid="uid://bfs2skkrik1xb" path="res://Assets/Props/BeerCan.glb" id="3"]
|
||||
[ext_resource type="PackedScene" uid="uid://831g53oe7qt8" path="res://Assets/Props/BeerCan.glb" id="3"]
|
||||
[ext_resource type="PackedScene" uid="uid://w476ulvte1f6" path="res://Assets/Maps/DM1/DM1.glb" id="6"]
|
||||
|
||||
[sub_resource type="GDScript" id="GDScript_gjkl2"]
|
||||
|
|
Loading…
Reference in New Issue