Finished Save System
- All settings get saved - Added reset to defaults button - Sliders now update the labels
This commit is contained in:
parent
d2c89a9b5e
commit
337dd80142
@ -1,7 +1,7 @@
|
||||
Button
|
||||
CheckBox
|
||||
OptionButton
|
||||
Label
|
||||
Button
|
||||
HSlider
|
||||
Control
|
||||
CanvasLayer
|
||||
|
@ -12,15 +12,15 @@ dock_floating={}
|
||||
dock_split_2=0
|
||||
dock_split_3=0
|
||||
dock_hsplit_1=0
|
||||
dock_hsplit_2=270
|
||||
dock_hsplit_3=-328
|
||||
dock_hsplit_2=260
|
||||
dock_hsplit_3=-285
|
||||
dock_hsplit_4=0
|
||||
dock_filesystem_split=0
|
||||
dock_filesystem_display_mode=0
|
||||
dock_filesystem_file_sort=0
|
||||
dock_filesystem_file_list_display_mode=1
|
||||
dock_filesystem_selected_paths=PackedStringArray("res://")
|
||||
dock_filesystem_uncollapsed_paths=PackedStringArray("res://addons/kenney_particle_pack/")
|
||||
dock_filesystem_selected_paths=PackedStringArray()
|
||||
dock_filesystem_uncollapsed_paths=PackedStringArray("res://", "res://addons/kenney_particle_pack/")
|
||||
dock_3="Scene,Import"
|
||||
dock_4="FileSystem"
|
||||
dock_5="Inspector,Node,History"
|
||||
@ -38,7 +38,7 @@ selected_bottom_panel_item=0
|
||||
|
||||
open_scripts=["res://Scripts/Player.gd", "res://Scripts/world.gd"]
|
||||
selected_script="res://Scripts/world.gd"
|
||||
open_help=["FileAccess", "Input", "ResourceSaver"]
|
||||
open_help=["CheckBox", "CheckButton", "FileAccess", "Input", "Label", "ResourceSaver"]
|
||||
script_split_offset=70
|
||||
list_split_offset=0
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
ea4bc82a6ad023ab7ee23ee620429895
|
||||
::res://::1701436760
|
||||
::res://::1701456972
|
||||
icon.svg::CompressedTexture2D::8963615070695796116::1699534826::1699534826::1::::<><>::
|
||||
::res://addons/::1699534826
|
||||
::res://addons/godot-jolt/::1699534826
|
||||
@ -309,16 +309,17 @@ lambert1_metallicRoughness.png::CompressedTexture2D::8931258458639185901::169963
|
||||
lambert1_normal.png::CompressedTexture2D::3998376482152544164::1699639136::1699639160::1::::<><>::
|
||||
::res://Occlusion Data/::1699901776
|
||||
environment.occ::ArrayOccluder3D::2660494726846166203::1699901776::0::1::::<><>::
|
||||
::res://Prefabs/::1700275209
|
||||
player.tscn::PackedScene::4444783912067201683::1700275209::0::1::::<><>::res://Scripts/Player.gd<>uid://da1qh4xri24f2::::res://Models/kimber_1911/scene.gltf<>uid://d164amgdtaa5k::::res://Models/funny_rubber_chicken/chicken.tscn<>uid://bx0esoasfh733::::res://addons/kenney_particle_pack/star_06.png<>uid://cfwx1moklfkfj::::res://Sound Effects/weapon_gun_1911_A_41.ogg
|
||||
::res://Saves/::1699904469
|
||||
::res://Scenes/::1700275209
|
||||
::res://Prefabs/::1701454347
|
||||
player.tscn::PackedScene::4444783912067201683::1701454347::0::1::::<><>::res://Scripts/Player.gd<>uid://da1qh4xri24f2::::res://Models/kimber_1911/scene.gltf<>uid://d164amgdtaa5k::::res://Models/funny_rubber_chicken/chicken.tscn<>uid://bx0esoasfh733::::res://addons/kenney_particle_pack/star_06.png<>uid://cfwx1moklfkfj::::res://Sound Effects/weapon_gun_1911_A_41.ogg
|
||||
::res://Saves/::1701454093
|
||||
options.res::::-1::1701454362::0::1::::<><>::
|
||||
::res://Scenes/::1701454347
|
||||
environment.tscn::PackedScene::8256961957080777526::1699901776::0::1::::<><>::uid://ca0iv4endjdmn
|
||||
world.tscn::PackedScene::1877808985457939721::1700275209::0::1::::<><>::res://Scripts/world.gd<>uid://dpvy7sm57pjn7::::res://Scenes/environment.tscn<>uid://dhytg0w8gqdob::::res://addons/kenney_particle_pack/circle_05.png
|
||||
::res://Scripts/::1700229275
|
||||
world.tscn::PackedScene::1877808985457939721::1701454347::0::1::::<><>::res://Scripts/world.gd<>uid://dpvy7sm57pjn7::::res://Scenes/environment.tscn<>uid://dhytg0w8gqdob::::res://addons/kenney_particle_pack/circle_05.png
|
||||
::res://Scripts/::1701454345
|
||||
chicken.gd::GDScript::-1::1699536631::0::1::::<>Node3D<>::
|
||||
HatHider.gd::GDScript::-1::1699901776::0::1::::<>Node3D<>::
|
||||
Player.gd::GDScript::-1::1700075062::0::1::::<>CharacterBody3D<>::
|
||||
world.gd::GDScript::-1::1700229275::0::1::::<>Node<>::
|
||||
world.gd::GDScript::-1::1701454345::0::1::::<>Node<>::
|
||||
::res://Sound Effects/::1699901776
|
||||
weapon_gun_1911_A_41.ogg::AudioStreamOggVorbis::5170645470017560819::1699901776::1699901776::1::::<><>::
|
||||
|
@ -1,2 +1,3 @@
|
||||
res://Scripts/world.gd
|
||||
res://Scenes/world.tscn
|
||||
res://Scripts/world.gd
|
||||
res://Prefabs/player.tscn
|
||||
|
@ -174,4 +174,4 @@ Anim={
|
||||
"zfar": 4000.01,
|
||||
"znear": 0.05
|
||||
}
|
||||
selected_nodes=Array[NodePath]([])
|
||||
selected_nodes=Array[NodePath]([NodePath("/root/@EditorNode@17638/@Control@697/@Panel@698/@VBoxContainer@706/@HSplitContainer@709/@HSplitContainer@717/@HSplitContainer@725/@VBoxContainer@726/@VSplitContainer@728/@VSplitContainer@754/@VBoxContainer@755/@PanelContainer@800/MainScreen/@CanvasItemEditor@10090/@VSplitContainer@9915/@HSplitContainer@9917/@HSplitContainer@9919/@Control@9920/@SubViewportContainer@9921/@SubViewport@9922/World/CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/Reset")])
|
||||
|
@ -7,11 +7,11 @@ use_advanced_connections=false
|
||||
|
||||
run_live_debug=true
|
||||
run_reload_scripts=true
|
||||
run_debug_instances=2
|
||||
run_debug_instances=1
|
||||
|
||||
[dialog_bounds]
|
||||
|
||||
editor_settings=Rect2(830, 370, 900, 700)
|
||||
editor_settings=Rect2(550, 184, 900, 700)
|
||||
create_new_node=Rect2(830, 370, 900, 700)
|
||||
project_settings=Rect2(485, 157, 900, 700)
|
||||
search_help=Rect2(396, 196, 1280, 720)
|
||||
@ -20,7 +20,7 @@ export=Rect2(830, 371, 900, 708)
|
||||
[recent_files]
|
||||
|
||||
scenes=["res://Prefabs/player.tscn", "res://Scenes/world.tscn", "res://Models/environment.glb", "res://Scenes/environment.tscn", "res://Models/Hats/11.tscn", "res://Models/Hats/10.tscn", "res://Models/Hats/9.tscn", "res://Models/Hats/8.tscn", "res://Models/Hats/7.tscn", "res://Models/Hats/6.tscn"]
|
||||
scripts=["FileAccess", "ResourceSaver", "Input", "res://Scripts/Player.gd", "res://Scripts/world.gd", "InputEventMouseMotion", "InputEventJoypadMotion", "GeometryInstance3D", "ENetPacketPeer", "ENetMultiplayerPeer"]
|
||||
scripts=["Label", "CheckButton", "ResourceSaver", "Input", "FileAccess", "CheckBox", "res://Scripts/Player.gd", "res://Scripts/world.gd", "InputEventMouseMotion", "InputEventJoypadMotion"]
|
||||
|
||||
[linked_properties]
|
||||
|
||||
|
@ -7,7 +7,7 @@ state={
|
||||
"folded_lines": Array[int]([]),
|
||||
"h_scroll_position": 84,
|
||||
"row": 139,
|
||||
"scroll_position": 118.0,
|
||||
"scroll_position": 0.0,
|
||||
"selection": false,
|
||||
"syntax_highlighter": "GDScript"
|
||||
}
|
||||
@ -18,10 +18,10 @@ state={
|
||||
"bookmarks": PackedInt32Array(),
|
||||
"breakpoints": PackedInt32Array(),
|
||||
"column": 1,
|
||||
"folded_lines": Array[int]([]),
|
||||
"folded_lines": Array[int]([135, 175]),
|
||||
"h_scroll_position": 0,
|
||||
"row": 146,
|
||||
"scroll_position": 127.0,
|
||||
"row": 167,
|
||||
"scroll_position": 156.0,
|
||||
"selection": false,
|
||||
"syntax_highlighter": "GDScript"
|
||||
}
|
||||
|
@ -8,7 +8,7 @@ Anim={
|
||||
"grid_snap_active": false,
|
||||
"grid_step": Vector2(8, 8),
|
||||
"grid_visibility": 1,
|
||||
"ofs": Vector2(177.844, 235.53),
|
||||
"ofs": Vector2(115.061, 114.061),
|
||||
"primary_grid_steps": 8,
|
||||
"show_edit_locks": true,
|
||||
"show_guides": true,
|
||||
@ -32,7 +32,7 @@ Anim={
|
||||
"snap_rotation_step": 0.261799,
|
||||
"snap_scale": false,
|
||||
"snap_scale_step": 0.1,
|
||||
"zoom": 2.37841
|
||||
"zoom": 1.41421
|
||||
}
|
||||
3D={
|
||||
"fov": 70.01,
|
||||
@ -173,4 +173,4 @@ Anim={
|
||||
"zfar": 4000.01,
|
||||
"znear": 0.05
|
||||
}
|
||||
selected_nodes=Array[NodePath]([NodePath("/root/@EditorNode@17638/@Control@697/@Panel@698/@VBoxContainer@706/@HSplitContainer@709/@HSplitContainer@717/@HSplitContainer@725/@VBoxContainer@726/@VSplitContainer@728/@VSplitContainer@754/@VBoxContainer@755/@PanelContainer@800/MainScreen/@CanvasItemEditor@10090/@VSplitContainer@9915/@HSplitContainer@9917/@HSplitContainer@9919/@Control@9920/@SubViewportContainer@9921/@SubViewport@9922/World/CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/VSyncBox")])
|
||||
selected_nodes=Array[NodePath]([NodePath("/root/@EditorNode@17638/@Control@697/@Panel@698/@VBoxContainer@706/@HSplitContainer@709/@HSplitContainer@717/@HSplitContainer@725/@VBoxContainer@726/@VSplitContainer@728/@VSplitContainer@754/@VBoxContainer@755/@PanelContainer@800/MainScreen/@CanvasItemEditor@10090/@VSplitContainer@9915/@HSplitContainer@9917/@HSplitContainer@9919/@Control@9920/@SubViewportContainer@9921/@SubViewport@9922/World/CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/Reset")])
|
||||
|
@ -1,5 +1,5 @@
|
||||
[folding]
|
||||
|
||||
node_unfolds=[NodePath("environment"), PackedStringArray("Transform"), NodePath("DirectionalLight3D"), PackedStringArray("Shadow", "Light"), NodePath("CanvasLayer"), PackedStringArray("Layer", "Follow Viewport", "Transform"), NodePath("CanvasLayer/MainMenu"), PackedStringArray("Theme Overrides", "Theme Overrides/styles"), NodePath("CanvasLayer/MainMenu/MarginContainer"), PackedStringArray("Theme Overrides", "Theme Overrides/constants"), NodePath("CanvasLayer/MainMenu/MarginContainer/VBoxContainer"), PackedStringArray("Theme Overrides", "Theme Overrides/constants"), NodePath("CanvasLayer/HUD"), PackedStringArray("Mouse"), NodePath("CanvasLayer/HUD/TextureRect"), PackedStringArray("Layout", "Layout/Transform"), NodePath("CanvasLayer/HUD/HealthBar"), PackedStringArray("Theme Overrides", "Theme Overrides/styles", "theme_override_styles/fill", "theme_override_styles/background"), NodePath("MultiplayerSpawner"), PackedStringArray("_spawnable_scene_count_array")]
|
||||
node_unfolds=[NodePath("environment"), PackedStringArray("Transform"), NodePath("DirectionalLight3D"), PackedStringArray("Shadow", "Light"), NodePath("CanvasLayer"), PackedStringArray("Layer", "Follow Viewport", "Transform"), NodePath("CanvasLayer/MainMenu"), PackedStringArray("Theme Overrides", "Theme Overrides/styles"), NodePath("CanvasLayer/MainMenu/MarginContainer"), PackedStringArray("Theme Overrides", "Theme Overrides/constants"), NodePath("CanvasLayer/MainMenu/MarginContainer/VBoxContainer"), PackedStringArray("Theme Overrides", "Theme Overrides/constants"), NodePath("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/Reset"), PackedStringArray("Text Behavior", "Theme Overrides", "Theme Overrides/font_sizes"), NodePath("CanvasLayer/HUD"), PackedStringArray("Mouse"), NodePath("CanvasLayer/HUD/TextureRect"), PackedStringArray("Layout", "Layout/Transform"), NodePath("CanvasLayer/HUD/HealthBar"), PackedStringArray("Theme Overrides", "Theme Overrides/styles", "theme_override_styles/fill", "theme_override_styles/background"), NodePath("MultiplayerSpawner"), PackedStringArray("_spawnable_scene_count_array")]
|
||||
resource_unfolds=["res://Scenes/world.tscn::StyleBoxFlat_cdng2", PackedStringArray(), "res://Scenes/world.tscn::StyleBoxFlat_ufa2v", PackedStringArray()]
|
||||
nodes_folded=[NodePath("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/Hosting"), NodePath("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/Joining"), NodePath("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/BaseMenu"), NodePath("CanvasLayer/HUD"), NodePath("CanvasLayer/PauseMenu")]
|
||||
nodes_folded=[NodePath("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/Hosting"), NodePath("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/Joining"), NodePath("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/BaseMenu"), NodePath("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu"), NodePath("CanvasLayer/HUD"), NodePath("CanvasLayer/PauseMenu")]
|
||||
|
1
Saves/options.res
Normal file
1
Saves/options.res
Normal file
@ -0,0 +1 @@
|
||||
{"fov":75,"master_volume":100,"music_volume":100,"sensitivity":75,"soundFX_volume":100,"vsync":true}
|
@ -140,7 +140,6 @@ horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="BaseMenu" type="Control" parent="CanvasLayer/MainMenu/MarginContainer/VBoxContainer"]
|
||||
visible = false
|
||||
layout_mode = 2
|
||||
|
||||
[node name="Label2" type="Label" parent="CanvasLayer/MainMenu/MarginContainer/VBoxContainer/BaseMenu"]
|
||||
@ -269,6 +268,7 @@ grow_vertical = 0
|
||||
text = "Options"
|
||||
|
||||
[node name="OptionMenu" type="Control" parent="CanvasLayer/MainMenu/MarginContainer/VBoxContainer"]
|
||||
visible = false
|
||||
layout_mode = 2
|
||||
|
||||
[node name="OptionsTitle" type="Label" parent="CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu"]
|
||||
@ -507,7 +507,6 @@ offset_right = 84.0
|
||||
offset_bottom = 223.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
disabled = true
|
||||
text = "Apply"
|
||||
|
||||
[node name="VSyncBox" type="CheckBox" parent="CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu"]
|
||||
@ -519,6 +518,7 @@ offset_bottom = 189.0
|
||||
button_pressed = true
|
||||
|
||||
[node name="VSyncLabel" type="Label" parent="CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu"]
|
||||
layout_mode = 0
|
||||
offset_left = 7.0
|
||||
offset_top = 164.0
|
||||
offset_right = 129.0
|
||||
@ -526,6 +526,13 @@ offset_bottom = 190.0
|
||||
text = "VSync:"
|
||||
horizontal_alignment = 2
|
||||
|
||||
[node name="Reset" type="Button" parent="CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu"]
|
||||
layout_mode = 1
|
||||
offset_right = 83.0
|
||||
offset_bottom = 21.0
|
||||
theme_override_font_sizes/font_size = 9
|
||||
text = "Reset to Defaults"
|
||||
|
||||
[node name="HUD" type="Control" parent="CanvasLayer"]
|
||||
visible = false
|
||||
layout_mode = 3
|
||||
@ -630,8 +637,16 @@ spawn_path = NodePath("..")
|
||||
[connection signal="pressed" from="CanvasLayer/MainMenu/MarginContainer/VBoxContainer/BaseMenu/Join" to="." method="_on_join_pressed"]
|
||||
[connection signal="pressed" from="CanvasLayer/MainMenu/MarginContainer/VBoxContainer/BaseMenu/Host" to="." method="_on_host_pressed"]
|
||||
[connection signal="pressed" from="CanvasLayer/MainMenu/MarginContainer/VBoxContainer/BaseMenu/Button" to="." method="quit"]
|
||||
[connection signal="pressed" from="CanvasLayer/MainMenu/MarginContainer/VBoxContainer/BaseMenu/Options" to="." method="_on_options_pressed"]
|
||||
[connection signal="value_changed" from="CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/FOV" to="." method="_on_fov_value_changed"]
|
||||
[connection signal="value_changed" from="CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/Sensitivity" to="." method="_on_sensitivity_value_changed"]
|
||||
[connection signal="value_changed" from="CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/MasterVolume" to="." method="_on_master_volume_value_changed"]
|
||||
[connection signal="value_changed" from="CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/MusicVolume" to="." method="_on_music_volume_value_changed"]
|
||||
[connection signal="value_changed" from="CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/SoundFXVolume" to="." method="_on_sound_fx_volume_value_changed"]
|
||||
[connection signal="pressed" from="CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/Cancel" to="." method="_on_cancel_pressed"]
|
||||
[connection signal="pressed" from="CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/Apply" to="." method="_on_apply_pressed"]
|
||||
[connection signal="pressed" from="CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/VSyncBox" to="." method="_on_v_sync_box_pressed"]
|
||||
[connection signal="pressed" from="CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/Reset" to="." method="initSave"]
|
||||
[connection signal="pressed" from="CanvasLayer/PauseMenu/MarginContainer/VBoxContainer/Resume" to="." method="pause"]
|
||||
[connection signal="pressed" from="CanvasLayer/PauseMenu/MarginContainer/VBoxContainer/MainMenu" to="." method="_on_main_menu_pressed"]
|
||||
[connection signal="pressed" from="CanvasLayer/PauseMenu/MarginContainer/VBoxContainer/Quit" to="." method="quit"]
|
||||
|
@ -22,7 +22,7 @@ var paused: bool = false
|
||||
var ingame: bool = false
|
||||
var chimkin
|
||||
var local_peer_id
|
||||
var vsync: bool = true
|
||||
var settings
|
||||
|
||||
@export var spawnpoint: Vector3 = Vector3(0, 6.376, 0)
|
||||
|
||||
@ -31,6 +31,9 @@ func _unhandled_input(event):
|
||||
if ingame and Input.is_action_just_pressed("quit"):
|
||||
pause()
|
||||
|
||||
func _ready():
|
||||
loadSave()
|
||||
|
||||
func _on_join_pressed():
|
||||
baseMenu.hide()
|
||||
joinMenu.show()
|
||||
@ -116,7 +119,8 @@ func pause():
|
||||
|
||||
func _on_cancel_pressed():
|
||||
optionMenu.hide()
|
||||
mainMenu.show()
|
||||
baseMenu.show()
|
||||
updateOptions()
|
||||
|
||||
func playerDisconnect(peer_id):
|
||||
mainMenu.show()
|
||||
@ -129,24 +133,78 @@ func _on_main_menu_pressed():
|
||||
var player = get_node_or_null(str(local_peer_id))
|
||||
enet_peer.close()
|
||||
|
||||
func _on_v_sync_box_pressed():
|
||||
if vsync:
|
||||
DisplayServer.window_set_vsync_mode(DisplayServer.VSYNC_DISABLED)
|
||||
else:
|
||||
DisplayServer.window_set_vsync_mode(DisplayServer.VSYNC_ENABLED)
|
||||
vsync = !vsync
|
||||
|
||||
func save():
|
||||
var save_game = FileAccess.open(SAVE_FILE, FileAccess.WRITE)
|
||||
save_game.store_line(JSON.stringify({"vsync": vsync}))
|
||||
save_game.store_line(JSON.stringify(settings))
|
||||
save_game.close()
|
||||
|
||||
func loadSave():
|
||||
if not FileAccess.file_exists(SAVE_FILE):
|
||||
initSave()
|
||||
var save_game = FileAccess.open(SAVE_FILE, FileAccess.READ)
|
||||
var save_game = FileAccess.open(SAVE_FILE, FileAccess.WRITE)
|
||||
save_game.store_line(JSON.stringify(settings))
|
||||
save_game.close()
|
||||
else:
|
||||
var save_game = FileAccess.open(SAVE_FILE, FileAccess.READ)
|
||||
var json = JSON.new()
|
||||
json.parse(save_game.get_line())
|
||||
settings = json.get_data()
|
||||
save_game.close()
|
||||
if settings["vsync"]:
|
||||
DisplayServer.window_set_vsync_mode(DisplayServer.VSYNC_DISABLED)
|
||||
else:
|
||||
DisplayServer.window_set_vsync_mode(DisplayServer.VSYNC_ENABLED)
|
||||
updateOptions()
|
||||
|
||||
func updateOptions():
|
||||
get_node("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/FOV").value = settings["fov"]
|
||||
get_node("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/Sensitivity").value = settings["sensitivity"]
|
||||
get_node("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/MasterVolume").value = settings["master_volume"]
|
||||
get_node("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/MusicVolume").value = settings["music_volume"]
|
||||
get_node("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/SoundFXVolume").value = settings["soundFX_volume"]
|
||||
get_node("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/VSyncBox").button_pressed = settings["vsync"]
|
||||
|
||||
func initSave():
|
||||
var save_game = FileAccess.open(SAVE_FILE, FileAccess.WRITE)
|
||||
save_game.store_line(JSON.stringify({"vsync": true}))
|
||||
settings = {"fov": 75,
|
||||
"sensitivity": 75,
|
||||
"master_volume": 100,
|
||||
"music_volume": 100,
|
||||
"soundFX_volume": 100,
|
||||
"vsync": true}
|
||||
updateOptions()
|
||||
|
||||
func _on_apply_pressed():
|
||||
settings = {
|
||||
"fov": get_node("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/FOV").value,
|
||||
"sensitivity": get_node("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/Sensitivity").value,
|
||||
"master_volume": get_node("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/MasterVolume").value,
|
||||
"music_volume": get_node("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/MusicVolume").value,
|
||||
"soundFX_volume": get_node("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/SoundFXVolume").value,
|
||||
"vsync": get_node("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/VSyncBox").button_pressed
|
||||
}
|
||||
save()
|
||||
if settings["vsync"]:
|
||||
DisplayServer.window_set_vsync_mode(DisplayServer.VSYNC_DISABLED)
|
||||
else:
|
||||
DisplayServer.window_set_vsync_mode(DisplayServer.VSYNC_ENABLED)
|
||||
baseMenu.show()
|
||||
optionMenu.hide()
|
||||
|
||||
func _on_options_pressed():
|
||||
optionMenu.show()
|
||||
baseMenu.hide()
|
||||
|
||||
func _on_fov_value_changed(value):
|
||||
get_node("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/FOVNum").text = str(value)
|
||||
|
||||
func _on_sensitivity_value_changed(value):
|
||||
get_node("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/SensitivityNum").text = str(value)
|
||||
|
||||
func _on_master_volume_value_changed(value):
|
||||
get_node("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/MasterVolumeValue").text = str(value)
|
||||
|
||||
func _on_music_volume_value_changed(value):
|
||||
get_node("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/MusicVolumeNum").text = str(value)
|
||||
|
||||
func _on_sound_fx_volume_value_changed(value):
|
||||
get_node("CanvasLayer/MainMenu/MarginContainer/VBoxContainer/OptionMenu/SoundFXVolumeValue").text = str(value)
|
||||
|
Loading…
x
Reference in New Issue
Block a user