feat: 实现IP起始部分的设置,并弃用了isServer变量

This commit is contained in:
2026-01-06 08:27:35 +08:00
parent 10e6d2d645
commit 90dd79bb15
5 changed files with 26 additions and 6 deletions
+20
View File
@@ -32,6 +32,26 @@ offset_bottom = 81.0
theme_override_fonts/font = ExtResource("2_6wm04") theme_override_fonts/font = ExtResource("2_6wm04")
theme_override_font_sizes/font_size = 24 theme_override_font_sizes/font_size = 24
[node name="IPBeginSetting" type="Node2D" parent="."]
position = Vector2(-1, 94)
[node name="IPBeginSetLabel" type="Label" parent="IPBeginSetting"]
offset_left = 45.0
offset_top = 28.0
offset_right = 193.0
offset_bottom = 90.0
theme_override_fonts/font = ExtResource("2_6wm04")
theme_override_font_sizes/font_size = 30
text = "自动识别IP地址的起始部分"
[node name="LineEdit" type="LineEdit" parent="IPBeginSetting"]
offset_left = 424.0
offset_top = 18.0
offset_right = 874.0
offset_bottom = 81.0
theme_override_fonts/font = ExtResource("2_6wm04")
theme_override_font_sizes/font_size = 24
[node name="SaveButton" type="Button" parent="."] [node name="SaveButton" type="Button" parent="."]
offset_left = 56.0 offset_left = 56.0
offset_top = 520.0 offset_top = 520.0
+1
View File
@@ -1,3 +1,4 @@
extends Node extends Node
var data_origin: String = "" var data_origin: String = ""
var ip_begin: String = "192.168."
+1 -4
View File
@@ -1,17 +1,14 @@
extends Node extends Node
var isServer: bool
# 基于低级 ENet 多人游戏 # 基于 ENet 多人游戏
func create_server(player_num: int) -> void: func create_server(player_num: int) -> void:
isServer = true
var peer = ENetMultiplayerPeer.new() var peer = ENetMultiplayerPeer.new()
peer.create_server(8989, player_num) peer.create_server(8989, player_num)
multiplayer.multiplayer_peer = peer multiplayer.multiplayer_peer = peer
func create_client(ip: String) -> void: func create_client(ip: String) -> void:
isServer = false
var peer = ENetMultiplayerPeer.new() var peer = ENetMultiplayerPeer.new()
peer.create_client(ip, 8989) peer.create_client(ip, 8989)
multiplayer.multiplayer_peer = peer multiplayer.multiplayer_peer = peer
+2 -2
View File
@@ -4,7 +4,7 @@ func _ready() -> void:
init() init()
func init() -> void: func init() -> void:
if MultiGame.isServer: if multiplayer.is_server():
$IsServerLabel.text = "房间运行中:您是房主" $IsServerLabel.text = "房间运行中:您是房主"
else: else:
$IsServerLabel.text = "房间运行中:您是房客" $IsServerLabel.text = "房间运行中:您是房客"
@@ -12,6 +12,6 @@ func init() -> void:
var addresses: PackedStringArray = IP.get_local_addresses() var addresses: PackedStringArray = IP.get_local_addresses()
var ipaddress: String = "" var ipaddress: String = ""
for address in addresses: for address in addresses:
if address.substr(0, 8) == "192.168.": if address.substr(0, GameManager.ip_begin.length()) == GameManager.ip_begin:
ipaddress = address ipaddress = address
$IPLabel.text = ipaddress $IPLabel.text = ipaddress
+2
View File
@@ -2,9 +2,11 @@ extends Node2D
func _ready() -> void: func _ready() -> void:
$DataSetting/LineEdit.text = GameManager.data_origin $DataSetting/LineEdit.text = GameManager.data_origin
$IPBeginSetting/LineEdit.text = GameManager.ip_begin
func _on_save_button_pressed() -> void: func _on_save_button_pressed() -> void:
GameManager.data_origin = $DataSetting/LineEdit.text GameManager.data_origin = $DataSetting/LineEdit.text
GameManager.ip_begin = $IPBeginSetting/LineEdit.text
SceneManager.goto_scene("main_menu") SceneManager.goto_scene("main_menu")