Leech gravity

This commit is contained in:
RealMelwei 2025-09-19 11:26:39 +02:00
parent 6cd4de5fe6
commit 83e6f059b5
4 changed files with 6 additions and 10 deletions

View file

@ -69,7 +69,7 @@ scale = Vector2(2.688, 3)
position = Vector2(300, -200) position = Vector2(300, -200)
[node name="Leech" parent="EnemyList" instance=ExtResource("10_ibnxs")] [node name="Leech" parent="EnemyList" instance=ExtResource("10_ibnxs")]
position = Vector2(84, -320) position = Vector2(240, -340)
[node name="DebugSprite" type="Sprite2D" parent="."] [node name="DebugSprite" type="Sprite2D" parent="."]
visible = false visible = false

View file

@ -66,7 +66,7 @@ position = Vector2(465, -301)
position = Vector2(301, -49) position = Vector2(301, -49)
[node name="Leech" parent="EnemyList" instance=ExtResource("10_7e5ul")] [node name="Leech" parent="EnemyList" instance=ExtResource("10_7e5ul")]
position = Vector2(176, -320) position = Vector2(176, -340)
[node name="DebugSprite" type="Sprite2D" parent="."] [node name="DebugSprite" type="Sprite2D" parent="."]
visible = false visible = false

View file

@ -13,8 +13,6 @@ var iframes = 0.2
var iframe_time = 0 var iframe_time = 0
var dead = false var dead = false
var check_grounded_delay = 8
func _ready() -> void: func _ready() -> void:
for segment in segments: for segment in segments:
segment.segment_damaged.connect(hurt) segment.segment_damaged.connect(hurt)
@ -56,10 +54,8 @@ func _physics_process(delta: float) -> void:
get_tree().get_root().print_tree_pretty() get_tree().get_root().print_tree_pretty()
segments[i].position = segment_pos_data.position segments[i].position = segment_pos_data.position
segments[i].rotation = segment_pos_data.rotation segments[i].rotation = segment_pos_data.rotation
if check_grounded_delay > 0: if not $RayCast2D2.has_overlapping_bodies():
check_grounded_delay -= delta position += 200 * delta * $EarthAligner.global_from_local(Vector2.DOWN)
elif not $RayCast2D2.has_overlapping_bodies():
queue_free()
func calculate_segment_location_and_rotation (i) -> Dictionary: func calculate_segment_location_and_rotation (i) -> Dictionary:
var aerial_end_location = Vector2.from_angle(-angle) * broadth var aerial_end_location = Vector2.from_angle(-angle) * broadth

View file

@ -6,7 +6,7 @@
[ext_resource type="AudioStream" uid="uid://co07360hqn6fk" path="res://sounds/686321__cjspellsfish__punch-land-soft.wav" id="4_b1m5t"] [ext_resource type="AudioStream" uid="uid://co07360hqn6fk" path="res://sounds/686321__cjspellsfish__punch-land-soft.wav" id="4_b1m5t"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_cq6dk"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_cq6dk"]
size = Vector2(2, 24) size = Vector2(2, 12)
[node name="Leech" type="Node2D"] [node name="Leech" type="Node2D"]
scale = Vector2(1, 1.2) scale = Vector2(1, 1.2)
@ -50,7 +50,7 @@ collision_layer = 0
collision_mask = 8 collision_mask = 8
[node name="CollisionShape2D" type="CollisionShape2D" parent="RayCast2D2"] [node name="CollisionShape2D" type="CollisionShape2D" parent="RayCast2D2"]
position = Vector2(0, 14.8) position = Vector2(0, 8.8)
shape = SubResource("RectangleShape2D_cq6dk") shape = SubResource("RectangleShape2D_cq6dk")
[node name="AudioStreamPlayer2D" type="AudioStreamPlayer2D" parent="."] [node name="AudioStreamPlayer2D" type="AudioStreamPlayer2D" parent="."]