Added options menu in-game
parent
810801c4c6
commit
b07f1cadad
14
Game.gd
14
Game.gd
|
@ -19,6 +19,8 @@ var settingmap = {
|
||||||
var peer = NetworkedMultiplayerENet.new()
|
var peer = NetworkedMultiplayerENet.new()
|
||||||
var local_player = null setget set_local_player
|
var local_player = null setget set_local_player
|
||||||
|
|
||||||
|
onready var menu_stack = [$MenuContainer/MainMenu]
|
||||||
|
|
||||||
func set_local_player(player):
|
func set_local_player(player):
|
||||||
local_player = player
|
local_player = player
|
||||||
player.set_local_player()
|
player.set_local_player()
|
||||||
|
@ -64,7 +66,7 @@ func _input(event):
|
||||||
if event.is_action_pressed("ToggleMenu"):
|
if event.is_action_pressed("ToggleMenu"):
|
||||||
if GAME_MODE == "PLAYING" and not $MenuContainer.is_visible():
|
if GAME_MODE == "PLAYING" and not $MenuContainer.is_visible():
|
||||||
open_menus()
|
open_menus()
|
||||||
elif $MenuContainer/MainMenu.is_visible():
|
elif $MenuContainer/CharacterSelectScreen.is_visible():
|
||||||
close_menus()
|
close_menus()
|
||||||
else:
|
else:
|
||||||
# Find the back button
|
# Find the back button
|
||||||
|
@ -93,9 +95,16 @@ func close_menus():
|
||||||
Input.set_mouse_mode(Input.MOUSE_MODE_CAPTURED)
|
Input.set_mouse_mode(Input.MOUSE_MODE_CAPTURED)
|
||||||
$MenuContainer.hide()
|
$MenuContainer.hide()
|
||||||
|
|
||||||
func return_to_menu(type):
|
func return_to_menu(type=null):
|
||||||
|
if type == null:
|
||||||
|
menu_stack.pop_back()
|
||||||
|
type = menu_stack[-1].name
|
||||||
|
|
||||||
for menu in $MenuContainer.get_children():
|
for menu in $MenuContainer.get_children():
|
||||||
if menu.name == type:
|
if menu.name == type:
|
||||||
|
if type != null:
|
||||||
|
while menu_stack[-1].name != type:
|
||||||
|
menu_stack.pop_back()
|
||||||
menu.show()
|
menu.show()
|
||||||
else:
|
else:
|
||||||
menu.hide()
|
menu.hide()
|
||||||
|
@ -103,6 +112,7 @@ func return_to_menu(type):
|
||||||
func open_menu(type):
|
func open_menu(type):
|
||||||
for menu in $MenuContainer.get_children():
|
for menu in $MenuContainer.get_children():
|
||||||
if menu.name == type:
|
if menu.name == type:
|
||||||
|
menu_stack.append(menu)
|
||||||
menu.show()
|
menu.show()
|
||||||
else:
|
else:
|
||||||
menu.hide()
|
menu.hide()
|
||||||
|
|
|
@ -300,6 +300,7 @@ alignment = 1
|
||||||
[connection signal="pressed" from="MenuContainer/MainMenu/Disconnect" to="." method="free_client"]
|
[connection signal="pressed" from="MenuContainer/MainMenu/Disconnect" to="." method="free_client"]
|
||||||
[connection signal="pressed" from="MenuContainer/MainMenu/Options" to="." method="open_menu" binds= [ "OptionsMenu" ]]
|
[connection signal="pressed" from="MenuContainer/MainMenu/Options" to="." method="open_menu" binds= [ "OptionsMenu" ]]
|
||||||
[connection signal="pressed" from="MenuContainer/MainMenu/Quit" to="." method="quit"]
|
[connection signal="pressed" from="MenuContainer/MainMenu/Quit" to="." method="quit"]
|
||||||
|
[connection signal="pressed" from="MenuContainer/CharacterSelectScreen/CenterContainer/VBoxContainer/Options/OptionsButton" to="." method="open_menu" binds= [ "OptionsMenu" ]]
|
||||||
[connection signal="pressed" from="MenuContainer/CharacterSelectScreen/CenterContainer/VBoxContainer/Options/DisconnectButton" to="." method="free_client"]
|
[connection signal="pressed" from="MenuContainer/CharacterSelectScreen/CenterContainer/VBoxContainer/Options/DisconnectButton" to="." method="free_client"]
|
||||||
[connection signal="pressed" from="MenuContainer/ConnectMenu/Back" to="." method="return_to_menu" binds= [ "MainMenu" ]]
|
[connection signal="pressed" from="MenuContainer/ConnectMenu/Back" to="." method="return_to_menu" binds= [ "MainMenu" ]]
|
||||||
[connection signal="text_changed" from="MenuContainer/ConnectMenu/Destination/IPAdress" to="." method="set_ip"]
|
[connection signal="text_changed" from="MenuContainer/ConnectMenu/Destination/IPAdress" to="." method="set_ip"]
|
||||||
|
@ -309,7 +310,7 @@ alignment = 1
|
||||||
[connection signal="pressed" from="MenuContainer/ConnectMenu/Home" to="." method="join_home"]
|
[connection signal="pressed" from="MenuContainer/ConnectMenu/Home" to="." method="join_home"]
|
||||||
[connection signal="pressed" from="MenuContainer/ConnectMenu/Unfa" to="." method="join_unfa"]
|
[connection signal="pressed" from="MenuContainer/ConnectMenu/Unfa" to="." method="join_unfa"]
|
||||||
[connection signal="pressed" from="MenuContainer/ConnectMenu/Jan" to="." method="join_jan"]
|
[connection signal="pressed" from="MenuContainer/ConnectMenu/Jan" to="." method="join_jan"]
|
||||||
[connection signal="pressed" from="MenuContainer/OptionsMenu/Back" to="." method="return_to_menu" binds= [ "MainMenu" ]]
|
[connection signal="pressed" from="MenuContainer/OptionsMenu/Back" to="." method="return_to_menu"]
|
||||||
[connection signal="pressed" from="MenuContainer/OptionsMenu/Controls" to="." method="open_menu" binds= [ "ControlsMenu" ]]
|
[connection signal="pressed" from="MenuContainer/OptionsMenu/Controls" to="." method="open_menu" binds= [ "ControlsMenu" ]]
|
||||||
[connection signal="pressed" from="MenuContainer/OptionsMenu/Graphics" to="." method="open_menu" binds= [ "GraphicsMenu" ]]
|
[connection signal="pressed" from="MenuContainer/OptionsMenu/Graphics" to="." method="open_menu" binds= [ "GraphicsMenu" ]]
|
||||||
[connection signal="pressed" from="MenuContainer/ControlsMenu/Back" to="." method="return_to_menu" binds= [ "OptionsMenu" ]]
|
[connection signal="pressed" from="MenuContainer/ControlsMenu/Back" to="." method="return_to_menu" binds= [ "OptionsMenu" ]]
|
||||||
|
|
|
@ -3,6 +3,6 @@ extends HBoxContainer
|
||||||
var player setget set_player
|
var player setget set_player
|
||||||
var network_id
|
var network_id
|
||||||
|
|
||||||
func set_player(player):
|
func set_player(_player):
|
||||||
$Nickname.text = player.nickname
|
$Nickname.text = _player.nickname
|
||||||
network_id = player.name
|
network_id = _player.name
|
||||||
|
|
Reference in New Issue