From 1c500ef828222e40abe964945b8d915447f9a351 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Thu, 11 Nov 2021 18:29:14 +0200 Subject: [PATCH 01/10] commit --- project.godot | 4 --- .../player_handlers/player_body_handler.gd | 5 ++-- .../assets/scripts/server_handlers/global.gd | 8 +++++ .../server_handlers/trinity_site_level.gd | 11 ++++++- source/entities/player/player_node.tscn | 30 +++++++++---------- .../trinity_site/trinity_site_level.tscn | 18 ++++++++++- 6 files changed, 53 insertions(+), 23 deletions(-) diff --git a/project.godot b/project.godot index 0544c5c..64ea969 100644 --- a/project.godot +++ b/project.godot @@ -20,10 +20,6 @@ Network="*res://source/assets/scripts/server_handlers/network_processors/network Global="*res://source/assets/scripts/server_handlers/global.gd" PersistentNodes="*res://source/scenes/OVERLAY/elements/persistent_nodes.tscn" -[debug] - -settings/stdout/print_fps=true - [display] window/size/width=1920 diff --git a/source/assets/scripts/player_handlers/player_body_handler.gd b/source/assets/scripts/player_handlers/player_body_handler.gd index 8fad253..9f26d95 100644 --- a/source/assets/scripts/player_handlers/player_body_handler.gd +++ b/source/assets/scripts/player_handlers/player_body_handler.gd @@ -6,7 +6,6 @@ var trajectory:String = 'line' var trajectory_line = 'line' var bullet -var player_bullet = load("res://source/entities/shooting/Line_Trajectory/Line_Bullet.tscn") var username_text = load("res://source/scenes/OVERLAY/elements/username_text.tscn") var username setget username_set var username_text_instance = null @@ -85,6 +84,7 @@ var particleTexture = ImageTexture.new() var particleImage = Image.new() func _ready(): + weaponPositionalOffset = Vector2(-$"weaponHolder/Player-character-theme-gun-na3".texture.get_width() * $"weaponHolder/Player-character-theme-gun-na3".scale.x / 2,-$"weaponHolder/Player-character-theme-gun-na3".texture.get_height() * $"weaponHolder/Player-character-theme-gun-na3".scale.y / 2) + Vector2(-$weaponHolder.get_shape().get_radius(), 0) $"weaponHolder/Player-character-theme-gun".position = weaponPositionalOffset @@ -142,6 +142,8 @@ func process_rotation(): func _process(delta: float) -> void: +# print(OS.get_time()) + print(Global.time_output()) $"weaponHolder/Player-character-theme-gun".play(theme) particleImage.load("res://source/assets/sprites/character/player/theme/" + theme + "/na/Player-character-theme-particle-"+theme+".png") particleTexture.create_from_image(particleImage) @@ -256,7 +258,6 @@ func _physics_process(delta) -> void: else: rotation = lerp_angle(rotation, puppet_rotation, delta * 8) - #rotation = puppet_rotation $"weaponHolder/Player-character-theme-gun".position = puppet_weapon_position weaponAngle = puppet_weapon_angle direction = puppet_direction diff --git a/source/assets/scripts/server_handlers/global.gd b/source/assets/scripts/server_handlers/global.gd index 9a35339..a6fd8cf 100644 --- a/source/assets/scripts/server_handlers/global.gd +++ b/source/assets/scripts/server_handlers/global.gd @@ -15,3 +15,11 @@ func instance_node(node: Object, parent: Object) -> Object: var node_instance = node.instance() parent.add_child(node_instance) return node_instance + +var time + +func time_input(d): + time = d + +func time_output(): + return time diff --git a/source/assets/scripts/server_handlers/trinity_site_level.gd b/source/assets/scripts/server_handlers/trinity_site_level.gd index e9e25a1..00ac16f 100644 --- a/source/assets/scripts/server_handlers/trinity_site_level.gd +++ b/source/assets/scripts/server_handlers/trinity_site_level.gd @@ -2,7 +2,7 @@ extends Node2D var current_spawn_location_instance_number = 1 var current_player_location_instance_number = null - +var time = 20 func _ready() -> void: get_tree().connect("network_peer_disconnected", self, "_player_disconnected") @@ -24,3 +24,12 @@ func _player_disconnected(id) -> void: if PersistentNodes.has_node(str(id)): PersistentNodes.get_node(str(id)).username_text_instance.queue_free() PersistentNodes.get_node(str(id)).queue_free() + + +func _on_timer_timeout(): + time -= 1 + + +func _process(delta): + Global.time_input(time) + $timer.text = str(time) diff --git a/source/entities/player/player_node.tscn b/source/entities/player/player_node.tscn index 8a06688..0448643 100644 --- a/source/entities/player/player_node.tscn +++ b/source/entities/player/player_node.tscn @@ -173,6 +173,16 @@ [sub_resource type="SpriteFrames" id=2] animations = [ { +"frames": [ ExtResource( 70 ), ExtResource( 49 ), ExtResource( 74 ), ExtResource( 75 ), ExtResource( 28 ), ExtResource( 52 ), ExtResource( 53 ), ExtResource( 55 ), ExtResource( 150 ), ExtResource( 156 ), ExtResource( 138 ), ExtResource( 161 ), ExtResource( 145 ), ExtResource( 148 ), ExtResource( 147 ), ExtResource( 133 ), ExtResource( 164 ), ExtResource( 134 ), ExtResource( 152 ), ExtResource( 160 ) ], +"loop": true, +"name": "move-speed-left-03", +"speed": 35.0 +}, { +"frames": [ ExtResource( 167 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 126 ), ExtResource( 90 ), ExtResource( 89 ), ExtResource( 97 ), ExtResource( 88 ), ExtResource( 98 ), ExtResource( 91 ), ExtResource( 125 ), ExtResource( 105 ), ExtResource( 82 ), ExtResource( 84 ), ExtResource( 92 ), ExtResource( 103 ), ExtResource( 122 ), ExtResource( 130 ), ExtResource( 104 ), ExtResource( 116 ) ], +"loop": true, +"name": "boost-speed-right-02", +"speed": 50.0 +}, { "frames": [ ExtResource( 5 ), ExtResource( 42 ), ExtResource( 35 ), ExtResource( 24 ), ExtResource( 8 ), ExtResource( 31 ), ExtResource( 30 ), ExtResource( 38 ), ExtResource( 10 ), ExtResource( 43 ), ExtResource( 41 ), ExtResource( 33 ), ExtResource( 44 ), ExtResource( 19 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 36 ), ExtResource( 12 ), ExtResource( 45 ), ExtResource( 21 ) ], "loop": true, "name": "boost-speed-right-01", @@ -267,16 +277,6 @@ animations = [ { "loop": true, "name": "move-speed-right-04", "speed": 35.0 -}, { -"frames": [ ExtResource( 70 ), ExtResource( 49 ), ExtResource( 74 ), ExtResource( 75 ), ExtResource( 28 ), ExtResource( 52 ), ExtResource( 53 ), ExtResource( 55 ), ExtResource( 150 ), ExtResource( 156 ), ExtResource( 138 ), ExtResource( 161 ), ExtResource( 145 ), ExtResource( 148 ), ExtResource( 147 ), ExtResource( 133 ), ExtResource( 164 ), ExtResource( 134 ), ExtResource( 152 ), ExtResource( 160 ) ], -"loop": true, -"name": "move-speed-left-03", -"speed": 35.0 -}, { -"frames": [ ExtResource( 167 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 126 ), ExtResource( 90 ), ExtResource( 89 ), ExtResource( 97 ), ExtResource( 88 ), ExtResource( 98 ), ExtResource( 91 ), ExtResource( 125 ), ExtResource( 105 ), ExtResource( 82 ), ExtResource( 84 ), ExtResource( 92 ), ExtResource( 103 ), ExtResource( 122 ), ExtResource( 130 ), ExtResource( 104 ), ExtResource( 116 ) ], -"loop": true, -"name": "boost-speed-right-02", -"speed": 50.0 } ] [sub_resource type="RectangleShape2D" id=3] @@ -307,11 +307,6 @@ radius = 41.5403 [sub_resource type="SpriteFrames" id=6] animations = [ { -"frames": [ ExtResource( 170 ) ], -"loop": true, -"name": "03", -"speed": 5.0 -}, { "frames": [ ExtResource( 169 ) ], "loop": true, "name": "04", @@ -326,6 +321,11 @@ animations = [ { "loop": true, "name": "02", "speed": 5.0 +}, { +"frames": [ ExtResource( 170 ) ], +"loop": true, +"name": "03", +"speed": 5.0 } ] [node name="player" type="KinematicBody2D" groups=[ diff --git a/source/levels/trinity_site/trinity_site_level.tscn b/source/levels/trinity_site/trinity_site_level.tscn index 1867346..9e5c5b5 100644 --- a/source/levels/trinity_site/trinity_site_level.tscn +++ b/source/levels/trinity_site/trinity_site_level.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=14 format=2] +[gd_scene load_steps=15 format=2] [ext_resource path="res://source/assets/scripts/server_handlers/trinity_site_level.gd" type="Script" id=1] [ext_resource path="res://source/assets/scripts/ui_element_handlers/UI.gd" type="Script" id=2] @@ -9,6 +9,7 @@ [ext_resource path="res://source/levels/trinity_site/images/trinity_site_level_layout-level_design_z-index_-2-version_ct_f_hd_3840_2160 – 01.png" type="Texture" id=7] [ext_resource path="res://source/levels/trinity_site/images/trinity_site_level_layout-level_design_z-index_-1-version_ct_f_hd_3840_2160.png" type="Texture" id=8] [ext_resource path="res://source/entities/grass/grass_node.tscn" type="PackedScene" id=9] +[ext_resource path="res://source/fonts/oxygen/oxygen_bold.tres" type="DynamicFont" id=10] [ext_resource path="res://source/levels/trinity_site/images/trinity_site_level_layout-level_design_z-index_-2-version_ct_f_hd_3840_2160 – 02.png" type="Texture" id=44] [ext_resource path="res://source/levels/trinity_site/images/trinity_site_level_layout-level_design_z-index_-2-version_ct_f_hd_3840_2160 – 025.png" type="Texture" id=45] [ext_resource path="res://source/assets/scripts/trinity_site_body_handler.gd" type="Script" id=46] @@ -159,4 +160,19 @@ __meta__ = { [node name="win_timer" type="Timer" parent="game_UI/Control/winner"] wait_time = 4.0 +[node name="timer" type="Label" parent="."] +margin_right = 347.0 +margin_bottom = 164.0 +custom_fonts/font = ExtResource( 10 ) +text = "null" +align = 1 +valign = 1 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="timer" type="Timer" parent="timer"] +autostart = true + [connection signal="timeout" from="game_UI/Control/winner/win_timer" to="game_UI/Control/winner" method="_on_win_timer_timeout"] +[connection signal="timeout" from="timer/timer" to="." method="_on_timer_timeout"] From 63621fa52f8f0cbba82a384ea316bb78da041205 Mon Sep 17 00:00:00 2001 From: Alan Alexander Cerna <87852561+Kroppec@users.noreply.github.com> Date: Thu, 11 Nov 2021 18:52:11 +0200 Subject: [PATCH 02/10] [Medium] Assessing synchronization --- project.godot | 38 +++++++-------- .../player_handlers/player_body_handler.gd | 5 +- .../assets/scripts/server_handlers/global.gd | 46 +++++++++++++++++++ .../server_handlers/trinity_site_level.gd | 8 ++-- source/scenes/GUI/main_menu.tscn | 8 ++-- 5 files changed, 77 insertions(+), 28 deletions(-) diff --git a/project.godot b/project.godot index 64ea969..bdd770c 100644 --- a/project.godot +++ b/project.godot @@ -37,42 +37,42 @@ fps=false input_right={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":68,"unicode":0,"echo":false,"script":null) -, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777233,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":68,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777233,"physical_scancode":0,"unicode":0,"echo":false,"script":null) ] } input_left={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":65,"unicode":0,"echo":false,"script":null) -, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777231,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":65,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777231,"physical_scancode":0,"unicode":0,"echo":false,"script":null) ] } input_up={ "deadzone": 0.49, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":87,"unicode":0,"echo":false,"script":null) -, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"unicode":0,"echo":false,"script":null) -, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":32,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":87,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":32,"physical_scancode":0,"unicode":0,"echo":false,"script":null) ] } input_down={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":83,"unicode":0,"echo":false,"script":null) -, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":83,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"physical_scancode":0,"unicode":0,"echo":false,"script":null) ] } input_debug={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":96,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":96,"physical_scancode":0,"unicode":0,"echo":false,"script":null) ] } input_enter={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777221,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777221,"physical_scancode":0,"unicode":0,"echo":false,"script":null) ] } input_shift={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777237,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777237,"physical_scancode":0,"unicode":0,"echo":false,"script":null) ] } input_shoot={ @@ -82,37 +82,37 @@ input_shoot={ } esc={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777217,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777217,"physical_scancode":0,"unicode":0,"echo":false,"script":null) ] } rotation_increase={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":69,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":69,"physical_scancode":0,"unicode":0,"echo":false,"script":null) ] } rotation_decrease={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":81,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":81,"physical_scancode":0,"unicode":0,"echo":false,"script":null) ] } line={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777351,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777351,"physical_scancode":0,"unicode":0,"echo":false,"script":null) ] } sine={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777352,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777352,"physical_scancode":0,"unicode":0,"echo":false,"script":null) ] } hyper={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777353,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777353,"physical_scancode":0,"unicode":0,"echo":false,"script":null) ] } parab={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777354,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777354,"physical_scancode":0,"unicode":0,"echo":false,"script":null) ] } diff --git a/source/assets/scripts/player_handlers/player_body_handler.gd b/source/assets/scripts/player_handlers/player_body_handler.gd index 9f26d95..662f9dd 100644 --- a/source/assets/scripts/player_handlers/player_body_handler.gd +++ b/source/assets/scripts/player_handlers/player_body_handler.gd @@ -83,6 +83,8 @@ var weaponAngle = 0 var particleTexture = ImageTexture.new() var particleImage = Image.new() +var globalActivePhase = null + func _ready(): weaponPositionalOffset = Vector2(-$"weaponHolder/Player-character-theme-gun-na3".texture.get_width() * $"weaponHolder/Player-character-theme-gun-na3".scale.x / 2,-$"weaponHolder/Player-character-theme-gun-na3".texture.get_height() * $"weaponHolder/Player-character-theme-gun-na3".scale.y / 2) + Vector2(-$weaponHolder.get_shape().get_radius(), 0) @@ -142,8 +144,7 @@ func process_rotation(): func _process(delta: float) -> void: -# print(OS.get_time()) - print(Global.time_output()) + globalActivePhase = Global.phase_update_global() $"weaponHolder/Player-character-theme-gun".play(theme) particleImage.load("res://source/assets/sprites/character/player/theme/" + theme + "/na/Player-character-theme-particle-"+theme+".png") particleTexture.create_from_image(particleImage) diff --git a/source/assets/scripts/server_handlers/global.gd b/source/assets/scripts/server_handlers/global.gd index a6fd8cf..555543b 100644 --- a/source/assets/scripts/server_handlers/global.gd +++ b/source/assets/scripts/server_handlers/global.gd @@ -4,6 +4,52 @@ var player_master = null var ui = null var alive_players = [] +var clientPhase = { + "0": { + "phase_name": "Movement phase", + "length": 10, + "start_time": null + }, + "1": { + "phase_name": "Weapon adjustment phase", + "length": 20, + "start_time": null + }, + "2": { + "phase_name": "Bullet simulation phase", + "length": 5, + "start_time": null + }, + "3": { + "phase_name": "Idle phase", + "length": 5, + "start_time": null + } +} +var activePhase = null +var currentTime = null +var gameStart = false + +func phase_update_global(): + currentTime = OS.get_time() + if gameStart: + if activePhase != null: + if clientPhase[str(activePhase)]["start_time"] != null: + if currentTime["second"] - clientPhase[str(activePhase)]["start_time"]["second"] > clientPhase[str(activePhase)]["length"]: + if activePhase + 1 == clientPhase.size(): + clientPhase[str(activePhase)]["start_time"] = null + activePhase = 0 + else: + clientPhase[str(activePhase)]["start_time"] = null + activePhase += 1 + else: clientPhase[str(activePhase)]["start_time"] = currentTime + else: activePhase = 0 + return clientPhase[str(activePhase)] + pass + +func start_game(): + gameStart = true + pass func instance_node_at_location(node: Object, parent: Object, location: Vector2) -> Object: var node_instance = instance_node(node, parent) diff --git a/source/assets/scripts/server_handlers/trinity_site_level.gd b/source/assets/scripts/server_handlers/trinity_site_level.gd index 00ac16f..2ded050 100644 --- a/source/assets/scripts/server_handlers/trinity_site_level.gd +++ b/source/assets/scripts/server_handlers/trinity_site_level.gd @@ -4,11 +4,13 @@ var current_spawn_location_instance_number = 1 var current_player_location_instance_number = null var time = 20 +var globalActivePhase = null + func _ready() -> void: get_tree().connect("network_peer_disconnected", self, "_player_disconnected") if get_tree().is_network_server(): setup_player_positions() - + Global.start_game() func setup_player_positions() -> void: for player in PersistentNodes.get_children(): @@ -31,5 +33,5 @@ func _on_timer_timeout(): func _process(delta): - Global.time_input(time) - $timer.text = str(time) + globalActivePhase = Global.phase_update_global() + $timer.text = str(globalActivePhase["phase_name"]) diff --git a/source/scenes/GUI/main_menu.tscn b/source/scenes/GUI/main_menu.tscn index 175e14c..c5aa6bf 100644 --- a/source/scenes/GUI/main_menu.tscn +++ b/source/scenes/GUI/main_menu.tscn @@ -51,8 +51,8 @@ margin_left = -150.0 margin_top = -36.0 margin_right = 150.0 margin_bottom = 36.0 -custom_fonts/font = ExtResource( 5 ) custom_colors/font_color = Color( 0, 0, 0, 1 ) +custom_fonts/font = ExtResource( 5 ) text = "PLAY" align = 1 valign = 1 @@ -76,8 +76,8 @@ margin_left = -98.8223 margin_top = -36.0 margin_right = 134.178 margin_bottom = 36.0 -custom_fonts/font = ExtResource( 5 ) custom_colors/font_color = Color( 0, 0, 0, 1 ) +custom_fonts/font = ExtResource( 5 ) text = "LAN Party" align = 1 valign = 1 @@ -108,8 +108,8 @@ margin_left = -150.0 margin_top = -36.0 margin_right = 150.0 margin_bottom = 36.0 -custom_fonts/font = ExtResource( 5 ) custom_colors/font_color = Color( 0, 0, 0, 1 ) +custom_fonts/font = ExtResource( 5 ) text = "EXIT" align = 1 valign = 1 @@ -123,8 +123,8 @@ margin_left = 1798.91 margin_top = 989.536 margin_right = 1889.91 margin_bottom = 1061.54 -custom_fonts/font = ExtResource( 8 ) custom_colors/font_color_disabled = Color( 1, 1, 1, 1 ) +custom_fonts/font = ExtResource( 8 ) __meta__ = { "_edit_use_anchors_": false } From c93281adc58dcb36867b60ba58d5d4ffe1409935 Mon Sep 17 00:00:00 2001 From: Alan Alexander Cerna <87852561+Kroppec@users.noreply.github.com> Date: Thu, 11 Nov 2021 19:09:36 +0200 Subject: [PATCH 03/10] [Minimal] Synchronization adjustments --- .../player_handlers/player_body_handler.gd | 6 ++++-- source/assets/scripts/server_handlers/global.gd | 17 ++++++++++++----- .../server_handlers/trinity_site_level.gd | 4 ++-- 3 files changed, 18 insertions(+), 9 deletions(-) diff --git a/source/assets/scripts/player_handlers/player_body_handler.gd b/source/assets/scripts/player_handlers/player_body_handler.gd index 662f9dd..ac90f05 100644 --- a/source/assets/scripts/player_handlers/player_body_handler.gd +++ b/source/assets/scripts/player_handlers/player_body_handler.gd @@ -84,6 +84,7 @@ var particleTexture = ImageTexture.new() var particleImage = Image.new() var globalActivePhase = null +var clientPhase = null func _ready(): @@ -144,7 +145,6 @@ func process_rotation(): func _process(delta: float) -> void: - globalActivePhase = Global.phase_update_global() $"weaponHolder/Player-character-theme-gun".play(theme) particleImage.load("res://source/assets/sprites/character/player/theme/" + theme + "/na/Player-character-theme-particle-"+theme+".png") particleTexture.create_from_image(particleImage) @@ -256,8 +256,10 @@ func _physics_process(delta) -> void: rpc("shoot", trajectory, get_tree().get_network_unique_id()) is_reloading = true reload_timer.start() + globalActivePhase = Global.phase_update_global() + clientPhase = Global.get_client_phase() else: - + Global.phase_update_puppet(clientPhase) rotation = lerp_angle(rotation, puppet_rotation, delta * 8) $"weaponHolder/Player-character-theme-gun".position = puppet_weapon_position weaponAngle = puppet_weapon_angle diff --git a/source/assets/scripts/server_handlers/global.gd b/source/assets/scripts/server_handlers/global.gd index 555543b..7691b3e 100644 --- a/source/assets/scripts/server_handlers/global.gd +++ b/source/assets/scripts/server_handlers/global.gd @@ -7,22 +7,22 @@ var alive_players = [] var clientPhase = { "0": { "phase_name": "Movement phase", - "length": 10, + "length": 2, "start_time": null }, "1": { "phase_name": "Weapon adjustment phase", - "length": 20, + "length": 2, "start_time": null }, "2": { "phase_name": "Bullet simulation phase", - "length": 5, + "length": 2, "start_time": null }, "3": { "phase_name": "Idle phase", - "length": 5, + "length": 2, "start_time": null } } @@ -35,7 +35,7 @@ func phase_update_global(): if gameStart: if activePhase != null: if clientPhase[str(activePhase)]["start_time"] != null: - if currentTime["second"] - clientPhase[str(activePhase)]["start_time"]["second"] > clientPhase[str(activePhase)]["length"]: + if currentTime["second"] + currentTime["minute"] * 60 - clientPhase[str(activePhase)]["start_time"]["second"] - clientPhase[str(activePhase)]["start_time"]["minute"] * 60 > clientPhase[str(activePhase)]["length"]: if activePhase + 1 == clientPhase.size(): clientPhase[str(activePhase)]["start_time"] = null activePhase = 0 @@ -51,6 +51,13 @@ func start_game(): gameStart = true pass +func get_client_phase(): + return {"clientPhase": clientPhase, "activePhase": activePhase, "gameStart": gameStart, "currentTime": currentTime} + +func phase_update_puppet(phase): + clientPhase = phase["clientPhase"] + activePhase = phase["activePhase"] + func instance_node_at_location(node: Object, parent: Object, location: Vector2) -> Object: var node_instance = instance_node(node, parent) node_instance.global_position = location diff --git a/source/assets/scripts/server_handlers/trinity_site_level.gd b/source/assets/scripts/server_handlers/trinity_site_level.gd index 2ded050..3382188 100644 --- a/source/assets/scripts/server_handlers/trinity_site_level.gd +++ b/source/assets/scripts/server_handlers/trinity_site_level.gd @@ -33,5 +33,5 @@ func _on_timer_timeout(): func _process(delta): - globalActivePhase = Global.phase_update_global() - $timer.text = str(globalActivePhase["phase_name"]) + globalActivePhase = Global.get_client_phase() + $timer.text = str(globalActivePhase["clientPhase"][str(globalActivePhase["activePhase"])]["phase_name"]) From 14b300b91502b41c11998b53b887fb24e2836172 Mon Sep 17 00:00:00 2001 From: Alan Alexander Cerna <87852561+Kroppec@users.noreply.github.com> Date: Thu, 11 Nov 2021 19:14:09 +0200 Subject: [PATCH 04/10] Fix --- .../player_handlers/player_body_handler.gd | 2 +- source/entities/player/player_node.tscn | 81 +++++++++---------- 2 files changed, 40 insertions(+), 43 deletions(-) diff --git a/source/assets/scripts/player_handlers/player_body_handler.gd b/source/assets/scripts/player_handlers/player_body_handler.gd index ac90f05..22e1a4a 100644 --- a/source/assets/scripts/player_handlers/player_body_handler.gd +++ b/source/assets/scripts/player_handlers/player_body_handler.gd @@ -259,7 +259,7 @@ func _physics_process(delta) -> void: globalActivePhase = Global.phase_update_global() clientPhase = Global.get_client_phase() else: - Global.phase_update_puppet(clientPhase) + if clientPhase != null: Global.phase_update_puppet(clientPhase) rotation = lerp_angle(rotation, puppet_rotation, delta * 8) $"weaponHolder/Player-character-theme-gun".position = puppet_weapon_position weaponAngle = puppet_weapon_angle diff --git a/source/entities/player/player_node.tscn b/source/entities/player/player_node.tscn index 0448643..109dde2 100644 --- a/source/entities/player/player_node.tscn +++ b/source/entities/player/player_node.tscn @@ -175,6 +175,16 @@ animations = [ { "frames": [ ExtResource( 70 ), ExtResource( 49 ), ExtResource( 74 ), ExtResource( 75 ), ExtResource( 28 ), ExtResource( 52 ), ExtResource( 53 ), ExtResource( 55 ), ExtResource( 150 ), ExtResource( 156 ), ExtResource( 138 ), ExtResource( 161 ), ExtResource( 145 ), ExtResource( 148 ), ExtResource( 147 ), ExtResource( 133 ), ExtResource( 164 ), ExtResource( 134 ), ExtResource( 152 ), ExtResource( 160 ) ], "loop": true, +"name": "boost-speed-left-03", +"speed": 50.0 +}, { +"frames": [ ExtResource( 162 ), ExtResource( 135 ), ExtResource( 146 ), ExtResource( 141 ), ExtResource( 143 ), ExtResource( 163 ), ExtResource( 149 ), ExtResource( 136 ), ExtResource( 154 ), ExtResource( 137 ), ExtResource( 165 ), ExtResource( 142 ), ExtResource( 139 ), ExtResource( 159 ), ExtResource( 140 ), ExtResource( 155 ), ExtResource( 144 ), ExtResource( 151 ), ExtResource( 153 ), ExtResource( 166 ) ], +"loop": true, +"name": "boost-speed-left-04", +"speed": 50.0 +}, { +"frames": [ ExtResource( 70 ), ExtResource( 49 ), ExtResource( 74 ), ExtResource( 75 ), ExtResource( 28 ), ExtResource( 52 ), ExtResource( 53 ), ExtResource( 55 ), ExtResource( 150 ), ExtResource( 156 ), ExtResource( 138 ), ExtResource( 161 ), ExtResource( 145 ), ExtResource( 148 ), ExtResource( 147 ), ExtResource( 133 ), ExtResource( 164 ), ExtResource( 134 ), ExtResource( 152 ), ExtResource( 160 ) ], +"loop": true, "name": "move-speed-left-03", "speed": 35.0 }, { @@ -188,6 +198,11 @@ animations = [ { "name": "boost-speed-right-01", "speed": 50.0 }, { +"frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], +"loop": true, +"name": "idle-speed-right-04", +"speed": 25.0 +}, { "frames": [ ExtResource( 5 ), ExtResource( 42 ), ExtResource( 35 ), ExtResource( 24 ), ExtResource( 8 ), ExtResource( 31 ), ExtResource( 30 ), ExtResource( 38 ), ExtResource( 10 ), ExtResource( 43 ), ExtResource( 41 ), ExtResource( 33 ), ExtResource( 44 ), ExtResource( 19 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 36 ), ExtResource( 12 ), ExtResource( 45 ), ExtResource( 21 ) ], "loop": true, "name": "move-speed-right-01", @@ -198,11 +213,6 @@ animations = [ { "name": "move-speed-left-02", "speed": 35.0 }, { -"frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], -"loop": true, -"name": "idle-speed-right-04", -"speed": 25.0 -}, { "frames": [ ExtResource( 73 ), ExtResource( 57 ), ExtResource( 65 ), ExtResource( 64 ), ExtResource( 54 ), ExtResource( 71 ), ExtResource( 58 ), ExtResource( 66 ), ExtResource( 62 ), ExtResource( 59 ), ExtResource( 56 ), ExtResource( 60 ), ExtResource( 63 ), ExtResource( 50 ), ExtResource( 61 ), ExtResource( 67 ), ExtResource( 72 ), ExtResource( 51 ), ExtResource( 68 ), ExtResource( 69 ) ], "loop": true, "name": "idle-speed-left-02", @@ -215,19 +225,29 @@ animations = [ { }, { "frames": [ ExtResource( 162 ), ExtResource( 135 ), ExtResource( 146 ), ExtResource( 141 ), ExtResource( 143 ), ExtResource( 163 ), ExtResource( 149 ), ExtResource( 136 ), ExtResource( 154 ), ExtResource( 137 ), ExtResource( 165 ), ExtResource( 142 ), ExtResource( 139 ), ExtResource( 159 ), ExtResource( 140 ), ExtResource( 155 ), ExtResource( 144 ), ExtResource( 151 ), ExtResource( 153 ), ExtResource( 166 ) ], "loop": true, -"name": "boost-speed-left-04", -"speed": 50.0 +"name": "move-speed-left-04", +"speed": 35.0 }, { -"frames": [ ExtResource( 70 ), ExtResource( 49 ), ExtResource( 74 ), ExtResource( 75 ), ExtResource( 28 ), ExtResource( 52 ), ExtResource( 53 ), ExtResource( 55 ), ExtResource( 150 ), ExtResource( 156 ), ExtResource( 138 ), ExtResource( 161 ), ExtResource( 145 ), ExtResource( 148 ), ExtResource( 147 ), ExtResource( 133 ), ExtResource( 164 ), ExtResource( 134 ), ExtResource( 152 ), ExtResource( 160 ) ], +"frames": [ ExtResource( 167 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 126 ), ExtResource( 90 ), ExtResource( 89 ), ExtResource( 97 ), ExtResource( 88 ), ExtResource( 98 ), ExtResource( 91 ), ExtResource( 125 ), ExtResource( 105 ), ExtResource( 82 ), ExtResource( 84 ), ExtResource( 92 ), ExtResource( 103 ), ExtResource( 122 ), ExtResource( 130 ), ExtResource( 104 ), ExtResource( 116 ) ], "loop": true, -"name": "boost-speed-left-03", -"speed": 50.0 +"name": "idle-speed-right-02", +"speed": 25.0 }, { "frames": [ ExtResource( 114 ), ExtResource( 128 ), ExtResource( 93 ), ExtResource( 107 ), ExtResource( 117 ), ExtResource( 102 ), ExtResource( 81 ), ExtResource( 118 ), ExtResource( 76 ), ExtResource( 115 ), ExtResource( 127 ), ExtResource( 123 ), ExtResource( 113 ), ExtResource( 77 ), ExtResource( 78 ), ExtResource( 124 ), ExtResource( 94 ), ExtResource( 112 ), ExtResource( 131 ), ExtResource( 95 ) ], "loop": true, "name": "move-speed-right-03", "speed": 35.0 }, { +"frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], +"loop": true, +"name": "boost-speed-right-04", +"speed": 50.0 +}, { +"frames": [ ExtResource( 5 ), ExtResource( 42 ), ExtResource( 35 ), ExtResource( 24 ), ExtResource( 8 ), ExtResource( 31 ), ExtResource( 30 ), ExtResource( 38 ), ExtResource( 10 ), ExtResource( 43 ), ExtResource( 41 ), ExtResource( 33 ), ExtResource( 44 ), ExtResource( 19 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 36 ), ExtResource( 12 ), ExtResource( 45 ), ExtResource( 21 ) ], +"loop": true, +"name": "idle-speed-right-01", +"speed": 25.0 +}, { "frames": [ ExtResource( 114 ), ExtResource( 128 ), ExtResource( 93 ), ExtResource( 107 ), ExtResource( 117 ), ExtResource( 102 ), ExtResource( 81 ), ExtResource( 118 ), ExtResource( 76 ), ExtResource( 115 ), ExtResource( 127 ), ExtResource( 123 ), ExtResource( 113 ), ExtResource( 77 ), ExtResource( 78 ), ExtResource( 124 ), ExtResource( 94 ), ExtResource( 112 ), ExtResource( 131 ), ExtResource( 95 ) ], "loop": true, "name": "boost-speed-right-03", @@ -245,33 +265,13 @@ animations = [ { }, { "frames": [ ExtResource( 48 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 32 ), ExtResource( 13 ), ExtResource( 40 ), ExtResource( 6 ), ExtResource( 15 ), ExtResource( 22 ), ExtResource( 14 ), ExtResource( 9 ), ExtResource( 37 ), ExtResource( 23 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 18 ), ExtResource( 7 ), ExtResource( 34 ) ], "loop": true, -"name": "idle-speed-left-01", -"speed": 25.0 -}, { -"frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], -"loop": true, -"name": "boost-speed-right-04", -"speed": 50.0 -}, { -"frames": [ ExtResource( 167 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 126 ), ExtResource( 90 ), ExtResource( 89 ), ExtResource( 97 ), ExtResource( 88 ), ExtResource( 98 ), ExtResource( 91 ), ExtResource( 125 ), ExtResource( 105 ), ExtResource( 82 ), ExtResource( 84 ), ExtResource( 92 ), ExtResource( 103 ), ExtResource( 122 ), ExtResource( 130 ), ExtResource( 104 ), ExtResource( 116 ) ], -"loop": true, -"name": "idle-speed-right-02", -"speed": 25.0 -}, { -"frames": [ ExtResource( 5 ), ExtResource( 42 ), ExtResource( 35 ), ExtResource( 24 ), ExtResource( 8 ), ExtResource( 31 ), ExtResource( 30 ), ExtResource( 38 ), ExtResource( 10 ), ExtResource( 43 ), ExtResource( 41 ), ExtResource( 33 ), ExtResource( 44 ), ExtResource( 19 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 36 ), ExtResource( 12 ), ExtResource( 45 ), ExtResource( 21 ) ], -"loop": true, -"name": "idle-speed-right-01", -"speed": 25.0 -}, { -"frames": [ ExtResource( 162 ), ExtResource( 135 ), ExtResource( 146 ), ExtResource( 141 ), ExtResource( 143 ), ExtResource( 163 ), ExtResource( 149 ), ExtResource( 136 ), ExtResource( 154 ), ExtResource( 137 ), ExtResource( 165 ), ExtResource( 142 ), ExtResource( 139 ), ExtResource( 159 ), ExtResource( 140 ), ExtResource( 155 ), ExtResource( 144 ), ExtResource( 151 ), ExtResource( 153 ), ExtResource( 166 ) ], -"loop": true, -"name": "move-speed-left-04", +"name": "move-speed-left-01", "speed": 35.0 }, { "frames": [ ExtResource( 48 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 32 ), ExtResource( 13 ), ExtResource( 40 ), ExtResource( 6 ), ExtResource( 15 ), ExtResource( 22 ), ExtResource( 14 ), ExtResource( 9 ), ExtResource( 37 ), ExtResource( 23 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 18 ), ExtResource( 7 ), ExtResource( 34 ) ], "loop": true, -"name": "move-speed-left-01", -"speed": 35.0 +"name": "idle-speed-left-01", +"speed": 25.0 }, { "frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], "loop": true, @@ -307,11 +307,6 @@ radius = 41.5403 [sub_resource type="SpriteFrames" id=6] animations = [ { -"frames": [ ExtResource( 169 ) ], -"loop": true, -"name": "04", -"speed": 5.0 -}, { "frames": [ ExtResource( 27 ) ], "loop": true, "name": "01", @@ -326,12 +321,14 @@ animations = [ { "loop": true, "name": "03", "speed": 5.0 +}, { +"frames": [ ExtResource( 169 ) ], +"loop": true, +"name": "04", +"speed": 5.0 } ] -[node name="player" type="KinematicBody2D" groups=[ -"Net", -"Player", -]] +[node name="player" type="KinematicBody2D" groups=["Net", "Player"]] script = ExtResource( 11 ) [node name="player_collider" type="CollisionShape2D" parent="."] From e434aa0c59e72721bab73f9e1dd1a52ac987c851 Mon Sep 17 00:00:00 2001 From: Alan Alexander Cerna <87852561+Kroppec@users.noreply.github.com> Date: Thu, 11 Nov 2021 19:56:46 +0200 Subject: [PATCH 05/10] [Min] Sharing is caring --- .../player_handlers/player_body_handler.gd | 14 +- .../assets/scripts/server_handlers/global.gd | 45 +++--- .../server_handlers/trinity_site_level.gd | 4 +- source/entities/player/player_node.tscn | 140 +++++++++--------- 4 files changed, 101 insertions(+), 102 deletions(-) diff --git a/source/assets/scripts/player_handlers/player_body_handler.gd b/source/assets/scripts/player_handlers/player_body_handler.gd index 22e1a4a..d2b5f5f 100644 --- a/source/assets/scripts/player_handlers/player_body_handler.gd +++ b/source/assets/scripts/player_handlers/player_body_handler.gd @@ -24,6 +24,7 @@ puppet var puppet_direction = "left" puppet var puppet_theme = "01" puppet var puppet_character_states = {} puppet var puppet_bullet_position = Vector2() setget puppet_bullet_position_set +puppet var puppet_phase = null onready var tween = $Tween onready var sprite = $player_sprite @@ -145,6 +146,15 @@ func process_rotation(): func _process(delta: float) -> void: + if get_tree().is_network_server(): + Global.phase_update_global() + clientPhase = Global.get_current_phase() + rset_unreliable("puppet_phase", clientPhase) + print("MASTER:",clientPhase) + else: + if puppet_phase != null: clientPhase = puppet_phase + Global.set_current_phase(clientPhase) + print("SLAVE:",clientPhase) $"weaponHolder/Player-character-theme-gun".play(theme) particleImage.load("res://source/assets/sprites/character/player/theme/" + theme + "/na/Player-character-theme-particle-"+theme+".png") particleTexture.create_from_image(particleImage) @@ -249,17 +259,13 @@ func _physics_process(delta) -> void: velocityVDIR = Vector2(clamp(velocityVDIR.x, -maxMovementSpeed.x, maxMovementSpeed.x), clamp(velocityVDIR.y, -maxMovementSpeed.y, maxMovementSpeed.y)) move_and_slide(velocityVDIR.rotated(rotationalHolder)) rotate_weapon() - choose_trajectory() enable_trajectory_line(trajectory_line) if Input.is_action_just_released("input_shoot") and can_shoot and not is_reloading: rpc("shoot", trajectory, get_tree().get_network_unique_id()) is_reloading = true reload_timer.start() - globalActivePhase = Global.phase_update_global() - clientPhase = Global.get_client_phase() else: - if clientPhase != null: Global.phase_update_puppet(clientPhase) rotation = lerp_angle(rotation, puppet_rotation, delta * 8) $"weaponHolder/Player-character-theme-gun".position = puppet_weapon_position weaponAngle = puppet_weapon_angle diff --git a/source/assets/scripts/server_handlers/global.gd b/source/assets/scripts/server_handlers/global.gd index 7691b3e..b0e9d33 100644 --- a/source/assets/scripts/server_handlers/global.gd +++ b/source/assets/scripts/server_handlers/global.gd @@ -24,39 +24,40 @@ var clientPhase = { "phase_name": "Idle phase", "length": 2, "start_time": null - } + }, + "active": null } -var activePhase = null +var activePhaseTracker = null var currentTime = null var gameStart = false func phase_update_global(): currentTime = OS.get_time() if gameStart: - if activePhase != null: - if clientPhase[str(activePhase)]["start_time"] != null: - if currentTime["second"] + currentTime["minute"] * 60 - clientPhase[str(activePhase)]["start_time"]["second"] - clientPhase[str(activePhase)]["start_time"]["minute"] * 60 > clientPhase[str(activePhase)]["length"]: - if activePhase + 1 == clientPhase.size(): - clientPhase[str(activePhase)]["start_time"] = null - activePhase = 0 + if activePhaseTracker != null: + if clientPhase[str(activePhaseTracker)]["start_time"] != null: + if currentTime["second"] + currentTime["minute"] * 60 - clientPhase[str(activePhaseTracker)]["start_time"]["second"] - clientPhase[str(activePhaseTracker)]["start_time"]["minute"] * 60 > clientPhase[str(activePhaseTracker)]["length"]: + if activePhaseTracker == clientPhase.size(): + clientPhase[str(activePhaseTracker)]["start_time"] = null + activePhaseTracker = 0 else: - clientPhase[str(activePhase)]["start_time"] = null - activePhase += 1 - else: clientPhase[str(activePhase)]["start_time"] = currentTime - else: activePhase = 0 - return clientPhase[str(activePhase)] + clientPhase[str(activePhaseTracker)]["start_time"] = null + activePhaseTracker += 1 + else: clientPhase[str(activePhaseTracker)]["start_time"] = currentTime + else: activePhaseTracker = 0 + clientPhase["active"] = clientPhase[str(activePhaseTracker)] pass func start_game(): gameStart = true pass -func get_client_phase(): - return {"clientPhase": clientPhase, "activePhase": activePhase, "gameStart": gameStart, "currentTime": currentTime} +func get_current_phase(): + return clientPhase -func phase_update_puppet(phase): - clientPhase = phase["clientPhase"] - activePhase = phase["activePhase"] +func set_current_phase(phase): + clientPhase = phase + pass func instance_node_at_location(node: Object, parent: Object, location: Vector2) -> Object: var node_instance = instance_node(node, parent) @@ -68,11 +69,3 @@ func instance_node(node: Object, parent: Object) -> Object: var node_instance = node.instance() parent.add_child(node_instance) return node_instance - -var time - -func time_input(d): - time = d - -func time_output(): - return time diff --git a/source/assets/scripts/server_handlers/trinity_site_level.gd b/source/assets/scripts/server_handlers/trinity_site_level.gd index 3382188..f9d32b8 100644 --- a/source/assets/scripts/server_handlers/trinity_site_level.gd +++ b/source/assets/scripts/server_handlers/trinity_site_level.gd @@ -33,5 +33,5 @@ func _on_timer_timeout(): func _process(delta): - globalActivePhase = Global.get_client_phase() - $timer.text = str(globalActivePhase["clientPhase"][str(globalActivePhase["activePhase"])]["phase_name"]) + globalActivePhase = Global.get_current_phase() + if globalActivePhase["active"] != null: $timer.text = str(globalActivePhase["active"]["phase_name"]) diff --git a/source/entities/player/player_node.tscn b/source/entities/player/player_node.tscn index 109dde2..e38f56f 100644 --- a/source/entities/player/player_node.tscn +++ b/source/entities/player/player_node.tscn @@ -173,6 +173,41 @@ [sub_resource type="SpriteFrames" id=2] animations = [ { +"frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], +"loop": true, +"name": "move-speed-right-04", +"speed": 35.0 +}, { +"frames": [ ExtResource( 162 ), ExtResource( 135 ), ExtResource( 146 ), ExtResource( 141 ), ExtResource( 143 ), ExtResource( 163 ), ExtResource( 149 ), ExtResource( 136 ), ExtResource( 154 ), ExtResource( 137 ), ExtResource( 165 ), ExtResource( 142 ), ExtResource( 139 ), ExtResource( 159 ), ExtResource( 140 ), ExtResource( 155 ), ExtResource( 144 ), ExtResource( 151 ), ExtResource( 153 ), ExtResource( 166 ) ], +"loop": true, +"name": "idle-speed-left-04", +"speed": 25.0 +}, { +"frames": [ ExtResource( 5 ), ExtResource( 42 ), ExtResource( 35 ), ExtResource( 24 ), ExtResource( 8 ), ExtResource( 31 ), ExtResource( 30 ), ExtResource( 38 ), ExtResource( 10 ), ExtResource( 43 ), ExtResource( 41 ), ExtResource( 33 ), ExtResource( 44 ), ExtResource( 19 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 36 ), ExtResource( 12 ), ExtResource( 45 ), ExtResource( 21 ) ], +"loop": true, +"name": "idle-speed-right-01", +"speed": 25.0 +}, { +"frames": [ ExtResource( 48 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 32 ), ExtResource( 13 ), ExtResource( 40 ), ExtResource( 6 ), ExtResource( 15 ), ExtResource( 22 ), ExtResource( 14 ), ExtResource( 9 ), ExtResource( 37 ), ExtResource( 23 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 18 ), ExtResource( 7 ), ExtResource( 34 ) ], +"loop": true, +"name": "boost-speed-left-01", +"speed": 50.0 +}, { +"frames": [ ExtResource( 114 ), ExtResource( 128 ), ExtResource( 93 ), ExtResource( 107 ), ExtResource( 117 ), ExtResource( 102 ), ExtResource( 81 ), ExtResource( 118 ), ExtResource( 76 ), ExtResource( 115 ), ExtResource( 127 ), ExtResource( 123 ), ExtResource( 113 ), ExtResource( 77 ), ExtResource( 78 ), ExtResource( 124 ), ExtResource( 94 ), ExtResource( 112 ), ExtResource( 131 ), ExtResource( 95 ) ], +"loop": true, +"name": "boost-speed-right-03", +"speed": 50.0 +}, { +"frames": [ ExtResource( 48 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 32 ), ExtResource( 13 ), ExtResource( 40 ), ExtResource( 6 ), ExtResource( 15 ), ExtResource( 22 ), ExtResource( 14 ), ExtResource( 9 ), ExtResource( 37 ), ExtResource( 23 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 18 ), ExtResource( 7 ), ExtResource( 34 ) ], +"loop": true, +"name": "move-speed-left-01", +"speed": 35.0 +}, { +"frames": [ ExtResource( 48 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 32 ), ExtResource( 13 ), ExtResource( 40 ), ExtResource( 6 ), ExtResource( 15 ), ExtResource( 22 ), ExtResource( 14 ), ExtResource( 9 ), ExtResource( 37 ), ExtResource( 23 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 18 ), ExtResource( 7 ), ExtResource( 34 ) ], +"loop": true, +"name": "idle-speed-left-01", +"speed": 25.0 +}, { "frames": [ ExtResource( 70 ), ExtResource( 49 ), ExtResource( 74 ), ExtResource( 75 ), ExtResource( 28 ), ExtResource( 52 ), ExtResource( 53 ), ExtResource( 55 ), ExtResource( 150 ), ExtResource( 156 ), ExtResource( 138 ), ExtResource( 161 ), ExtResource( 145 ), ExtResource( 148 ), ExtResource( 147 ), ExtResource( 133 ), ExtResource( 164 ), ExtResource( 134 ), ExtResource( 152 ), ExtResource( 160 ) ], "loop": true, "name": "boost-speed-left-03", @@ -183,11 +218,6 @@ animations = [ { "name": "boost-speed-left-04", "speed": 50.0 }, { -"frames": [ ExtResource( 70 ), ExtResource( 49 ), ExtResource( 74 ), ExtResource( 75 ), ExtResource( 28 ), ExtResource( 52 ), ExtResource( 53 ), ExtResource( 55 ), ExtResource( 150 ), ExtResource( 156 ), ExtResource( 138 ), ExtResource( 161 ), ExtResource( 145 ), ExtResource( 148 ), ExtResource( 147 ), ExtResource( 133 ), ExtResource( 164 ), ExtResource( 134 ), ExtResource( 152 ), ExtResource( 160 ) ], -"loop": true, -"name": "move-speed-left-03", -"speed": 35.0 -}, { "frames": [ ExtResource( 167 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 126 ), ExtResource( 90 ), ExtResource( 89 ), ExtResource( 97 ), ExtResource( 88 ), ExtResource( 98 ), ExtResource( 91 ), ExtResource( 125 ), ExtResource( 105 ), ExtResource( 82 ), ExtResource( 84 ), ExtResource( 92 ), ExtResource( 103 ), ExtResource( 122 ), ExtResource( 130 ), ExtResource( 104 ), ExtResource( 116 ) ], "loop": true, "name": "boost-speed-right-02", @@ -203,11 +233,36 @@ animations = [ { "name": "idle-speed-right-04", "speed": 25.0 }, { +"frames": [ ExtResource( 70 ), ExtResource( 49 ), ExtResource( 74 ), ExtResource( 75 ), ExtResource( 28 ), ExtResource( 52 ), ExtResource( 53 ), ExtResource( 55 ), ExtResource( 150 ), ExtResource( 156 ), ExtResource( 138 ), ExtResource( 161 ), ExtResource( 145 ), ExtResource( 148 ), ExtResource( 147 ), ExtResource( 133 ), ExtResource( 164 ), ExtResource( 134 ), ExtResource( 152 ), ExtResource( 160 ) ], +"loop": true, +"name": "move-speed-left-03", +"speed": 35.0 +}, { +"frames": [ ExtResource( 167 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 126 ), ExtResource( 90 ), ExtResource( 89 ), ExtResource( 97 ), ExtResource( 88 ), ExtResource( 98 ), ExtResource( 91 ), ExtResource( 125 ), ExtResource( 105 ), ExtResource( 82 ), ExtResource( 84 ), ExtResource( 92 ), ExtResource( 103 ), ExtResource( 122 ), ExtResource( 130 ), ExtResource( 104 ), ExtResource( 116 ) ], +"loop": true, +"name": "idle-speed-right-02", +"speed": 25.0 +}, { "frames": [ ExtResource( 5 ), ExtResource( 42 ), ExtResource( 35 ), ExtResource( 24 ), ExtResource( 8 ), ExtResource( 31 ), ExtResource( 30 ), ExtResource( 38 ), ExtResource( 10 ), ExtResource( 43 ), ExtResource( 41 ), ExtResource( 33 ), ExtResource( 44 ), ExtResource( 19 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 36 ), ExtResource( 12 ), ExtResource( 45 ), ExtResource( 21 ) ], "loop": true, "name": "move-speed-right-01", "speed": 35.0 }, { +"frames": [ ExtResource( 114 ), ExtResource( 128 ), ExtResource( 93 ), ExtResource( 107 ), ExtResource( 117 ), ExtResource( 102 ), ExtResource( 81 ), ExtResource( 118 ), ExtResource( 76 ), ExtResource( 115 ), ExtResource( 127 ), ExtResource( 123 ), ExtResource( 113 ), ExtResource( 77 ), ExtResource( 78 ), ExtResource( 124 ), ExtResource( 94 ), ExtResource( 112 ), ExtResource( 131 ), ExtResource( 95 ) ], +"loop": true, +"name": "move-speed-right-03", +"speed": 35.0 +}, { +"frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], +"loop": true, +"name": "boost-speed-right-04", +"speed": 50.0 +}, { +"frames": [ ExtResource( 167 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 126 ), ExtResource( 90 ), ExtResource( 89 ), ExtResource( 97 ), ExtResource( 88 ), ExtResource( 98 ), ExtResource( 91 ), ExtResource( 125 ), ExtResource( 105 ), ExtResource( 82 ), ExtResource( 84 ), ExtResource( 92 ), ExtResource( 103 ), ExtResource( 122 ), ExtResource( 130 ), ExtResource( 104 ), ExtResource( 116 ) ], +"loop": true, +"name": "move-speed-right-02", +"speed": 35.0 +}, { "frames": [ ExtResource( 73 ), ExtResource( 57 ), ExtResource( 65 ), ExtResource( 64 ), ExtResource( 54 ), ExtResource( 71 ), ExtResource( 58 ), ExtResource( 66 ), ExtResource( 62 ), ExtResource( 59 ), ExtResource( 56 ), ExtResource( 60 ), ExtResource( 63 ), ExtResource( 50 ), ExtResource( 61 ), ExtResource( 67 ), ExtResource( 72 ), ExtResource( 51 ), ExtResource( 68 ), ExtResource( 69 ) ], "loop": true, "name": "move-speed-left-02", @@ -218,65 +273,10 @@ animations = [ { "name": "idle-speed-left-02", "speed": 25.0 }, { -"frames": [ ExtResource( 167 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 126 ), ExtResource( 90 ), ExtResource( 89 ), ExtResource( 97 ), ExtResource( 88 ), ExtResource( 98 ), ExtResource( 91 ), ExtResource( 125 ), ExtResource( 105 ), ExtResource( 82 ), ExtResource( 84 ), ExtResource( 92 ), ExtResource( 103 ), ExtResource( 122 ), ExtResource( 130 ), ExtResource( 104 ), ExtResource( 116 ) ], -"loop": true, -"name": "move-speed-right-02", -"speed": 35.0 -}, { "frames": [ ExtResource( 162 ), ExtResource( 135 ), ExtResource( 146 ), ExtResource( 141 ), ExtResource( 143 ), ExtResource( 163 ), ExtResource( 149 ), ExtResource( 136 ), ExtResource( 154 ), ExtResource( 137 ), ExtResource( 165 ), ExtResource( 142 ), ExtResource( 139 ), ExtResource( 159 ), ExtResource( 140 ), ExtResource( 155 ), ExtResource( 144 ), ExtResource( 151 ), ExtResource( 153 ), ExtResource( 166 ) ], "loop": true, "name": "move-speed-left-04", "speed": 35.0 -}, { -"frames": [ ExtResource( 167 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 126 ), ExtResource( 90 ), ExtResource( 89 ), ExtResource( 97 ), ExtResource( 88 ), ExtResource( 98 ), ExtResource( 91 ), ExtResource( 125 ), ExtResource( 105 ), ExtResource( 82 ), ExtResource( 84 ), ExtResource( 92 ), ExtResource( 103 ), ExtResource( 122 ), ExtResource( 130 ), ExtResource( 104 ), ExtResource( 116 ) ], -"loop": true, -"name": "idle-speed-right-02", -"speed": 25.0 -}, { -"frames": [ ExtResource( 114 ), ExtResource( 128 ), ExtResource( 93 ), ExtResource( 107 ), ExtResource( 117 ), ExtResource( 102 ), ExtResource( 81 ), ExtResource( 118 ), ExtResource( 76 ), ExtResource( 115 ), ExtResource( 127 ), ExtResource( 123 ), ExtResource( 113 ), ExtResource( 77 ), ExtResource( 78 ), ExtResource( 124 ), ExtResource( 94 ), ExtResource( 112 ), ExtResource( 131 ), ExtResource( 95 ) ], -"loop": true, -"name": "move-speed-right-03", -"speed": 35.0 -}, { -"frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], -"loop": true, -"name": "boost-speed-right-04", -"speed": 50.0 -}, { -"frames": [ ExtResource( 5 ), ExtResource( 42 ), ExtResource( 35 ), ExtResource( 24 ), ExtResource( 8 ), ExtResource( 31 ), ExtResource( 30 ), ExtResource( 38 ), ExtResource( 10 ), ExtResource( 43 ), ExtResource( 41 ), ExtResource( 33 ), ExtResource( 44 ), ExtResource( 19 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 36 ), ExtResource( 12 ), ExtResource( 45 ), ExtResource( 21 ) ], -"loop": true, -"name": "idle-speed-right-01", -"speed": 25.0 -}, { -"frames": [ ExtResource( 114 ), ExtResource( 128 ), ExtResource( 93 ), ExtResource( 107 ), ExtResource( 117 ), ExtResource( 102 ), ExtResource( 81 ), ExtResource( 118 ), ExtResource( 76 ), ExtResource( 115 ), ExtResource( 127 ), ExtResource( 123 ), ExtResource( 113 ), ExtResource( 77 ), ExtResource( 78 ), ExtResource( 124 ), ExtResource( 94 ), ExtResource( 112 ), ExtResource( 131 ), ExtResource( 95 ) ], -"loop": true, -"name": "boost-speed-right-03", -"speed": 50.0 -}, { -"frames": [ ExtResource( 48 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 32 ), ExtResource( 13 ), ExtResource( 40 ), ExtResource( 6 ), ExtResource( 15 ), ExtResource( 22 ), ExtResource( 14 ), ExtResource( 9 ), ExtResource( 37 ), ExtResource( 23 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 18 ), ExtResource( 7 ), ExtResource( 34 ) ], -"loop": true, -"name": "boost-speed-left-01", -"speed": 50.0 -}, { -"frames": [ ExtResource( 162 ), ExtResource( 135 ), ExtResource( 146 ), ExtResource( 141 ), ExtResource( 143 ), ExtResource( 163 ), ExtResource( 149 ), ExtResource( 136 ), ExtResource( 154 ), ExtResource( 137 ), ExtResource( 165 ), ExtResource( 142 ), ExtResource( 139 ), ExtResource( 159 ), ExtResource( 140 ), ExtResource( 155 ), ExtResource( 144 ), ExtResource( 151 ), ExtResource( 153 ), ExtResource( 166 ) ], -"loop": true, -"name": "idle-speed-left-04", -"speed": 25.0 -}, { -"frames": [ ExtResource( 48 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 32 ), ExtResource( 13 ), ExtResource( 40 ), ExtResource( 6 ), ExtResource( 15 ), ExtResource( 22 ), ExtResource( 14 ), ExtResource( 9 ), ExtResource( 37 ), ExtResource( 23 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 18 ), ExtResource( 7 ), ExtResource( 34 ) ], -"loop": true, -"name": "move-speed-left-01", -"speed": 35.0 -}, { -"frames": [ ExtResource( 48 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 32 ), ExtResource( 13 ), ExtResource( 40 ), ExtResource( 6 ), ExtResource( 15 ), ExtResource( 22 ), ExtResource( 14 ), ExtResource( 9 ), ExtResource( 37 ), ExtResource( 23 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 18 ), ExtResource( 7 ), ExtResource( 34 ) ], -"loop": true, -"name": "idle-speed-left-01", -"speed": 25.0 -}, { -"frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], -"loop": true, -"name": "move-speed-right-04", -"speed": 35.0 } ] [sub_resource type="RectangleShape2D" id=3] @@ -307,6 +307,16 @@ radius = 41.5403 [sub_resource type="SpriteFrames" id=6] animations = [ { +"frames": [ ExtResource( 169 ) ], +"loop": true, +"name": "04", +"speed": 5.0 +}, { +"frames": [ ExtResource( 170 ) ], +"loop": true, +"name": "03", +"speed": 5.0 +}, { "frames": [ ExtResource( 27 ) ], "loop": true, "name": "01", @@ -316,16 +326,6 @@ animations = [ { "loop": true, "name": "02", "speed": 5.0 -}, { -"frames": [ ExtResource( 170 ) ], -"loop": true, -"name": "03", -"speed": 5.0 -}, { -"frames": [ ExtResource( 169 ) ], -"loop": true, -"name": "04", -"speed": 5.0 } ] [node name="player" type="KinematicBody2D" groups=["Net", "Player"]] From a3b67d7203b484c6447fb4e7fd04fdbc7d563e55 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Thu, 11 Nov 2021 20:10:27 +0200 Subject: [PATCH 06/10] Phase sync --- .../player_handlers/player_body_handler.gd | 14 +- .../assets/scripts/server_handlers/global.gd | 2 +- .../server_handlers/trinity_site_level.gd | 3 +- source/entities/player/player_node.tscn | 173 +++++++++--------- 4 files changed, 101 insertions(+), 91 deletions(-) diff --git a/source/assets/scripts/player_handlers/player_body_handler.gd b/source/assets/scripts/player_handlers/player_body_handler.gd index d2b5f5f..1d77927 100644 --- a/source/assets/scripts/player_handlers/player_body_handler.gd +++ b/source/assets/scripts/player_handlers/player_body_handler.gd @@ -24,7 +24,7 @@ puppet var puppet_direction = "left" puppet var puppet_theme = "01" puppet var puppet_character_states = {} puppet var puppet_bullet_position = Vector2() setget puppet_bullet_position_set -puppet var puppet_phase = null +puppet var puppet_phase setget puppet_phase_set onready var tween = $Tween onready var sprite = $player_sprite @@ -149,11 +149,11 @@ func _process(delta: float) -> void: if get_tree().is_network_server(): Global.phase_update_global() clientPhase = Global.get_current_phase() - rset_unreliable("puppet_phase", clientPhase) print("MASTER:",clientPhase) else: - if puppet_phase != null: clientPhase = puppet_phase - Global.set_current_phase(clientPhase) + if puppet_phase != null: + clientPhase = puppet_phase + Global.set_current_phase(clientPhase) print("SLAVE:",clientPhase) $"weaponHolder/Player-character-theme-gun".play(theme) particleImage.load("res://source/assets/sprites/character/player/theme/" + theme + "/na/Player-character-theme-particle-"+theme+".png") @@ -328,6 +328,9 @@ func _draw(): draw_line(VDIR[v_t][v]["start"] - user_state["global_position"],(VDIR[v_t][v]["ray"]["position"] - user_state["global_position"]).rotated(-rotation),Color(255,255,255,1),1) +func puppet_phase_set(new_value) -> void: + puppet_phase = new_value + func puppet_position_set(new_value) -> void: puppet_position = new_value @@ -382,6 +385,8 @@ func _on_network_tick_rate_timeout(): rset_unreliable("puppet_direction", direction) #rset_unreliable("puppet_character_states", characterStates) rset_unreliable("puppet_bullet_position", bullet) + if get_tree().is_network_server(): + rset_unreliable("puppet_phase", clientPhase) sync func update_position(pos): @@ -451,6 +456,7 @@ func _exit_tree() -> void: if is_network_master(): Global.player_master = null + func rotate_weapon(): #equip_weapon() weaponPosition = $"weaponHolder/Player-character-theme-gun".position diff --git a/source/assets/scripts/server_handlers/global.gd b/source/assets/scripts/server_handlers/global.gd index b0e9d33..9c37585 100644 --- a/source/assets/scripts/server_handlers/global.gd +++ b/source/assets/scripts/server_handlers/global.gd @@ -37,7 +37,7 @@ func phase_update_global(): if activePhaseTracker != null: if clientPhase[str(activePhaseTracker)]["start_time"] != null: if currentTime["second"] + currentTime["minute"] * 60 - clientPhase[str(activePhaseTracker)]["start_time"]["second"] - clientPhase[str(activePhaseTracker)]["start_time"]["minute"] * 60 > clientPhase[str(activePhaseTracker)]["length"]: - if activePhaseTracker == clientPhase.size(): + if activePhaseTracker == clientPhase.size - 1: clientPhase[str(activePhaseTracker)]["start_time"] = null activePhaseTracker = 0 else: diff --git a/source/assets/scripts/server_handlers/trinity_site_level.gd b/source/assets/scripts/server_handlers/trinity_site_level.gd index f9d32b8..443c2fa 100644 --- a/source/assets/scripts/server_handlers/trinity_site_level.gd +++ b/source/assets/scripts/server_handlers/trinity_site_level.gd @@ -34,4 +34,5 @@ func _on_timer_timeout(): func _process(delta): globalActivePhase = Global.get_current_phase() - if globalActivePhase["active"] != null: $timer.text = str(globalActivePhase["active"]["phase_name"]) + if globalActivePhase["active"] != null: + $timer.text = str(globalActivePhase["active"]["phase_name"]) diff --git a/source/entities/player/player_node.tscn b/source/entities/player/player_node.tscn index e38f56f..d2f5f0e 100644 --- a/source/entities/player/player_node.tscn +++ b/source/entities/player/player_node.tscn @@ -173,61 +173,11 @@ [sub_resource type="SpriteFrames" id=2] animations = [ { -"frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], +"frames": [ ExtResource( 73 ), ExtResource( 57 ), ExtResource( 65 ), ExtResource( 64 ), ExtResource( 54 ), ExtResource( 71 ), ExtResource( 58 ), ExtResource( 66 ), ExtResource( 62 ), ExtResource( 59 ), ExtResource( 56 ), ExtResource( 60 ), ExtResource( 63 ), ExtResource( 50 ), ExtResource( 61 ), ExtResource( 67 ), ExtResource( 72 ), ExtResource( 51 ), ExtResource( 68 ), ExtResource( 69 ) ], "loop": true, -"name": "move-speed-right-04", -"speed": 35.0 -}, { -"frames": [ ExtResource( 162 ), ExtResource( 135 ), ExtResource( 146 ), ExtResource( 141 ), ExtResource( 143 ), ExtResource( 163 ), ExtResource( 149 ), ExtResource( 136 ), ExtResource( 154 ), ExtResource( 137 ), ExtResource( 165 ), ExtResource( 142 ), ExtResource( 139 ), ExtResource( 159 ), ExtResource( 140 ), ExtResource( 155 ), ExtResource( 144 ), ExtResource( 151 ), ExtResource( 153 ), ExtResource( 166 ) ], -"loop": true, -"name": "idle-speed-left-04", +"name": "idle-speed-left-02", "speed": 25.0 }, { -"frames": [ ExtResource( 5 ), ExtResource( 42 ), ExtResource( 35 ), ExtResource( 24 ), ExtResource( 8 ), ExtResource( 31 ), ExtResource( 30 ), ExtResource( 38 ), ExtResource( 10 ), ExtResource( 43 ), ExtResource( 41 ), ExtResource( 33 ), ExtResource( 44 ), ExtResource( 19 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 36 ), ExtResource( 12 ), ExtResource( 45 ), ExtResource( 21 ) ], -"loop": true, -"name": "idle-speed-right-01", -"speed": 25.0 -}, { -"frames": [ ExtResource( 48 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 32 ), ExtResource( 13 ), ExtResource( 40 ), ExtResource( 6 ), ExtResource( 15 ), ExtResource( 22 ), ExtResource( 14 ), ExtResource( 9 ), ExtResource( 37 ), ExtResource( 23 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 18 ), ExtResource( 7 ), ExtResource( 34 ) ], -"loop": true, -"name": "boost-speed-left-01", -"speed": 50.0 -}, { -"frames": [ ExtResource( 114 ), ExtResource( 128 ), ExtResource( 93 ), ExtResource( 107 ), ExtResource( 117 ), ExtResource( 102 ), ExtResource( 81 ), ExtResource( 118 ), ExtResource( 76 ), ExtResource( 115 ), ExtResource( 127 ), ExtResource( 123 ), ExtResource( 113 ), ExtResource( 77 ), ExtResource( 78 ), ExtResource( 124 ), ExtResource( 94 ), ExtResource( 112 ), ExtResource( 131 ), ExtResource( 95 ) ], -"loop": true, -"name": "boost-speed-right-03", -"speed": 50.0 -}, { -"frames": [ ExtResource( 48 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 32 ), ExtResource( 13 ), ExtResource( 40 ), ExtResource( 6 ), ExtResource( 15 ), ExtResource( 22 ), ExtResource( 14 ), ExtResource( 9 ), ExtResource( 37 ), ExtResource( 23 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 18 ), ExtResource( 7 ), ExtResource( 34 ) ], -"loop": true, -"name": "move-speed-left-01", -"speed": 35.0 -}, { -"frames": [ ExtResource( 48 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 32 ), ExtResource( 13 ), ExtResource( 40 ), ExtResource( 6 ), ExtResource( 15 ), ExtResource( 22 ), ExtResource( 14 ), ExtResource( 9 ), ExtResource( 37 ), ExtResource( 23 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 18 ), ExtResource( 7 ), ExtResource( 34 ) ], -"loop": true, -"name": "idle-speed-left-01", -"speed": 25.0 -}, { -"frames": [ ExtResource( 70 ), ExtResource( 49 ), ExtResource( 74 ), ExtResource( 75 ), ExtResource( 28 ), ExtResource( 52 ), ExtResource( 53 ), ExtResource( 55 ), ExtResource( 150 ), ExtResource( 156 ), ExtResource( 138 ), ExtResource( 161 ), ExtResource( 145 ), ExtResource( 148 ), ExtResource( 147 ), ExtResource( 133 ), ExtResource( 164 ), ExtResource( 134 ), ExtResource( 152 ), ExtResource( 160 ) ], -"loop": true, -"name": "boost-speed-left-03", -"speed": 50.0 -}, { -"frames": [ ExtResource( 162 ), ExtResource( 135 ), ExtResource( 146 ), ExtResource( 141 ), ExtResource( 143 ), ExtResource( 163 ), ExtResource( 149 ), ExtResource( 136 ), ExtResource( 154 ), ExtResource( 137 ), ExtResource( 165 ), ExtResource( 142 ), ExtResource( 139 ), ExtResource( 159 ), ExtResource( 140 ), ExtResource( 155 ), ExtResource( 144 ), ExtResource( 151 ), ExtResource( 153 ), ExtResource( 166 ) ], -"loop": true, -"name": "boost-speed-left-04", -"speed": 50.0 -}, { -"frames": [ ExtResource( 167 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 126 ), ExtResource( 90 ), ExtResource( 89 ), ExtResource( 97 ), ExtResource( 88 ), ExtResource( 98 ), ExtResource( 91 ), ExtResource( 125 ), ExtResource( 105 ), ExtResource( 82 ), ExtResource( 84 ), ExtResource( 92 ), ExtResource( 103 ), ExtResource( 122 ), ExtResource( 130 ), ExtResource( 104 ), ExtResource( 116 ) ], -"loop": true, -"name": "boost-speed-right-02", -"speed": 50.0 -}, { -"frames": [ ExtResource( 5 ), ExtResource( 42 ), ExtResource( 35 ), ExtResource( 24 ), ExtResource( 8 ), ExtResource( 31 ), ExtResource( 30 ), ExtResource( 38 ), ExtResource( 10 ), ExtResource( 43 ), ExtResource( 41 ), ExtResource( 33 ), ExtResource( 44 ), ExtResource( 19 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 36 ), ExtResource( 12 ), ExtResource( 45 ), ExtResource( 21 ) ], -"loop": true, -"name": "boost-speed-right-01", -"speed": 50.0 -}, { "frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], "loop": true, "name": "idle-speed-right-04", @@ -238,39 +188,89 @@ animations = [ { "name": "move-speed-left-03", "speed": 35.0 }, { -"frames": [ ExtResource( 167 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 126 ), ExtResource( 90 ), ExtResource( 89 ), ExtResource( 97 ), ExtResource( 88 ), ExtResource( 98 ), ExtResource( 91 ), ExtResource( 125 ), ExtResource( 105 ), ExtResource( 82 ), ExtResource( 84 ), ExtResource( 92 ), ExtResource( 103 ), ExtResource( 122 ), ExtResource( 130 ), ExtResource( 104 ), ExtResource( 116 ) ], -"loop": true, -"name": "idle-speed-right-02", -"speed": 25.0 -}, { "frames": [ ExtResource( 5 ), ExtResource( 42 ), ExtResource( 35 ), ExtResource( 24 ), ExtResource( 8 ), ExtResource( 31 ), ExtResource( 30 ), ExtResource( 38 ), ExtResource( 10 ), ExtResource( 43 ), ExtResource( 41 ), ExtResource( 33 ), ExtResource( 44 ), ExtResource( 19 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 36 ), ExtResource( 12 ), ExtResource( 45 ), ExtResource( 21 ) ], "loop": true, "name": "move-speed-right-01", "speed": 35.0 }, { -"frames": [ ExtResource( 114 ), ExtResource( 128 ), ExtResource( 93 ), ExtResource( 107 ), ExtResource( 117 ), ExtResource( 102 ), ExtResource( 81 ), ExtResource( 118 ), ExtResource( 76 ), ExtResource( 115 ), ExtResource( 127 ), ExtResource( 123 ), ExtResource( 113 ), ExtResource( 77 ), ExtResource( 78 ), ExtResource( 124 ), ExtResource( 94 ), ExtResource( 112 ), ExtResource( 131 ), ExtResource( 95 ) ], -"loop": true, -"name": "move-speed-right-03", -"speed": 35.0 -}, { -"frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], -"loop": true, -"name": "boost-speed-right-04", -"speed": 50.0 -}, { -"frames": [ ExtResource( 167 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 126 ), ExtResource( 90 ), ExtResource( 89 ), ExtResource( 97 ), ExtResource( 88 ), ExtResource( 98 ), ExtResource( 91 ), ExtResource( 125 ), ExtResource( 105 ), ExtResource( 82 ), ExtResource( 84 ), ExtResource( 92 ), ExtResource( 103 ), ExtResource( 122 ), ExtResource( 130 ), ExtResource( 104 ), ExtResource( 116 ) ], -"loop": true, -"name": "move-speed-right-02", -"speed": 35.0 -}, { "frames": [ ExtResource( 73 ), ExtResource( 57 ), ExtResource( 65 ), ExtResource( 64 ), ExtResource( 54 ), ExtResource( 71 ), ExtResource( 58 ), ExtResource( 66 ), ExtResource( 62 ), ExtResource( 59 ), ExtResource( 56 ), ExtResource( 60 ), ExtResource( 63 ), ExtResource( 50 ), ExtResource( 61 ), ExtResource( 67 ), ExtResource( 72 ), ExtResource( 51 ), ExtResource( 68 ), ExtResource( 69 ) ], "loop": true, "name": "move-speed-left-02", "speed": 35.0 }, { -"frames": [ ExtResource( 73 ), ExtResource( 57 ), ExtResource( 65 ), ExtResource( 64 ), ExtResource( 54 ), ExtResource( 71 ), ExtResource( 58 ), ExtResource( 66 ), ExtResource( 62 ), ExtResource( 59 ), ExtResource( 56 ), ExtResource( 60 ), ExtResource( 63 ), ExtResource( 50 ), ExtResource( 61 ), ExtResource( 67 ), ExtResource( 72 ), ExtResource( 51 ), ExtResource( 68 ), ExtResource( 69 ) ], +"frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], "loop": true, -"name": "idle-speed-left-02", +"name": "move-speed-right-04", +"speed": 35.0 +}, { +"frames": [ ExtResource( 48 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 32 ), ExtResource( 13 ), ExtResource( 40 ), ExtResource( 6 ), ExtResource( 15 ), ExtResource( 22 ), ExtResource( 14 ), ExtResource( 9 ), ExtResource( 37 ), ExtResource( 23 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 18 ), ExtResource( 7 ), ExtResource( 34 ) ], +"loop": true, +"name": "move-speed-left-01", +"speed": 35.0 +}, { +"frames": [ ExtResource( 162 ), ExtResource( 135 ), ExtResource( 146 ), ExtResource( 141 ), ExtResource( 143 ), ExtResource( 163 ), ExtResource( 149 ), ExtResource( 136 ), ExtResource( 154 ), ExtResource( 137 ), ExtResource( 165 ), ExtResource( 142 ), ExtResource( 139 ), ExtResource( 159 ), ExtResource( 140 ), ExtResource( 155 ), ExtResource( 144 ), ExtResource( 151 ), ExtResource( 153 ), ExtResource( 166 ) ], +"loop": true, +"name": "idle-speed-left-04", +"speed": 25.0 +}, { +"frames": [ ExtResource( 114 ), ExtResource( 128 ), ExtResource( 93 ), ExtResource( 107 ), ExtResource( 117 ), ExtResource( 102 ), ExtResource( 81 ), ExtResource( 118 ), ExtResource( 76 ), ExtResource( 115 ), ExtResource( 127 ), ExtResource( 123 ), ExtResource( 113 ), ExtResource( 77 ), ExtResource( 78 ), ExtResource( 124 ), ExtResource( 94 ), ExtResource( 112 ), ExtResource( 131 ), ExtResource( 95 ) ], +"loop": true, +"name": "boost-speed-right-03", +"speed": 50.0 +}, { +"frames": [ ExtResource( 70 ), ExtResource( 49 ), ExtResource( 74 ), ExtResource( 75 ), ExtResource( 28 ), ExtResource( 52 ), ExtResource( 53 ), ExtResource( 55 ), ExtResource( 150 ), ExtResource( 156 ), ExtResource( 138 ), ExtResource( 161 ), ExtResource( 145 ), ExtResource( 148 ), ExtResource( 147 ), ExtResource( 133 ), ExtResource( 164 ), ExtResource( 134 ), ExtResource( 152 ), ExtResource( 160 ) ], +"loop": true, +"name": "boost-speed-left-03", +"speed": 50.0 +}, { +"frames": [ ExtResource( 114 ), ExtResource( 128 ), ExtResource( 93 ), ExtResource( 107 ), ExtResource( 117 ), ExtResource( 102 ), ExtResource( 81 ), ExtResource( 118 ), ExtResource( 76 ), ExtResource( 115 ), ExtResource( 127 ), ExtResource( 123 ), ExtResource( 113 ), ExtResource( 77 ), ExtResource( 78 ), ExtResource( 124 ), ExtResource( 94 ), ExtResource( 112 ), ExtResource( 131 ), ExtResource( 95 ) ], +"loop": true, +"name": "move-speed-right-03", +"speed": 35.0 +}, { +"frames": [ ExtResource( 167 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 126 ), ExtResource( 90 ), ExtResource( 89 ), ExtResource( 97 ), ExtResource( 88 ), ExtResource( 98 ), ExtResource( 91 ), ExtResource( 125 ), ExtResource( 105 ), ExtResource( 82 ), ExtResource( 84 ), ExtResource( 92 ), ExtResource( 103 ), ExtResource( 122 ), ExtResource( 130 ), ExtResource( 104 ), ExtResource( 116 ) ], +"loop": true, +"name": "boost-speed-right-02", +"speed": 50.0 +}, { +"frames": [ ExtResource( 167 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 126 ), ExtResource( 90 ), ExtResource( 89 ), ExtResource( 97 ), ExtResource( 88 ), ExtResource( 98 ), ExtResource( 91 ), ExtResource( 125 ), ExtResource( 105 ), ExtResource( 82 ), ExtResource( 84 ), ExtResource( 92 ), ExtResource( 103 ), ExtResource( 122 ), ExtResource( 130 ), ExtResource( 104 ), ExtResource( 116 ) ], +"loop": true, +"name": "move-speed-right-02", +"speed": 35.0 +}, { +"frames": [ ExtResource( 48 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 32 ), ExtResource( 13 ), ExtResource( 40 ), ExtResource( 6 ), ExtResource( 15 ), ExtResource( 22 ), ExtResource( 14 ), ExtResource( 9 ), ExtResource( 37 ), ExtResource( 23 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 18 ), ExtResource( 7 ), ExtResource( 34 ) ], +"loop": true, +"name": "idle-speed-left-01", +"speed": 25.0 +}, { +"frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], +"loop": true, +"name": "boost-speed-right-04", +"speed": 50.0 +}, { +"frames": [ ExtResource( 5 ), ExtResource( 42 ), ExtResource( 35 ), ExtResource( 24 ), ExtResource( 8 ), ExtResource( 31 ), ExtResource( 30 ), ExtResource( 38 ), ExtResource( 10 ), ExtResource( 43 ), ExtResource( 41 ), ExtResource( 33 ), ExtResource( 44 ), ExtResource( 19 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 36 ), ExtResource( 12 ), ExtResource( 45 ), ExtResource( 21 ) ], +"loop": true, +"name": "boost-speed-right-01", +"speed": 50.0 +}, { +"frames": [ ExtResource( 5 ), ExtResource( 42 ), ExtResource( 35 ), ExtResource( 24 ), ExtResource( 8 ), ExtResource( 31 ), ExtResource( 30 ), ExtResource( 38 ), ExtResource( 10 ), ExtResource( 43 ), ExtResource( 41 ), ExtResource( 33 ), ExtResource( 44 ), ExtResource( 19 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 36 ), ExtResource( 12 ), ExtResource( 45 ), ExtResource( 21 ) ], +"loop": true, +"name": "idle-speed-right-01", +"speed": 25.0 +}, { +"frames": [ ExtResource( 162 ), ExtResource( 135 ), ExtResource( 146 ), ExtResource( 141 ), ExtResource( 143 ), ExtResource( 163 ), ExtResource( 149 ), ExtResource( 136 ), ExtResource( 154 ), ExtResource( 137 ), ExtResource( 165 ), ExtResource( 142 ), ExtResource( 139 ), ExtResource( 159 ), ExtResource( 140 ), ExtResource( 155 ), ExtResource( 144 ), ExtResource( 151 ), ExtResource( 153 ), ExtResource( 166 ) ], +"loop": true, +"name": "boost-speed-left-04", +"speed": 50.0 +}, { +"frames": [ ExtResource( 48 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 32 ), ExtResource( 13 ), ExtResource( 40 ), ExtResource( 6 ), ExtResource( 15 ), ExtResource( 22 ), ExtResource( 14 ), ExtResource( 9 ), ExtResource( 37 ), ExtResource( 23 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 18 ), ExtResource( 7 ), ExtResource( 34 ) ], +"loop": true, +"name": "boost-speed-left-01", +"speed": 50.0 +}, { +"frames": [ ExtResource( 167 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 126 ), ExtResource( 90 ), ExtResource( 89 ), ExtResource( 97 ), ExtResource( 88 ), ExtResource( 98 ), ExtResource( 91 ), ExtResource( 125 ), ExtResource( 105 ), ExtResource( 82 ), ExtResource( 84 ), ExtResource( 92 ), ExtResource( 103 ), ExtResource( 122 ), ExtResource( 130 ), ExtResource( 104 ), ExtResource( 116 ) ], +"loop": true, +"name": "idle-speed-right-02", "speed": 25.0 }, { "frames": [ ExtResource( 162 ), ExtResource( 135 ), ExtResource( 146 ), ExtResource( 141 ), ExtResource( 143 ), ExtResource( 163 ), ExtResource( 149 ), ExtResource( 136 ), ExtResource( 154 ), ExtResource( 137 ), ExtResource( 165 ), ExtResource( 142 ), ExtResource( 139 ), ExtResource( 159 ), ExtResource( 140 ), ExtResource( 155 ), ExtResource( 144 ), ExtResource( 151 ), ExtResource( 153 ), ExtResource( 166 ) ], @@ -307,28 +307,31 @@ radius = 41.5403 [sub_resource type="SpriteFrames" id=6] animations = [ { -"frames": [ ExtResource( 169 ) ], -"loop": true, -"name": "04", -"speed": 5.0 -}, { "frames": [ ExtResource( 170 ) ], "loop": true, "name": "03", "speed": 5.0 }, { -"frames": [ ExtResource( 27 ) ], -"loop": true, -"name": "01", -"speed": 5.0 -}, { "frames": [ ExtResource( 170 ) ], "loop": true, "name": "02", "speed": 5.0 +}, { +"frames": [ ExtResource( 169 ) ], +"loop": true, +"name": "04", +"speed": 5.0 +}, { +"frames": [ ExtResource( 27 ) ], +"loop": true, +"name": "01", +"speed": 5.0 } ] -[node name="player" type="KinematicBody2D" groups=["Net", "Player"]] +[node name="player" type="KinematicBody2D" groups=[ +"Net", +"Player", +]] script = ExtResource( 11 ) [node name="player_collider" type="CollisionShape2D" parent="."] From 589392a1b87d7c1aeb277096e35440aa1ed620b8 Mon Sep 17 00:00:00 2001 From: Alan Alexander Cerna <87852561+Kroppec@users.noreply.github.com> Date: Thu, 11 Nov 2021 20:34:53 +0200 Subject: [PATCH 07/10] [Medium] Implement phases --- .../player_handlers/player_body_handler.gd | 36 +++++++++++++++---- .../pre_processors/uin_pre_processor.gd | 6 ++-- .../assets/scripts/server_handlers/global.gd | 6 +++- 3 files changed, 39 insertions(+), 9 deletions(-) diff --git a/source/assets/scripts/player_handlers/player_body_handler.gd b/source/assets/scripts/player_handlers/player_body_handler.gd index 1d77927..c2c6dd2 100644 --- a/source/assets/scripts/player_handlers/player_body_handler.gd +++ b/source/assets/scripts/player_handlers/player_body_handler.gd @@ -146,15 +146,15 @@ func process_rotation(): func _process(delta: float) -> void: + user_input = UIN_preset_pre_processor_instance.update() + enter_phase_limits() if get_tree().is_network_server(): Global.phase_update_global() clientPhase = Global.get_current_phase() - print("MASTER:",clientPhase) else: if puppet_phase != null: clientPhase = puppet_phase Global.set_current_phase(clientPhase) - print("SLAVE:",clientPhase) $"weaponHolder/Player-character-theme-gun".play(theme) particleImage.load("res://source/assets/sprites/character/player/theme/" + theme + "/na/Player-character-theme-particle-"+theme+".png") particleTexture.create_from_image(particleImage) @@ -167,7 +167,6 @@ func _process(delta: float) -> void: elif $Particles2D.position.x < 0 and direction != "right": $Particles2D.position = Vector2(-$Particles2D.position.x,$Particles2D.position.y) $Particles2D.scale = -$Particles2D.scale - user_input = UIN_preset_pre_processor_instance.update() user_state = get_user_state() dimensions = get_dimensions() VDIR = VDIR_preset_pre_processor_instance.update(user_state, dimensions) @@ -261,7 +260,7 @@ func _physics_process(delta) -> void: rotate_weapon() choose_trajectory() enable_trajectory_line(trajectory_line) - if Input.is_action_just_released("input_shoot") and can_shoot and not is_reloading: + if user_input["shoot"] and can_shoot and not is_reloading: rpc("shoot", trajectory, get_tree().get_network_unique_id()) is_reloading = true reload_timer.start() @@ -480,5 +479,30 @@ func rotate_weapon(): $"weaponHolder/Player-character-theme-gun".rotation_degrees = weaponAngle pass - - +func enter_phase_limits(): + if clientPhase != null and clientPhase["active"] != null: + if clientPhase["active"]["phase_id"] == 0: + user_input["r_inc"] = false + user_input["r_dec"] = false + user_input["shoot"] = false + elif clientPhase["active"]["phase_id"] == 1: + user_input["left"] = false + user_input["right"] = false + user_input["up"] = false + user_input["down"] = false + user_input["shoot"] = false + elif clientPhase["active"]["phase_id"] == 2: + user_input["left"] = false + user_input["right"] = false + user_input["up"] = false + user_input["down"] = false + user_input["r_inc"] = false + user_input["r_dec"] = false + else: + user_input["left"] = false + user_input["right"] = false + user_input["up"] = false + user_input["down"] = false + user_input["r_inc"] = false + user_input["r_dec"] = false + user_input["shoot"] = false diff --git a/source/assets/scripts/pre_processors/uin_pre_processor.gd b/source/assets/scripts/pre_processors/uin_pre_processor.gd index dba47c5..bded22a 100644 --- a/source/assets/scripts/pre_processors/uin_pre_processor.gd +++ b/source/assets/scripts/pre_processors/uin_pre_processor.gd @@ -11,7 +11,8 @@ func _init() -> void: "debug": false, "enter": false, "r_inc": false, - "r_dec": false + "r_dec": false, + "shoot": false } pass @@ -25,6 +26,7 @@ func update(): "boost": Input.is_action_pressed("input_shift"), "enter": Input.is_action_pressed("input_enter"), "r_inc": Input.is_action_pressed("rotation_increase"), - "r_dec": Input.is_action_pressed("rotation_decrease") + "r_dec": Input.is_action_pressed("rotation_decrease"), + "shoot": Input.is_action_pressed("input_shoot") } return inputState diff --git a/source/assets/scripts/server_handlers/global.gd b/source/assets/scripts/server_handlers/global.gd index 9c37585..3308f1c 100644 --- a/source/assets/scripts/server_handlers/global.gd +++ b/source/assets/scripts/server_handlers/global.gd @@ -6,21 +6,25 @@ var alive_players = [] var clientPhase = { "0": { + "phase_id": 0, "phase_name": "Movement phase", "length": 2, "start_time": null }, "1": { + "phase_id": 1, "phase_name": "Weapon adjustment phase", "length": 2, "start_time": null }, "2": { + "phase_id": 2, "phase_name": "Bullet simulation phase", "length": 2, "start_time": null }, "3": { + "phase_id": 3, "phase_name": "Idle phase", "length": 2, "start_time": null @@ -37,7 +41,7 @@ func phase_update_global(): if activePhaseTracker != null: if clientPhase[str(activePhaseTracker)]["start_time"] != null: if currentTime["second"] + currentTime["minute"] * 60 - clientPhase[str(activePhaseTracker)]["start_time"]["second"] - clientPhase[str(activePhaseTracker)]["start_time"]["minute"] * 60 > clientPhase[str(activePhaseTracker)]["length"]: - if activePhaseTracker == clientPhase.size - 1: + if activePhaseTracker == clientPhase.size() - 2: clientPhase[str(activePhaseTracker)]["start_time"] = null activePhaseTracker = 0 else: From d7bab7a6ba89dd489cf6dac5d0cd05d0ede82525 Mon Sep 17 00:00:00 2001 From: Alan Alexander Cerna <87852561+Kroppec@users.noreply.github.com> Date: Thu, 11 Nov 2021 21:33:36 +0200 Subject: [PATCH 08/10] [EXPERIMENTAL] --- .../player_handlers/player_body_handler.gd | 32 ++--------------- .../pre_processors/uin_pre_processor.gd | 34 ++++++++++++++++++- 2 files changed, 35 insertions(+), 31 deletions(-) diff --git a/source/assets/scripts/player_handlers/player_body_handler.gd b/source/assets/scripts/player_handlers/player_body_handler.gd index c2c6dd2..c8a44ad 100644 --- a/source/assets/scripts/player_handlers/player_body_handler.gd +++ b/source/assets/scripts/player_handlers/player_body_handler.gd @@ -146,11 +146,11 @@ func process_rotation(): func _process(delta: float) -> void: - user_input = UIN_preset_pre_processor_instance.update() - enter_phase_limits() + user_input = UIN_preset_pre_processor_instance.update(clientPhase) if get_tree().is_network_server(): Global.phase_update_global() clientPhase = Global.get_current_phase() + theme = "03" else: if puppet_phase != null: clientPhase = puppet_phase @@ -478,31 +478,3 @@ func rotate_weapon(): $"weaponHolder/Player-character-theme-gun".position = weaponPosition $"weaponHolder/Player-character-theme-gun".rotation_degrees = weaponAngle pass - -func enter_phase_limits(): - if clientPhase != null and clientPhase["active"] != null: - if clientPhase["active"]["phase_id"] == 0: - user_input["r_inc"] = false - user_input["r_dec"] = false - user_input["shoot"] = false - elif clientPhase["active"]["phase_id"] == 1: - user_input["left"] = false - user_input["right"] = false - user_input["up"] = false - user_input["down"] = false - user_input["shoot"] = false - elif clientPhase["active"]["phase_id"] == 2: - user_input["left"] = false - user_input["right"] = false - user_input["up"] = false - user_input["down"] = false - user_input["r_inc"] = false - user_input["r_dec"] = false - else: - user_input["left"] = false - user_input["right"] = false - user_input["up"] = false - user_input["down"] = false - user_input["r_inc"] = false - user_input["r_dec"] = false - user_input["shoot"] = false diff --git a/source/assets/scripts/pre_processors/uin_pre_processor.gd b/source/assets/scripts/pre_processors/uin_pre_processor.gd index bded22a..6f2db51 100644 --- a/source/assets/scripts/pre_processors/uin_pre_processor.gd +++ b/source/assets/scripts/pre_processors/uin_pre_processor.gd @@ -9,6 +9,7 @@ func _init() -> void: "up": false, "down": false, "debug": false, + "boost": false, "enter": false, "r_inc": false, "r_dec": false, @@ -16,7 +17,7 @@ func _init() -> void: } pass -func update(): +func update(clientPhase): inputState = { "right": Input.is_action_pressed("input_right"), "left": Input.is_action_pressed("input_left"), @@ -29,4 +30,35 @@ func update(): "r_dec": Input.is_action_pressed("rotation_decrease"), "shoot": Input.is_action_pressed("input_shoot") } + if clientPhase != null and clientPhase["active"] != null: + if clientPhase["active"]["phase_id"] == 0: + inputState["r_inc"] = false + inputState["r_dec"] = false + inputState["shoot"] = false + elif clientPhase["active"]["phase_id"] == 1: + inputState["left"] = false + inputState["right"] = false + inputState["up"] = false + inputState["down"] = false + inputState["shoot"] = false + elif clientPhase["active"]["phase_id"] == 2: + inputState["left"] = false + inputState["right"] = false + inputState["up"] = false + inputState["down"] = false + inputState["r_inc"] = false + inputState["r_dec"] = false + else: + inputState = { + "right": false, + "left": false, + "up": false, + "down": false, + "debug": false, + "boost": false, + "enter": false, + "r_inc": false, + "r_dec": false, + "shoot": false + } return inputState From 439e1dcdb3ca9473ccbc355b34dedce971fdacba Mon Sep 17 00:00:00 2001 From: Alan Alexander Cerna <87852561+Kroppec@users.noreply.github.com> Date: Fri, 12 Nov 2021 18:41:38 +0200 Subject: [PATCH 09/10] Fixed game phase sync --- .../player_handlers/player_body_handler.gd | 2 +- source/entities/player/player_node.tscn | 135 +++++++++--------- .../trinity_site/trinity_site_level.tscn | 2 +- 3 files changed, 68 insertions(+), 71 deletions(-) diff --git a/source/assets/scripts/player_handlers/player_body_handler.gd b/source/assets/scripts/player_handlers/player_body_handler.gd index c8a44ad..d26c42e 100644 --- a/source/assets/scripts/player_handlers/player_body_handler.gd +++ b/source/assets/scripts/player_handlers/player_body_handler.gd @@ -146,7 +146,7 @@ func process_rotation(): func _process(delta: float) -> void: - user_input = UIN_preset_pre_processor_instance.update(clientPhase) + user_input = UIN_preset_pre_processor_instance.update(Global.get_current_phase()) if get_tree().is_network_server(): Global.phase_update_global() clientPhase = Global.get_current_phase() diff --git a/source/entities/player/player_node.tscn b/source/entities/player/player_node.tscn index d2f5f0e..eaee8ae 100644 --- a/source/entities/player/player_node.tscn +++ b/source/entities/player/player_node.tscn @@ -175,54 +175,59 @@ animations = [ { "frames": [ ExtResource( 73 ), ExtResource( 57 ), ExtResource( 65 ), ExtResource( 64 ), ExtResource( 54 ), ExtResource( 71 ), ExtResource( 58 ), ExtResource( 66 ), ExtResource( 62 ), ExtResource( 59 ), ExtResource( 56 ), ExtResource( 60 ), ExtResource( 63 ), ExtResource( 50 ), ExtResource( 61 ), ExtResource( 67 ), ExtResource( 72 ), ExtResource( 51 ), ExtResource( 68 ), ExtResource( 69 ) ], "loop": true, -"name": "idle-speed-left-02", -"speed": 25.0 -}, { -"frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], -"loop": true, -"name": "idle-speed-right-04", -"speed": 25.0 +"name": "move-speed-left-02", +"speed": 35.0 }, { "frames": [ ExtResource( 70 ), ExtResource( 49 ), ExtResource( 74 ), ExtResource( 75 ), ExtResource( 28 ), ExtResource( 52 ), ExtResource( 53 ), ExtResource( 55 ), ExtResource( 150 ), ExtResource( 156 ), ExtResource( 138 ), ExtResource( 161 ), ExtResource( 145 ), ExtResource( 148 ), ExtResource( 147 ), ExtResource( 133 ), ExtResource( 164 ), ExtResource( 134 ), ExtResource( 152 ), ExtResource( 160 ) ], "loop": true, "name": "move-speed-left-03", "speed": 35.0 }, { -"frames": [ ExtResource( 5 ), ExtResource( 42 ), ExtResource( 35 ), ExtResource( 24 ), ExtResource( 8 ), ExtResource( 31 ), ExtResource( 30 ), ExtResource( 38 ), ExtResource( 10 ), ExtResource( 43 ), ExtResource( 41 ), ExtResource( 33 ), ExtResource( 44 ), ExtResource( 19 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 36 ), ExtResource( 12 ), ExtResource( 45 ), ExtResource( 21 ) ], -"loop": true, -"name": "move-speed-right-01", -"speed": 35.0 -}, { -"frames": [ ExtResource( 73 ), ExtResource( 57 ), ExtResource( 65 ), ExtResource( 64 ), ExtResource( 54 ), ExtResource( 71 ), ExtResource( 58 ), ExtResource( 66 ), ExtResource( 62 ), ExtResource( 59 ), ExtResource( 56 ), ExtResource( 60 ), ExtResource( 63 ), ExtResource( 50 ), ExtResource( 61 ), ExtResource( 67 ), ExtResource( 72 ), ExtResource( 51 ), ExtResource( 68 ), ExtResource( 69 ) ], -"loop": true, -"name": "move-speed-left-02", -"speed": 35.0 -}, { -"frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], -"loop": true, -"name": "move-speed-right-04", -"speed": 35.0 -}, { -"frames": [ ExtResource( 48 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 32 ), ExtResource( 13 ), ExtResource( 40 ), ExtResource( 6 ), ExtResource( 15 ), ExtResource( 22 ), ExtResource( 14 ), ExtResource( 9 ), ExtResource( 37 ), ExtResource( 23 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 18 ), ExtResource( 7 ), ExtResource( 34 ) ], -"loop": true, -"name": "move-speed-left-01", -"speed": 35.0 -}, { "frames": [ ExtResource( 162 ), ExtResource( 135 ), ExtResource( 146 ), ExtResource( 141 ), ExtResource( 143 ), ExtResource( 163 ), ExtResource( 149 ), ExtResource( 136 ), ExtResource( 154 ), ExtResource( 137 ), ExtResource( 165 ), ExtResource( 142 ), ExtResource( 139 ), ExtResource( 159 ), ExtResource( 140 ), ExtResource( 155 ), ExtResource( 144 ), ExtResource( 151 ), ExtResource( 153 ), ExtResource( 166 ) ], "loop": true, "name": "idle-speed-left-04", "speed": 25.0 }, { -"frames": [ ExtResource( 114 ), ExtResource( 128 ), ExtResource( 93 ), ExtResource( 107 ), ExtResource( 117 ), ExtResource( 102 ), ExtResource( 81 ), ExtResource( 118 ), ExtResource( 76 ), ExtResource( 115 ), ExtResource( 127 ), ExtResource( 123 ), ExtResource( 113 ), ExtResource( 77 ), ExtResource( 78 ), ExtResource( 124 ), ExtResource( 94 ), ExtResource( 112 ), ExtResource( 131 ), ExtResource( 95 ) ], +"frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], "loop": true, -"name": "boost-speed-right-03", +"name": "boost-speed-right-04", "speed": 50.0 }, { -"frames": [ ExtResource( 70 ), ExtResource( 49 ), ExtResource( 74 ), ExtResource( 75 ), ExtResource( 28 ), ExtResource( 52 ), ExtResource( 53 ), ExtResource( 55 ), ExtResource( 150 ), ExtResource( 156 ), ExtResource( 138 ), ExtResource( 161 ), ExtResource( 145 ), ExtResource( 148 ), ExtResource( 147 ), ExtResource( 133 ), ExtResource( 164 ), ExtResource( 134 ), ExtResource( 152 ), ExtResource( 160 ) ], +"frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], "loop": true, -"name": "boost-speed-left-03", +"name": "idle-speed-right-04", +"speed": 25.0 +}, { +"frames": [ ExtResource( 167 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 126 ), ExtResource( 90 ), ExtResource( 89 ), ExtResource( 97 ), ExtResource( 88 ), ExtResource( 98 ), ExtResource( 91 ), ExtResource( 125 ), ExtResource( 105 ), ExtResource( 82 ), ExtResource( 84 ), ExtResource( 92 ), ExtResource( 103 ), ExtResource( 122 ), ExtResource( 130 ), ExtResource( 104 ), ExtResource( 116 ) ], +"loop": true, +"name": "idle-speed-right-02", +"speed": 25.0 +}, { +"frames": [ ExtResource( 73 ), ExtResource( 57 ), ExtResource( 65 ), ExtResource( 64 ), ExtResource( 54 ), ExtResource( 71 ), ExtResource( 58 ), ExtResource( 66 ), ExtResource( 62 ), ExtResource( 59 ), ExtResource( 56 ), ExtResource( 60 ), ExtResource( 63 ), ExtResource( 50 ), ExtResource( 61 ), ExtResource( 67 ), ExtResource( 72 ), ExtResource( 51 ), ExtResource( 68 ), ExtResource( 69 ) ], +"loop": true, +"name": "idle-speed-left-02", +"speed": 25.0 +}, { +"frames": [ ExtResource( 5 ), ExtResource( 42 ), ExtResource( 35 ), ExtResource( 24 ), ExtResource( 8 ), ExtResource( 31 ), ExtResource( 30 ), ExtResource( 38 ), ExtResource( 10 ), ExtResource( 43 ), ExtResource( 41 ), ExtResource( 33 ), ExtResource( 44 ), ExtResource( 19 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 36 ), ExtResource( 12 ), ExtResource( 45 ), ExtResource( 21 ) ], +"loop": true, +"name": "move-speed-right-01", +"speed": 35.0 +}, { +"frames": [ ExtResource( 167 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 126 ), ExtResource( 90 ), ExtResource( 89 ), ExtResource( 97 ), ExtResource( 88 ), ExtResource( 98 ), ExtResource( 91 ), ExtResource( 125 ), ExtResource( 105 ), ExtResource( 82 ), ExtResource( 84 ), ExtResource( 92 ), ExtResource( 103 ), ExtResource( 122 ), ExtResource( 130 ), ExtResource( 104 ), ExtResource( 116 ) ], +"loop": true, +"name": "move-speed-right-02", +"speed": 35.0 +}, { +"frames": [ ExtResource( 5 ), ExtResource( 42 ), ExtResource( 35 ), ExtResource( 24 ), ExtResource( 8 ), ExtResource( 31 ), ExtResource( 30 ), ExtResource( 38 ), ExtResource( 10 ), ExtResource( 43 ), ExtResource( 41 ), ExtResource( 33 ), ExtResource( 44 ), ExtResource( 19 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 36 ), ExtResource( 12 ), ExtResource( 45 ), ExtResource( 21 ) ], +"loop": true, +"name": "boost-speed-right-01", "speed": 50.0 }, { +"frames": [ ExtResource( 48 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 32 ), ExtResource( 13 ), ExtResource( 40 ), ExtResource( 6 ), ExtResource( 15 ), ExtResource( 22 ), ExtResource( 14 ), ExtResource( 9 ), ExtResource( 37 ), ExtResource( 23 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 18 ), ExtResource( 7 ), ExtResource( 34 ) ], +"loop": true, +"name": "idle-speed-left-01", +"speed": 25.0 +}, { "frames": [ ExtResource( 114 ), ExtResource( 128 ), ExtResource( 93 ), ExtResource( 107 ), ExtResource( 117 ), ExtResource( 102 ), ExtResource( 81 ), ExtResource( 118 ), ExtResource( 76 ), ExtResource( 115 ), ExtResource( 127 ), ExtResource( 123 ), ExtResource( 113 ), ExtResource( 77 ), ExtResource( 78 ), ExtResource( 124 ), ExtResource( 94 ), ExtResource( 112 ), ExtResource( 131 ), ExtResource( 95 ) ], "loop": true, "name": "move-speed-right-03", @@ -233,49 +238,44 @@ animations = [ { "name": "boost-speed-right-02", "speed": 50.0 }, { -"frames": [ ExtResource( 167 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 126 ), ExtResource( 90 ), ExtResource( 89 ), ExtResource( 97 ), ExtResource( 88 ), ExtResource( 98 ), ExtResource( 91 ), ExtResource( 125 ), ExtResource( 105 ), ExtResource( 82 ), ExtResource( 84 ), ExtResource( 92 ), ExtResource( 103 ), ExtResource( 122 ), ExtResource( 130 ), ExtResource( 104 ), ExtResource( 116 ) ], -"loop": true, -"name": "move-speed-right-02", -"speed": 35.0 -}, { -"frames": [ ExtResource( 48 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 32 ), ExtResource( 13 ), ExtResource( 40 ), ExtResource( 6 ), ExtResource( 15 ), ExtResource( 22 ), ExtResource( 14 ), ExtResource( 9 ), ExtResource( 37 ), ExtResource( 23 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 18 ), ExtResource( 7 ), ExtResource( 34 ) ], -"loop": true, -"name": "idle-speed-left-01", -"speed": 25.0 -}, { -"frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], -"loop": true, -"name": "boost-speed-right-04", -"speed": 50.0 -}, { -"frames": [ ExtResource( 5 ), ExtResource( 42 ), ExtResource( 35 ), ExtResource( 24 ), ExtResource( 8 ), ExtResource( 31 ), ExtResource( 30 ), ExtResource( 38 ), ExtResource( 10 ), ExtResource( 43 ), ExtResource( 41 ), ExtResource( 33 ), ExtResource( 44 ), ExtResource( 19 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 36 ), ExtResource( 12 ), ExtResource( 45 ), ExtResource( 21 ) ], -"loop": true, -"name": "boost-speed-right-01", -"speed": 50.0 -}, { -"frames": [ ExtResource( 5 ), ExtResource( 42 ), ExtResource( 35 ), ExtResource( 24 ), ExtResource( 8 ), ExtResource( 31 ), ExtResource( 30 ), ExtResource( 38 ), ExtResource( 10 ), ExtResource( 43 ), ExtResource( 41 ), ExtResource( 33 ), ExtResource( 44 ), ExtResource( 19 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 36 ), ExtResource( 12 ), ExtResource( 45 ), ExtResource( 21 ) ], -"loop": true, -"name": "idle-speed-right-01", -"speed": 25.0 -}, { "frames": [ ExtResource( 162 ), ExtResource( 135 ), ExtResource( 146 ), ExtResource( 141 ), ExtResource( 143 ), ExtResource( 163 ), ExtResource( 149 ), ExtResource( 136 ), ExtResource( 154 ), ExtResource( 137 ), ExtResource( 165 ), ExtResource( 142 ), ExtResource( 139 ), ExtResource( 159 ), ExtResource( 140 ), ExtResource( 155 ), ExtResource( 144 ), ExtResource( 151 ), ExtResource( 153 ), ExtResource( 166 ) ], "loop": true, "name": "boost-speed-left-04", "speed": 50.0 }, { +"frames": [ ExtResource( 162 ), ExtResource( 135 ), ExtResource( 146 ), ExtResource( 141 ), ExtResource( 143 ), ExtResource( 163 ), ExtResource( 149 ), ExtResource( 136 ), ExtResource( 154 ), ExtResource( 137 ), ExtResource( 165 ), ExtResource( 142 ), ExtResource( 139 ), ExtResource( 159 ), ExtResource( 140 ), ExtResource( 155 ), ExtResource( 144 ), ExtResource( 151 ), ExtResource( 153 ), ExtResource( 166 ) ], +"loop": true, +"name": "move-speed-left-04", +"speed": 35.0 +}, { "frames": [ ExtResource( 48 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 32 ), ExtResource( 13 ), ExtResource( 40 ), ExtResource( 6 ), ExtResource( 15 ), ExtResource( 22 ), ExtResource( 14 ), ExtResource( 9 ), ExtResource( 37 ), ExtResource( 23 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 18 ), ExtResource( 7 ), ExtResource( 34 ) ], "loop": true, "name": "boost-speed-left-01", "speed": 50.0 }, { -"frames": [ ExtResource( 167 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 126 ), ExtResource( 90 ), ExtResource( 89 ), ExtResource( 97 ), ExtResource( 88 ), ExtResource( 98 ), ExtResource( 91 ), ExtResource( 125 ), ExtResource( 105 ), ExtResource( 82 ), ExtResource( 84 ), ExtResource( 92 ), ExtResource( 103 ), ExtResource( 122 ), ExtResource( 130 ), ExtResource( 104 ), ExtResource( 116 ) ], +"frames": [ ExtResource( 70 ), ExtResource( 49 ), ExtResource( 74 ), ExtResource( 75 ), ExtResource( 28 ), ExtResource( 52 ), ExtResource( 53 ), ExtResource( 55 ), ExtResource( 150 ), ExtResource( 156 ), ExtResource( 138 ), ExtResource( 161 ), ExtResource( 145 ), ExtResource( 148 ), ExtResource( 147 ), ExtResource( 133 ), ExtResource( 164 ), ExtResource( 134 ), ExtResource( 152 ), ExtResource( 160 ) ], "loop": true, -"name": "idle-speed-right-02", +"name": "boost-speed-left-03", +"speed": 50.0 +}, { +"frames": [ ExtResource( 48 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 32 ), ExtResource( 13 ), ExtResource( 40 ), ExtResource( 6 ), ExtResource( 15 ), ExtResource( 22 ), ExtResource( 14 ), ExtResource( 9 ), ExtResource( 37 ), ExtResource( 23 ), ExtResource( 39 ), ExtResource( 20 ), ExtResource( 18 ), ExtResource( 7 ), ExtResource( 34 ) ], +"loop": true, +"name": "move-speed-left-01", +"speed": 35.0 +}, { +"frames": [ ExtResource( 5 ), ExtResource( 42 ), ExtResource( 35 ), ExtResource( 24 ), ExtResource( 8 ), ExtResource( 31 ), ExtResource( 30 ), ExtResource( 38 ), ExtResource( 10 ), ExtResource( 43 ), ExtResource( 41 ), ExtResource( 33 ), ExtResource( 44 ), ExtResource( 19 ), ExtResource( 29 ), ExtResource( 25 ), ExtResource( 36 ), ExtResource( 12 ), ExtResource( 45 ), ExtResource( 21 ) ], +"loop": true, +"name": "idle-speed-right-01", "speed": 25.0 }, { -"frames": [ ExtResource( 162 ), ExtResource( 135 ), ExtResource( 146 ), ExtResource( 141 ), ExtResource( 143 ), ExtResource( 163 ), ExtResource( 149 ), ExtResource( 136 ), ExtResource( 154 ), ExtResource( 137 ), ExtResource( 165 ), ExtResource( 142 ), ExtResource( 139 ), ExtResource( 159 ), ExtResource( 140 ), ExtResource( 155 ), ExtResource( 144 ), ExtResource( 151 ), ExtResource( 153 ), ExtResource( 166 ) ], +"frames": [ ExtResource( 114 ), ExtResource( 128 ), ExtResource( 93 ), ExtResource( 107 ), ExtResource( 117 ), ExtResource( 102 ), ExtResource( 81 ), ExtResource( 118 ), ExtResource( 76 ), ExtResource( 115 ), ExtResource( 127 ), ExtResource( 123 ), ExtResource( 113 ), ExtResource( 77 ), ExtResource( 78 ), ExtResource( 124 ), ExtResource( 94 ), ExtResource( 112 ), ExtResource( 131 ), ExtResource( 95 ) ], "loop": true, -"name": "move-speed-left-04", +"name": "boost-speed-right-03", +"speed": 50.0 +}, { +"frames": [ ExtResource( 99 ), ExtResource( 83 ), ExtResource( 109 ), ExtResource( 111 ), ExtResource( 101 ), ExtResource( 96 ), ExtResource( 79 ), ExtResource( 132 ), ExtResource( 119 ), ExtResource( 80 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 106 ), ExtResource( 121 ), ExtResource( 129 ), ExtResource( 100 ), ExtResource( 108 ), ExtResource( 110 ), ExtResource( 120 ) ], +"loop": true, +"name": "move-speed-right-04", "speed": 35.0 } ] @@ -309,11 +309,6 @@ radius = 41.5403 animations = [ { "frames": [ ExtResource( 170 ) ], "loop": true, -"name": "03", -"speed": 5.0 -}, { -"frames": [ ExtResource( 170 ) ], -"loop": true, "name": "02", "speed": 5.0 }, { @@ -326,12 +321,14 @@ animations = [ { "loop": true, "name": "01", "speed": 5.0 +}, { +"frames": [ ExtResource( 170 ) ], +"loop": true, +"name": "03", +"speed": 5.0 } ] -[node name="player" type="KinematicBody2D" groups=[ -"Net", -"Player", -]] +[node name="player" type="KinematicBody2D" groups=["Net", "Player"]] script = ExtResource( 11 ) [node name="player_collider" type="CollisionShape2D" parent="."] diff --git a/source/levels/trinity_site/trinity_site_level.tscn b/source/levels/trinity_site/trinity_site_level.tscn index 9e5c5b5..755fcab 100644 --- a/source/levels/trinity_site/trinity_site_level.tscn +++ b/source/levels/trinity_site/trinity_site_level.tscn @@ -144,10 +144,10 @@ margin_left = 2.37842 margin_top = -35.5 margin_right = 2.37842 margin_bottom = 106.5 -custom_fonts/font = SubResource( 1 ) custom_colors/font_color_shadow = Color( 0, 0, 0, 1 ) custom_constants/shadow_offset_x = 6 custom_constants/shadow_offset_y = 6 +custom_fonts/font = SubResource( 1 ) text = "You are the winner" align = 1 valign = 1 From 3b6cfd7906921d7585999543a0e32dc1042ab412 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Fri, 12 Nov 2021 20:10:11 +0200 Subject: [PATCH 10/10] Trinity-site fix --- project.godot | 42 ++++++++++--------- .../trinity_site/trinity_site_level.tscn | 14 ++++++- 2 files changed, 36 insertions(+), 20 deletions(-) diff --git a/project.godot b/project.godot index ef9d7a2..c90e8a2 100644 --- a/project.godot +++ b/project.godot @@ -21,6 +21,10 @@ Global="*res://source/assets/scripts/server_handlers/global.gd" PersistentNodes="*res://source/scenes/OVERLAY/elements/persistent_nodes.tscn" FullscreenController="*res://source/assets/scripts/system/fullscreen_controller.gd" +[debug] + +settings/stdout/print_fps=true + [display] window/size/width=1920 @@ -38,42 +42,42 @@ fps=false input_right={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":68,"physical_scancode":0,"unicode":0,"echo":false,"script":null) -, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777233,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":68,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777233,"unicode":0,"echo":false,"script":null) ] } input_left={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":65,"physical_scancode":0,"unicode":0,"echo":false,"script":null) -, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777231,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":65,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777231,"unicode":0,"echo":false,"script":null) ] } input_up={ "deadzone": 0.49, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":87,"physical_scancode":0,"unicode":0,"echo":false,"script":null) -, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"physical_scancode":0,"unicode":0,"echo":false,"script":null) -, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":32,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":87,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":32,"unicode":0,"echo":false,"script":null) ] } input_down={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":83,"physical_scancode":0,"unicode":0,"echo":false,"script":null) -, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":83,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"unicode":0,"echo":false,"script":null) ] } input_debug={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":96,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":96,"unicode":0,"echo":false,"script":null) ] } input_enter={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777221,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777221,"unicode":0,"echo":false,"script":null) ] } input_shift={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777237,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777237,"unicode":0,"echo":false,"script":null) ] } input_shoot={ @@ -83,37 +87,37 @@ input_shoot={ } esc={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777217,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777217,"unicode":0,"echo":false,"script":null) ] } rotation_increase={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":69,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":69,"unicode":0,"echo":false,"script":null) ] } rotation_decrease={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":81,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":81,"unicode":0,"echo":false,"script":null) ] } line={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777351,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777351,"unicode":0,"echo":false,"script":null) ] } sine={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777352,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777352,"unicode":0,"echo":false,"script":null) ] } hyper={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777353,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777353,"unicode":0,"echo":false,"script":null) ] } parab={ "deadzone": 0.5, -"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777354,"physical_scancode":0,"unicode":0,"echo":false,"script":null) +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777354,"unicode":0,"echo":false,"script":null) ] } fullscreen_toggle={ diff --git a/source/levels/trinity_site/trinity_site_level.tscn b/source/levels/trinity_site/trinity_site_level.tscn index 52ef920..87baffc 100644 --- a/source/levels/trinity_site/trinity_site_level.tscn +++ b/source/levels/trinity_site/trinity_site_level.tscn @@ -11,6 +11,7 @@ [ext_resource path="res://source/entities/grass/grass_node.tscn" type="PackedScene" id=9] [ext_resource path="res://source/levels/trinity_site/images/trinity_site_level_layout_level_design_z_index_2.svg" type="Texture" id=10] [ext_resource path="res://source/levels/trinity_site/images/trinity_site_level_layout_level_design_z_index_1.svg" type="Texture" id=11] +[ext_resource path="res://source/fonts/oxygen/oxygen_bold.tres" type="DynamicFont" id=12] [ext_resource path="res://source/assets/scripts/trinity_site_body_handler.gd" type="Script" id=46] [sub_resource type="DynamicFont" id=1] @@ -165,10 +166,10 @@ margin_left = 2.37842 margin_top = -35.5 margin_right = 2.37842 margin_bottom = 106.5 +custom_fonts/font = SubResource( 1 ) custom_colors/font_color_shadow = Color( 0, 0, 0, 1 ) custom_constants/shadow_offset_x = 6 custom_constants/shadow_offset_y = 6 -custom_fonts/font = SubResource( 1 ) text = "You are the winner" align = 1 valign = 1 @@ -233,6 +234,17 @@ __meta__ = { "_edit_use_anchors_": false } +[node name="timer" type="Label" parent="."] +margin_right = 589.0 +margin_bottom = 175.0 +custom_fonts/font = ExtResource( 12 ) +text = "null" +align = 1 +valign = 1 +__meta__ = { +"_edit_use_anchors_": false +} + [connection signal="timeout" from="game_UI/Control/winner/win_timer" to="game_UI/Control/winner" method="_on_win_timer_timeout"] [connection signal="pressed" from="game_UI/Control/Line" to="game_UI/Control" method="_on_Line_pressed"] [connection signal="pressed" from="game_UI/Control/Sine" to="game_UI/Control" method="_on_Sine_pressed"]