| … | … | @@ -19,6 +19,10 @@ onready var settings_action_apply = settings_actions.get_node(@"Apply") |
| 19 | 19 | onready var settings_action_cancel = settings_actions.get_node(@"Cancel") |
| 20 | 20 | |
| 21 | 21 | onready var multiplayer_menu = ui.get_node(@"Multiplayer") |
| 22 | onready var multiplayer_LabelGWStatus = multiplayer_menu.get_node(@"HyperGatewayStatus").get_node(@"LabelGWStatus") |
| 23 | onready var multiplayer_StartGW = multiplayer_menu.get_node(@"Gateway").get_node(@"Start") |
| 24 | onready var multiplayer_StopGW = multiplayer_menu.get_node(@"Gateway").get_node(@"Stop") |
| 25 | onready var multiplayer_PortInput = multiplayer_menu.get_node(@"HyperGatewayPort").get_node(@"LineEdit") |
| 22 | 26 | |
| 23 | 27 | onready var gi_menu = settings_menu.get_node(@"GI") |
| 24 | 28 | onready var gi_high = gi_menu.get_node(@"High") |
| … | … | @@ -36,15 +40,40 @@ onready var bloom_high = bloom_menu.get_node(@"High") |
| 36 | 40 | onready var bloom_low = bloom_menu.get_node(@"Low") |
| 37 | 41 | onready var bloom_disabled = bloom_menu.get_node(@"Disabled") |
| 38 | 42 | |
| 43 | var hyperGatewayNode = null |
| 44 | var hyperGatewayURL : String = "" |
| 45 | var hyperGatewayPID : int = 0 |
| 46 | var hyperGatewayPort : int = 0 |
| 47 | |
| 48 | var hyperGWPortInputBackup : String = "" |
| 49 | |
| 39 | 50 | func _ready(): |
| 40 | | get_tree().set_screen_stretch(SceneTree.STRETCH_MODE_2D, SceneTree.STRETCH_ASPECT_KEEP, Vector2(1920, 1080)) |
| 51 | get_tree().set_screen_stretch(SceneTree.STRETCH_MODE_2D, SceneTree.STRETCH_ASPECT_KEEP, Vector2(1440, 810)) |
| 52 | Input.set_mouse_mode(Input.MOUSE_MODE_VISIBLE) |
| 53 | |
| 54 | func _getIsMenuShowing() -> bool: |
| 55 | return ui.visible |
| 41 | 56 | |
| 42 | 57 | func _on_quit_pressed(): |
| 43 | 58 | get_tree().quit() |
| 59 | |
| 60 | func hideUI(): |
| 61 | Input.set_mouse_mode(Input.MOUSE_MODE_CAPTURED) |
| 62 | ui.hide() |
| 63 | |
| 64 | func showUI(): |
| 65 | # resetUI() |
| 66 | ui.show() |
| 67 | Input.set_mouse_mode(Input.MOUSE_MODE_VISIBLE) |
| 68 | |
| 69 | func resetUI(): |
| 70 | settings_menu.hide() |
| 71 | multiplayer_menu.hide() |
| 72 | main.show() |
| 44 | 73 | |
| 45 | 74 | func _on_Resume_pressed(): |
| 46 | 75 | # Hide UI (for now) |
| 47 | | ui.hide() |
| 76 | hideUI() |
| 48 | 77 | |
| 49 | 78 | func _on_Quit_pressed(): |
| 50 | 79 | get_tree().quit() |
| … | … | @@ -77,10 +106,30 @@ func _on_Settings_pressed(): |
| 77 | 106 | bloom_low.pressed = true |
| 78 | 107 | elif Settings.bloom_quality == Settings.BloomQuality.DISABLED: |
| 79 | 108 | bloom_disabled.pressed = true |
| 80 | | |
| 109 | |
| 110 | func _UpdateHyperGatewayInfo(): |
| 111 | multiplayer_StartGW.disabled = true |
| 112 | multiplayer_StopGW.disabled = true |
| 113 | |
| 114 | if(hyperGatewayNode != null): |
| 115 | if(hyperGatewayNode is HyperGateway): |
| 116 | hyperGatewayPID = hyperGatewayNode.getGatewayPID() |
| 117 | hyperGatewayPort = hyperGatewayNode.getGatewayPort() |
| 118 | |
| 119 | if( hyperGatewayNode.getIsGatewayRunning() ): |
| 120 | multiplayer_StopGW.disabled = false |
| 121 | multiplayer_LabelGWStatus.text = "Running (PID " + str(hyperGatewayPID) + ") on Port " + str(hyperGatewayPort) |
| 122 | else: |
| 123 | multiplayer_StartGW.disabled = false |
| 124 | multiplayer_LabelGWStatus.text = "Not Running" |
| 81 | 125 | |
| 82 | 126 | func _on_Multiplayer_pressed(): |
| 83 | 127 | main.hide() |
| 128 | # Check for HyperGateway Node |
| 129 | if(hyperGatewayNode == null): |
| 130 | hyperGatewayNode = get_tree().get_current_scene().find_node("HyperGateway") |
| 131 | _UpdateHyperGatewayInfo() |
| 132 | |
| 84 | 133 | multiplayer_menu.show() |
| 85 | 134 | |
| 86 | 135 | func _on_Apply_pressed(): |
| … | … | @@ -130,3 +179,21 @@ func _on_Multiplayer_Apply_pressed(): |
| 130 | 179 | main.show() |
| 131 | 180 | # play_button.grab_focus() |
| 132 | 181 | multiplayer_menu.hide() |
| 182 | |
| 183 | |
| 184 | func _on_Start_pressed(): |
| 185 | hyperGatewayNode.start() |
| 186 | _UpdateHyperGatewayInfo() |
| 187 | |
| 188 | |
| 189 | func _on_Stop_pressed(): |
| 190 | hyperGatewayNode.stop() |
| 191 | multiplayer_PortInput |
| 192 | _UpdateHyperGatewayInfo() |
| 193 | |
| 194 | |
| 195 | func _on_HyperGWPort_LineEdit_text_changed(new_text : String): |
| 196 | if(new_text.length() < 1 or new_text.is_valid_integer()): |
| 197 | hyperGWPortInputBackup = new_text |
| 198 | else: |
| 199 | multiplayer_PortInput.text = hyperGWPortInputBackup |