瀏覽代碼

Merge pull request #784 from dsnopek/fix-bomber-demo

Update the multiplayer_bomber demo to work with Godot 4.0-beta3
Fabio Alessandrelli 2 年之前
父節點
當前提交
6ca863ffb0

+ 1 - 0
networking/multiplayer_bomber/brickfloor.png.import

@@ -29,5 +29,6 @@ process/fix_alpha_border=true
 process/premult_alpha=false
 process/premult_alpha=false
 process/normal_map_invert_y=false
 process/normal_map_invert_y=false
 process/hdr_as_srgb=false
 process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
 process/size_limit=0
 process/size_limit=0
 detect_3d/compress_to=1
 detect_3d/compress_to=1

+ 1 - 0
networking/multiplayer_bomber/charwalk.png.import

@@ -29,5 +29,6 @@ process/fix_alpha_border=true
 process/premult_alpha=false
 process/premult_alpha=false
 process/normal_map_invert_y=false
 process/normal_map_invert_y=false
 process/hdr_as_srgb=false
 process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
 process/size_limit=0
 process/size_limit=0
 detect_3d/compress_to=1
 detect_3d/compress_to=1

+ 1 - 0
networking/multiplayer_bomber/explosion.png.import

@@ -29,5 +29,6 @@ process/fix_alpha_border=true
 process/premult_alpha=false
 process/premult_alpha=false
 process/normal_map_invert_y=false
 process/normal_map_invert_y=false
 process/hdr_as_srgb=false
 process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
 process/size_limit=0
 process/size_limit=0
 detect_3d/compress_to=1
 detect_3d/compress_to=1

+ 1 - 0
networking/multiplayer_bomber/icon.png.import

@@ -29,5 +29,6 @@ process/fix_alpha_border=true
 process/premult_alpha=false
 process/premult_alpha=false
 process/normal_map_invert_y=false
 process/normal_map_invert_y=false
 process/hdr_as_srgb=false
 process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
 process/size_limit=0
 process/size_limit=0
 detect_3d/compress_to=1
 detect_3d/compress_to=1

+ 25 - 1
networking/multiplayer_bomber/lobby.tscn

@@ -3,14 +3,20 @@
 [ext_resource type="Script" path="res://lobby.gd" id="1"]
 [ext_resource type="Script" path="res://lobby.gd" id="1"]
 
 
 [node name="Lobby" type="Control"]
 [node name="Lobby" type="Control"]
+layout_mode = 3
+anchors_preset = 15
 anchor_right = 1.0
 anchor_right = 1.0
 anchor_bottom = 1.0
 anchor_bottom = 1.0
+grow_horizontal = 2
+grow_vertical = 2
 size_flags_horizontal = 2
 size_flags_horizontal = 2
 size_flags_vertical = 2
 size_flags_vertical = 2
-script = ExtResource( "1" )
+script = ExtResource("1")
 
 
 [node name="Players" type="Panel" parent="."]
 [node name="Players" type="Panel" parent="."]
 visible = false
 visible = false
+layout_mode = 1
+anchors_preset = 8
 anchor_left = 0.5
 anchor_left = 0.5
 anchor_top = 0.5
 anchor_top = 0.5
 anchor_right = 0.5
 anchor_right = 0.5
@@ -19,10 +25,13 @@ offset_left = -126.0
 offset_top = -177.5
 offset_top = -177.5
 offset_right = 126.0
 offset_right = 126.0
 offset_bottom = 177.5
 offset_bottom = 177.5
+grow_horizontal = 2
+grow_vertical = 2
 size_flags_horizontal = 2
 size_flags_horizontal = 2
 size_flags_vertical = 2
 size_flags_vertical = 2
 
 
 [node name="Label" type="Label" parent="Players"]
 [node name="Label" type="Label" parent="Players"]
+layout_mode = 0
 offset_left = 26.0
 offset_left = 26.0
 offset_top = 18.0
 offset_top = 18.0
 offset_right = 142.0
 offset_right = 142.0
@@ -32,6 +41,7 @@ size_flags_vertical = 0
 text = "Awaiting Players..."
 text = "Awaiting Players..."
 
 
 [node name="Start" type="Button" parent="Players"]
 [node name="Start" type="Button" parent="Players"]
+layout_mode = 0
 offset_left = 68.0
 offset_left = 68.0
 offset_top = 307.0
 offset_top = 307.0
 offset_right = 193.0
 offset_right = 193.0
@@ -41,6 +51,7 @@ size_flags_vertical = 2
 text = "START!"
 text = "START!"
 
 
 [node name="List" type="ItemList" parent="Players"]
 [node name="List" type="ItemList" parent="Players"]
+layout_mode = 0
 offset_left = 25.0
 offset_left = 25.0
 offset_top = 37.0
 offset_top = 37.0
 offset_right = 229.0
 offset_right = 229.0
@@ -49,6 +60,7 @@ size_flags_horizontal = 2
 size_flags_vertical = 2
 size_flags_vertical = 2
 
 
 [node name="PortForward" type="Label" parent="Players"]
 [node name="PortForward" type="Label" parent="Players"]
+layout_mode = 0
 offset_left = -124.0
 offset_left = -124.0
 offset_top = 375.0
 offset_top = 375.0
 offset_right = 128.0
 offset_right = 128.0
@@ -59,6 +71,7 @@ make sure the port 10567 in UDP
 is forwarded on your router."
 is forwarded on your router."
 
 
 [node name="FindPublicIP" type="LinkButton" parent="Players"]
 [node name="FindPublicIP" type="LinkButton" parent="Players"]
+layout_mode = 0
 offset_left = 168.0
 offset_left = 168.0
 offset_top = 393.5
 offset_top = 393.5
 offset_right = 341.0
 offset_right = 341.0
@@ -66,6 +79,8 @@ offset_bottom = 407.5
 text = "Find your public IP address"
 text = "Find your public IP address"
 
 
 [node name="Connect" type="Panel" parent="."]
 [node name="Connect" type="Panel" parent="."]
+layout_mode = 1
+anchors_preset = 8
 anchor_left = 0.5
 anchor_left = 0.5
 anchor_top = 0.5
 anchor_top = 0.5
 anchor_right = 0.5
 anchor_right = 0.5
@@ -74,10 +89,13 @@ offset_left = -138.5
 offset_top = -83.5
 offset_top = -83.5
 offset_right = 138.5
 offset_right = 138.5
 offset_bottom = 83.5
 offset_bottom = 83.5
+grow_horizontal = 2
+grow_vertical = 2
 size_flags_horizontal = 2
 size_flags_horizontal = 2
 size_flags_vertical = 2
 size_flags_vertical = 2
 
 
 [node name="NameLabel" type="Label" parent="Connect"]
 [node name="NameLabel" type="Label" parent="Connect"]
+layout_mode = 0
 offset_left = 14.0
 offset_left = 14.0
 offset_top = 11.0
 offset_top = 11.0
 offset_right = 56.0
 offset_right = 56.0
@@ -87,6 +105,7 @@ size_flags_vertical = 0
 text = "Name:"
 text = "Name:"
 
 
 [node name="Name" type="LineEdit" parent="Connect"]
 [node name="Name" type="LineEdit" parent="Connect"]
+layout_mode = 0
 offset_left = 17.0
 offset_left = 17.0
 offset_top = 30.0
 offset_top = 30.0
 offset_right = 173.0
 offset_right = 173.0
@@ -96,6 +115,7 @@ size_flags_vertical = 2
 text = "The Warrior"
 text = "The Warrior"
 
 
 [node name="IPLabel" type="Label" parent="Connect"]
 [node name="IPLabel" type="Label" parent="Connect"]
+layout_mode = 0
 offset_left = 15.0
 offset_left = 15.0
 offset_top = 66.0
 offset_top = 66.0
 offset_right = 57.0
 offset_right = 57.0
@@ -106,6 +126,7 @@ theme_override_font_sizes/font_size = 16
 text = "IP:"
 text = "IP:"
 
 
 [node name="IPAddress" type="LineEdit" parent="Connect"]
 [node name="IPAddress" type="LineEdit" parent="Connect"]
+layout_mode = 0
 offset_left = 17.0
 offset_left = 17.0
 offset_top = 85.0
 offset_top = 85.0
 offset_right = 173.0
 offset_right = 173.0
@@ -115,6 +136,7 @@ size_flags_vertical = 2
 text = "127.0.0.1"
 text = "127.0.0.1"
 
 
 [node name="Host" type="Button" parent="Connect"]
 [node name="Host" type="Button" parent="Connect"]
+layout_mode = 0
 offset_left = 181.0
 offset_left = 181.0
 offset_top = 31.0
 offset_top = 31.0
 offset_right = 246.0
 offset_right = 246.0
@@ -124,6 +146,7 @@ size_flags_vertical = 2
 text = "Host"
 text = "Host"
 
 
 [node name="Join" type="Button" parent="Connect"]
 [node name="Join" type="Button" parent="Connect"]
+layout_mode = 0
 offset_left = 181.0
 offset_left = 181.0
 offset_top = 87.0
 offset_top = 87.0
 offset_right = 246.0
 offset_right = 246.0
@@ -133,6 +156,7 @@ size_flags_vertical = 2
 text = "Join"
 text = "Join"
 
 
 [node name="ErrorLabel" type="Label" parent="Connect"]
 [node name="ErrorLabel" type="Label" parent="Connect"]
+layout_mode = 0
 offset_left = 15.0
 offset_left = 15.0
 offset_top = 125.0
 offset_top = 125.0
 offset_right = 257.0
 offset_right = 257.0

+ 12 - 13
networking/multiplayer_bomber/montserrat.otf.import

@@ -1,8 +1,8 @@
 [remap]
 [remap]
 
 
 importer="font_data_dynamic"
 importer="font_data_dynamic"
-type="FontData"
-uid="uid://dksjmw4cy83s4"
+type="FontFile"
+uid="uid://knb8u535cfkw"
 path="res://.godot/imported/montserrat.otf-0d875bde8933edfaf65407b0d9da84e5.fontdata"
 path="res://.godot/imported/montserrat.otf-0d875bde8933edfaf65407b0d9da84e5.fontdata"
 
 
 [deps]
 [deps]
@@ -12,22 +12,21 @@ dest_files=["res://.godot/imported/montserrat.otf-0d875bde8933edfaf65407b0d9da84
 
 
 [params]
 [params]
 
 
-antialiased=true
+Rendering=null
+antialiasing=1
+generate_mipmaps=false
 multichannel_signed_distance_field=false
 multichannel_signed_distance_field=false
 msdf_pixel_range=8
 msdf_pixel_range=8
 msdf_size=48
 msdf_size=48
 force_autohinter=false
 force_autohinter=false
 hinting=1
 hinting=1
 subpixel_positioning=1
 subpixel_positioning=1
-embolden=0.0
-transform=Transform2D(1, 0, 0, 1, 0, 0)
 oversampling=0.0
 oversampling=0.0
+Fallbacks=null
+fallbacks=[]
+Compress=null
 compress=true
 compress=true
-opentype_feature_overrides={}
-preload/char_ranges=PackedStringArray()
-preload/glyph_ranges=PackedStringArray()
-preload/configurations=PackedStringArray()
-support_overrides/language_enabled=PackedStringArray()
-support_overrides/language_disabled=PackedStringArray()
-support_overrides/script_enabled=PackedStringArray()
-support_overrides/script_disabled=PackedStringArray()
+preload=[]
+language_support={}
+script_support={}
+opentype_features={}

+ 22 - 20
networking/multiplayer_bomber/player.tscn

@@ -2,7 +2,7 @@
 
 
 [ext_resource type="Script" path="res://player.gd" id="1"]
 [ext_resource type="Script" path="res://player.gd" id="1"]
 [ext_resource type="Texture2D" uid="uid://bsqovikudjr0q" path="res://charwalk.png" id="2"]
 [ext_resource type="Texture2D" uid="uid://bsqovikudjr0q" path="res://charwalk.png" id="2"]
-[ext_resource type="FontData" uid="uid://dksjmw4cy83s4" path="res://montserrat.otf" id="3"]
+[ext_resource type="FontFile" uid="uid://knb8u535cfkw" path="res://montserrat.otf" id="3"]
 [ext_resource type="Script" path="res://player_controls.gd" id="4_k1vfr"]
 [ext_resource type="Script" path="res://player_controls.gd" id="4_k1vfr"]
 
 
 [sub_resource type="CircleShape2D" id="1"]
 [sub_resource type="CircleShape2D" id="1"]
@@ -132,10 +132,17 @@ tracks/0/keys = {
 "values": [2, 6, 10, 14]
 "values": [2, 6, 10, 14]
 }
 }
 
 
-[sub_resource type="Font" id="8"]
-data/0 = ExtResource( "3" )
+[sub_resource type="AnimationLibrary" id="AnimationLibrary_yb83i"]
+_data = {
+"standing": SubResource("2"),
+"stunned": SubResource("3"),
+"walk_down": SubResource("4"),
+"walk_left": SubResource("5"),
+"walk_right": SubResource("6"),
+"walk_up": SubResource("7")
+}
 
 
-[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_xm6wv"]
+[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_sh64w"]
 properties/0/path = NodePath(".:synced_position")
 properties/0/path = NodePath(".:synced_position")
 properties/0/spawn = true
 properties/0/spawn = true
 properties/0/sync = true
 properties/0/sync = true
@@ -143,7 +150,7 @@ properties/1/path = NodePath("label:text")
 properties/1/spawn = true
 properties/1/spawn = true
 properties/1/sync = false
 properties/1/sync = false
 
 
-[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_kkxsa"]
+[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_w53uu"]
 properties/0/path = NodePath(".:motion")
 properties/0/path = NodePath(".:motion")
 properties/0/spawn = true
 properties/0/spawn = true
 properties/0/sync = true
 properties/0/sync = true
@@ -153,26 +160,23 @@ properties/1/sync = true
 
 
 [node name="player" type="CharacterBody2D"]
 [node name="player" type="CharacterBody2D"]
 motion_mode = 1
 motion_mode = 1
-script = ExtResource( "1" )
+script = ExtResource("1")
 
 
 [node name="sprite" type="Sprite2D" parent="."]
 [node name="sprite" type="Sprite2D" parent="."]
 position = Vector2(0.0750351, 6.23615)
 position = Vector2(0.0750351, 6.23615)
 rotation = -6.28319
 rotation = -6.28319
-texture = ExtResource( "2" )
+texture = ExtResource("2")
 offset = Vector2(-0.0750351, -6.23615)
 offset = Vector2(-0.0750351, -6.23615)
 hframes = 4
 hframes = 4
 vframes = 4
 vframes = 4
 
 
 [node name="shape" type="CollisionShape2D" parent="."]
 [node name="shape" type="CollisionShape2D" parent="."]
-shape = SubResource( "1" )
+shape = SubResource("1")
 
 
 [node name="anim" type="AnimationPlayer" parent="."]
 [node name="anim" type="AnimationPlayer" parent="."]
-anims/standing = SubResource( "2" )
-anims/stunned = SubResource( "3" )
-anims/walk_down = SubResource( "4" )
-anims/walk_left = SubResource( "5" )
-anims/walk_right = SubResource( "6" )
-anims/walk_up = SubResource( "7" )
+libraries = {
+"": SubResource("AnimationLibrary_yb83i")
+}
 
 
 [node name="label" type="Label" parent="."]
 [node name="label" type="Label" parent="."]
 offset_left = -82.0
 offset_left = -82.0
@@ -181,18 +185,16 @@ offset_right = 85.0
 offset_bottom = -14.0
 offset_bottom = -14.0
 size_flags_horizontal = 2
 size_flags_horizontal = 2
 size_flags_vertical = 0
 size_flags_vertical = 0
-theme_override_fonts/font = SubResource( "8" )
+theme_override_fonts/font = ExtResource("3")
 theme_override_font_sizes/font_size = 16
 theme_override_font_sizes/font_size = 16
 text = "Player 1"
 text = "Player 1"
 horizontal_alignment = 1
 horizontal_alignment = 1
 
 
 [node name="MultiplayerSynchronizer" type="MultiplayerSynchronizer" parent="."]
 [node name="MultiplayerSynchronizer" type="MultiplayerSynchronizer" parent="."]
-root_path = NodePath("..")
-resource = SubResource( "SceneReplicationConfig_xm6wv" )
+replication_config = SubResource("SceneReplicationConfig_sh64w")
 
 
 [node name="Inputs" type="Node" parent="."]
 [node name="Inputs" type="Node" parent="."]
-script = ExtResource( "4_k1vfr" )
+script = ExtResource("4_k1vfr")
 
 
 [node name="InputsSync" type="MultiplayerSynchronizer" parent="Inputs"]
 [node name="InputsSync" type="MultiplayerSynchronizer" parent="Inputs"]
-root_path = NodePath("..")
-resource = SubResource( "SceneReplicationConfig_kkxsa" )
+replication_config = SubResource("SceneReplicationConfig_w53uu")

+ 11 - 11
networking/multiplayer_bomber/project.godot

@@ -15,8 +15,8 @@ config/description="A multiplayer implementation of the classical bomberman game
 One of the players should press 'host', while the other
 One of the players should press 'host', while the other
 should type in his address and press 'play'."
 should type in his address and press 'play'."
 run/main_scene="res://lobby.tscn"
 run/main_scene="res://lobby.tscn"
-config/icon="res://icon.png"
 config/features=PackedStringArray("4.0")
 config/features=PackedStringArray("4.0")
+config/icon="res://icon.png"
 
 
 [autoload]
 [autoload]
 
 
@@ -49,42 +49,42 @@ gen_mipmaps=false
 
 
 move_down={
 move_down={
 "deadzone": 0.5,
 "deadzone": 0.5,
-"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":83,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
-, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":16777234,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
+"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":83,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
+, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":16777234,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
 , Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":1,"axis_value":1.0,"script":null)
 , Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":1,"axis_value":1.0,"script":null)
 , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":13,"pressure":0.0,"pressed":false,"script":null)
 , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":13,"pressure":0.0,"pressed":false,"script":null)
 ]
 ]
 }
 }
 move_left={
 move_left={
 "deadzone": 0.5,
 "deadzone": 0.5,
-"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":65,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
-, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":16777231,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
+"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":65,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
+, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":16777231,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
 , Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":0,"axis_value":-1.0,"script":null)
 , Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":0,"axis_value":-1.0,"script":null)
 , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":14,"pressure":0.0,"pressed":false,"script":null)
 , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":14,"pressure":0.0,"pressed":false,"script":null)
 ]
 ]
 }
 }
 move_right={
 move_right={
 "deadzone": 0.5,
 "deadzone": 0.5,
-"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":68,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
-, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":16777233,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
+"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":68,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
+, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":16777233,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
 , Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":0,"axis_value":1.0,"script":null)
 , Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":0,"axis_value":1.0,"script":null)
 , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":15,"pressure":0.0,"pressed":false,"script":null)
 , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":15,"pressure":0.0,"pressed":false,"script":null)
 ]
 ]
 }
 }
 move_up={
 move_up={
 "deadzone": 0.5,
 "deadzone": 0.5,
-"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":87,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
-, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":16777232,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
+"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":87,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
+, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":16777232,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
 , Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":1,"axis_value":-1.0,"script":null)
 , Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":1,"axis_value":-1.0,"script":null)
 , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":12,"pressure":0.0,"pressed":false,"script":null)
 , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":12,"pressure":0.0,"pressed":false,"script":null)
 ]
 ]
 }
 }
 set_bomb={
 set_bomb={
 "deadzone": 0.5,
 "deadzone": 0.5,
-"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":32,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
+"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":32,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
 , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":0,"pressure":0.0,"pressed":false,"script":null)
 , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":0,"pressure":0.0,"pressed":false,"script":null)
 , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":1,"pressure":0.0,"pressed":false,"script":null)
 , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":1,"pressure":0.0,"pressed":false,"script":null)
-, Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":1,"pressed":false,"double_click":false,"script":null)
+, Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":1,"pressed":false,"double_click":false,"script":null)
 ]
 ]
 }
 }
 
 

+ 12 - 5
networking/multiplayer_bomber/rock.tscn

@@ -1,4 +1,4 @@
-[gd_scene load_steps=5 format=3 uid="uid://bao3yernlglws"]
+[gd_scene load_steps=6 format=3 uid="uid://bao3yernlglws"]
 
 
 [ext_resource type="Script" path="res://rock.gd" id="1"]
 [ext_resource type="Script" path="res://rock.gd" id="1"]
 [ext_resource type="Texture2D" uid="uid://bdomqql6y50po" path="res://brickfloor.png" id="2"]
 [ext_resource type="Texture2D" uid="uid://bdomqql6y50po" path="res://brickfloor.png" id="2"]
@@ -35,17 +35,24 @@ tracks/1/keys = {
 "values": [false]
 "values": [false]
 }
 }
 
 
+[sub_resource type="AnimationLibrary" id="AnimationLibrary_6pqaw"]
+_data = {
+"explode": SubResource("2")
+}
+
 [node name="Rock" type="CharacterBody2D"]
 [node name="Rock" type="CharacterBody2D"]
 motion_mode = 1
 motion_mode = 1
-script = ExtResource( "1" )
+script = ExtResource("1")
 
 
 [node name="Sprite" type="Sprite2D" parent="."]
 [node name="Sprite" type="Sprite2D" parent="."]
-texture = ExtResource( "2" )
+texture = ExtResource("2")
 region_enabled = true
 region_enabled = true
 region_rect = Rect2(96, 0, 48, 48)
 region_rect = Rect2(96, 0, 48, 48)
 
 
 [node name="Shape" type="CollisionShape2D" parent="."]
 [node name="Shape" type="CollisionShape2D" parent="."]
-shape = SubResource( "1" )
+shape = SubResource("1")
 
 
 [node name="AnimationPlayer" type="AnimationPlayer" parent="."]
 [node name="AnimationPlayer" type="AnimationPlayer" parent="."]
-anims/explode = SubResource( "2" )
+libraries = {
+"": SubResource("AnimationLibrary_6pqaw")
+}

+ 1 - 0
networking/multiplayer_bomber/rock_bit.png.import

@@ -29,5 +29,6 @@ process/fix_alpha_border=true
 process/premult_alpha=false
 process/premult_alpha=false
 process/normal_map_invert_y=false
 process/normal_map_invert_y=false
 process/hdr_as_srgb=false
 process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
 process/size_limit=0
 process/size_limit=0
 detect_3d/compress_to=1
 detect_3d/compress_to=1

+ 1 - 2
networking/multiplayer_bomber/score.gd

@@ -28,8 +28,7 @@ func add_player(id, new_player_name):
 	l.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER
 	l.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER
 	l.set_text(new_player_name + "\n" + "0")
 	l.set_text(new_player_name + "\n" + "0")
 	l.set_h_size_flags(SIZE_EXPAND_FILL)
 	l.set_h_size_flags(SIZE_EXPAND_FILL)
-	var font = Font.new()
-	font.add_data(preload("res://montserrat.otf"))
+	var font = preload("res://montserrat.otf")
 	l.set("custom_fonts/font", font)
 	l.set("custom_fonts/font", font)
 	l.set("custom_font_size/font_size", 18)
 	l.set("custom_font_size/font_size", 18)
 	add_child(l)
 	add_child(l)

+ 3 - 3
networking/multiplayer_bomber/tile_scene.tscn

@@ -9,15 +9,15 @@ size = Vector2(48, 48)
 
 
 [node name="Wall" type="Sprite2D" parent="."]
 [node name="Wall" type="Sprite2D" parent="."]
 position = Vector2(24, 24)
 position = Vector2(24, 24)
-texture = ExtResource( "1" )
+texture = ExtResource("1")
 region_rect = Rect2(0, 0, 48, 48)
 region_rect = Rect2(0, 0, 48, 48)
 
 
 [node name="StaticBody2D" type="StaticBody2D" parent="Wall"]
 [node name="StaticBody2D" type="StaticBody2D" parent="Wall"]
 
 
 [node name="CollisionShape2D" type="CollisionShape2D" parent="Wall/StaticBody2D"]
 [node name="CollisionShape2D" type="CollisionShape2D" parent="Wall/StaticBody2D"]
-shape = SubResource( "1" )
+shape = SubResource("1")
 
 
 [node name="Floor" type="Sprite2D" parent="."]
 [node name="Floor" type="Sprite2D" parent="."]
 position = Vector2(72, 24)
 position = Vector2(72, 24)
-texture = ExtResource( "1" )
+texture = ExtResource("1")
 region_rect = Rect2(48, 0, 48, 48)
 region_rect = Rect2(48, 0, 48, 48)

+ 2 - 2
networking/multiplayer_bomber/tileset.tres

@@ -3,7 +3,7 @@
 [ext_resource type="Texture2D" uid="uid://bdomqql6y50po" path="res://brickfloor.png" id="1"]
 [ext_resource type="Texture2D" uid="uid://bdomqql6y50po" path="res://brickfloor.png" id="1"]
 
 
 [sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_qhkfp"]
 [sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_qhkfp"]
-texture = ExtResource( "1" )
+texture = ExtResource("1")
 texture_region_size = Vector2i(48, 48)
 texture_region_size = Vector2i(48, 48)
 0:0/0 = 0
 0:0/0 = 0
 0:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
 0:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
@@ -16,4 +16,4 @@ texture_region_size = Vector2i(48, 48)
 [resource]
 [resource]
 tile_size = Vector2i(48, 48)
 tile_size = Vector2i(48, 48)
 physics_layer_0/collision_layer = 1
 physics_layer_0/collision_layer = 1
-sources/0 = SubResource( "TileSetAtlasSource_qhkfp" )
+sources/0 = SubResource("TileSetAtlasSource_qhkfp")

文件差異過大導致無法顯示
+ 3 - 7
networking/multiplayer_bomber/world.tscn


部分文件因文件數量過多而無法顯示