diff --git a/maps/level_z.tscn b/maps/level_z.tscn index 8d2d0de..cca6728 100644 --- a/maps/level_z.tscn +++ b/maps/level_z.tscn @@ -24,19 +24,19 @@ texture = ExtResource("1_h5jcm") [node name="TileMap" type="TileMapLayer" parent="."] z_index = -100 use_parent_material = true -tile_map_data = PackedByteArray("AAAAAAsAAAAAAAAAAAABAAsAAAAAAAAAAAACAAsAAAAAAAAAAAAHAAsAAAAAAAAAAAAIAAsAAAAAAAAAAAAJAAsAAAAAAAAAAAAKAAsAAAAAAAAAAAALAAsAAAAAAAAAAAANAAsAAAAAAAAAAAAOAAsAAAAAAAAAAAAPAAsAAAAAAAAAAAAQAAsAAAAAAAAAAAARAAsAAAAAAAAAAAADAAsAAAAAAAAAAAAEAAsAAAAAAAAAAAAFAAsAAAAAAAAAAAAGAAsAAAAAAAAAAAAMAAsAAAAAAAAAAAAFAAoAAAAAAAAAAAAGAAoAAAAAAAAAAAAGAAkAAAAAAAAAAAAHAAkAAAAAAAAAAAAIAAkAAAAAAAAAAAAJAAkAAAAAAAAAAAAKAAkAAAAAAAAAAAALAAkAAAAAAAAAAAAMAAkAAAAAAAAAAAALAAoAAAAAAAAAAAAKAAoAAAAAAAAAAAAJAAoAAAAAAAAAAAAIAAoAAAAAAAAAAAAHAAoAAAAAAAAAAAAMAAoAAAAAAAAAAAANAAoAAAAAAAAAAAAOAAoAAAAAAAAAAAAPAAoAAAAAAAAAAAAPAAkAAAAAAAAAAAAQAAkAAAAAAAAAAAAQAAoAAAAAAAAAAAARAAkAAAAAAAAAAAARAAoAAAAAAAAAAAAFAAkAAAAAAAAAAAAEAAkAAAAAAAAAAAADAAkAAAAAAAAAAAACAAkAAAAAAAAAAAABAAkAAAAAAAAAAAABAAoAAAAAAAAAAAACAAoAAAAAAAAAAAADAAoAAAAAAAAAAAAEAAoAAAAAAAAAAAAAAAoAAAAAAAAAAAAAAAkAAAAAAAAAAAABAAgAAAAAAAAAAAABAAcAAAAAAAAAAAABAAYAAAAAAAAAAAABAAUAAAAAAAAAAAABAAQAAAAAAAAAAAABAAMAAAAAAAAAAAABAAIAAAAAAAAAAAANAAkAAAAAAAAAAAAOAAkAAAAAAAAAAAA=") +tile_map_data = PackedByteArray("AAAAAAsAAAAAAAAAAAABAAsAAAAAAAAAAAACAAsAAAAAAAAAAAAHAAsAAAAAAAAAAAAIAAsAAAAAAAAAAAAJAAsAAAAAAAAAAAAKAAsAAAAAAAAAAAALAAsAAAAAAAAAAAANAAsAAAAAAAAAAAAOAAsAAAAAAAAAAAAPAAsAAAAAAAAAAAAQAAsAAAAAAAAAAAARAAsAAAAAAAAAAAADAAsAAAAAAAAAAAAEAAsAAAAAAAAAAAAFAAsAAAAAAAAAAAAGAAsAAAAAAAAAAAAMAAsAAAAAAAAAAAAFAAoAAAAAAAAAAAAGAAoAAAAAAAAAAAAGAAkAAAAAAAAAAAAHAAkAAAAAAAAAAAAIAAkAAAAAAAAAAAAJAAkAAAAAAAAAAAAKAAkAAAAAAAAAAAALAAkAAAAAAAAAAAAMAAkAAAAAAAAAAAALAAoAAAAAAAAAAAAKAAoAAAAAAAAAAAAJAAoAAAAAAAAAAAAIAAoAAAAAAAAAAAAHAAoAAAAAAAAAAAAMAAoAAAAAAAAAAAANAAoAAAAAAAAAAAAOAAoAAAAAAAAAAAAPAAoAAAAAAAAAAAAPAAkAAAAAAAAAAAAQAAkAAAAAAAAAAAAQAAgAAAAAAAAAAAAQAAcAAAAAAAAAAAAQAAYAAAAAAAAAAAARAAcAAAAAAAAAAAAQAAoAAAAAAAAAAAARAAkAAAAAAAAAAAARAAgAAAAAAAAAAAARAAoAAAAAAAAAAAARAAYAAAAAAAAAAAARAAUAAAAAAAAAAAARAAQAAAAAAAAAAAAQAAQAAAAAAAAAAAAQAAUAAAAAAAAAAAAFAAkAAAAAAAAAAAAEAAkAAAAAAAAAAAADAAkAAAAAAAAAAAACAAkAAAAAAAAAAAABAAkAAAAAAAAAAAABAAoAAAAAAAAAAAACAAoAAAAAAAAAAAADAAoAAAAAAAAAAAAEAAoAAAAAAAAAAAAAAAoAAAAAAAAAAAAAAAkAAAAAAAAAAAABAAgAAAAAAAAAAAABAAcAAAAAAAAAAAABAAYAAAAAAAAAAAABAAUAAAAAAAAAAAABAAQAAAAAAAAAAAABAAMAAAAAAAAAAAABAAIAAAAAAAAAAAAKAAgAAAAAAAAAAAAKAAcAAAAAAAAAAAALAAcAAAAAAAAAAAALAAgAAAAAAAAAAAANAAkAAAAAAAAAAAAOAAkAAAAAAAAAAAA=") tile_set = ExtResource("2_dj7w1") [node name="Lashy" parent="." instance=ExtResource("4_gykx6")] -position = Vector2(144, 112) +position = Vector2(32, 144) launch_power = 300.0 idle_radius = 6.0 [node name="Player" parent="." instance=ExtResource("5_5v7mr")] -position = Vector2(96, 136) +position = Vector2(120, 144) [node name="Spring" parent="." instance=ExtResource("6_tlqas")] -position = Vector2(32, 72) +position = Vector2(72, 144) [node name="RotoBoy" parent="." instance=ExtResource("7_j1102")] position = Vector2(240, 40) diff --git a/objects/player/player.gd b/objects/player/player.gd index 0c7ac0b..c88c706 100644 --- a/objects/player/player.gd +++ b/objects/player/player.gd @@ -10,9 +10,7 @@ extends CharacterBody2D @export_group("Air Movement") @export var gravity: float -@export var fast_gravity: float @export var jump_power: float -@export var jump_horizontal_boost: float @export var splat_launch_power: float @export var splat_offset: float @export var chomp_vault_impulse: Vector2 @@ -58,10 +56,6 @@ func _physics_process(delta: float) -> void: func _unhandled_input(event: InputEvent) -> void: if event.is_action_pressed(&"jump"): state_chart.send_event(&"jump_pressed") - if event.is_action_pressed(&"grab"): - state_chart.send_event(&"grab_pressed") - if event.is_action_released(&"grab"): - state_chart.send_event(&"grab_released") func kill() -> void: @@ -96,17 +90,13 @@ func _apply_turn_acceleration(delta: float) -> void: #region Falling func _apply_gravity(delta: float) -> void: - if input_dir.y > 0.0: - velocity.y += fast_gravity * delta - else: - velocity.y += gravity * delta + velocity.y += gravity * delta #endregion #region Jumping func _start_jump() -> void: velocity.y = -jump_power - velocity.x += input_dir.x * jump_horizontal_boost #endregion @@ -145,11 +135,9 @@ func _face_towards_velocity(_delta: float) -> void: func _check_for_splat(delta: float) -> void: var col = move_and_collide(_last_velocity * delta, true) if col: - _splat_normal = col.get_normal() - if _splat_normal.dot(Vector2.UP) > 0.5: - return velocity = Vector2.ZERO global_position += col.get_travel() + _splat_normal = col.get_normal() var angle = col.get_normal().angle() if graphics.scale.x > 0.0: angle += PI diff --git a/objects/player/player.tscn b/objects/player/player.tscn index 54c0aaa..cfe8fc9 100644 --- a/objects/player/player.tscn +++ b/objects/player/player.tscn @@ -118,9 +118,7 @@ max_run_speed = 100.0 turn_acceleration = 300.0 stopping_force = 250.0 gravity = 450.0 -fast_gravity = 675.0 jump_power = 180.0 -jump_horizontal_boost = 25.0 splat_launch_power = 240.0 splat_offset = 6.0 chomp_vault_impulse = Vector2(60, -60) @@ -440,13 +438,6 @@ to = NodePath("..") event = &"jump_pressed" delay_in_seconds = "0.0" -[node name="on GrabPressed" type="Node" parent="StateChart/Root/Floating/Splat"] -editor_description = "Detach from wall early if \"grab\" is pressed." -script = ExtResource("7_rgjdc") -to = NodePath("../../../Airborne/Falling") -event = &"grab_pressed" -delay_in_seconds = "0.0" - [node name="on TimeOut" type="Node" parent="StateChart/Root/Floating/Splat"] script = ExtResource("7_rgjdc") to = NodePath("../../UnSplat") @@ -491,6 +482,5 @@ delay_in_seconds = "0.25" [connection signal="taken" from="StateChart/Root/Floating/ChompVault/on AnimationFinished" to="." method="_end_chomp_vault"] [connection signal="state_entered" from="StateChart/Root/Floating/Splat" to="Graphics/Sprite/Splat" method="play"] [connection signal="taken" from="StateChart/Root/Floating/Splat/on JumpPressed" to="." method="_do_splat_launch"] -[connection signal="taken" from="StateChart/Root/Floating/Splat/on GrabPressed" to="." method="_restore_graphics_rotation"] [connection signal="state_entered" from="StateChart/Root/Floating/UnSplat" to="Graphics/Sprite/UnSplat" method="play"] [connection signal="state_exited" from="StateChart/Root/Floating/UnSplat" to="." method="_restore_graphics_rotation"] diff --git a/project.godot b/project.godot index e38a8ef..c556d90 100644 --- a/project.godot +++ b/project.godot @@ -73,11 +73,6 @@ jump={ "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":90,"key_label":0,"unicode":122,"location":0,"echo":false,"script":null) ] } -grab={ -"deadzone": 0.2, -"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":88,"key_label":0,"unicode":120,"location":0,"echo":false,"script":null) -] -} [layer_names]