niveau: les pics tuent

Lorsque la princesse rentre en collision avec un pic, elle meurt et
recommence au début du jeu.
This commit is contained in:
Thomas Lavocat
2023-04-28 23:11:19 +02:00
parent 503cf1737a
commit 6bf72f6ff0
4 changed files with 21 additions and 3 deletions

View File

@@ -6,9 +6,11 @@
[node name="game" type="Node"]
[node name="Node2D" parent="." instance=ExtResource("1_qv57y")]
light_mask = 1
visibility_layer = 1
position = Vector2(1, 10)
[node name="Princesse" parent="Node2D" instance=ExtResource("2_0ku48")]
position = Vector2(-95, -14)
scale = Vector2(0.6, 0.6)
collision_mask = 28
collision_mask = 60

View File

@@ -1022,7 +1022,6 @@ texture = ExtResource("2_0lafl")
physics_layer_0/collision_layer = 16
physics_layer_0/collision_mask = 0
physics_layer_1/collision_layer = 32
physics_layer_1/collision_mask = 0
sources/0 = SubResource("TileSetAtlasSource_oitv5")
sources/1 = SubResource("TileSetAtlasSource_f5ev5")
sources/2 = SubResource("TileSetAtlasSource_2v4nl")

View File

@@ -51,6 +51,11 @@ var falling_step : int = -1
var pressing_wall = false
const PLATFORM_LAYER = 1 << (5 - 1) # collision layer 5
const PICS_BLOCK_LAYER = 1 << (6 - 1) # collision layer 6
var layer_of_collision = null
func walk(direction:int) -> int:
# Fait marcher le personnage.
@@ -179,7 +184,16 @@ func _physics_process(delta: float) -> void:
animation.scale.x *= -1
floor_stop_on_slope = not platform_detector.is_colliding()
move_and_slide() # Character is colliding
var collision = move_and_slide()
if collision:
var collider = get_last_slide_collision().get_collider()
if collider is TileMap:
var tile_rid = get_last_slide_collision().get_collider_rid()
layer_of_collision = PhysicsServer2D.body_get_collision_layer(tile_rid)
if layer_of_collision == PICS_BLOCK_LAYER:
get_tree(). reload_current_scene()
var anim := get_new_animation(false)
if anim != animation.animation:

View File

@@ -48,6 +48,9 @@ jump={
[layer_names]
2d_render/layer_1="plateformes"
2d_physics/layer_5="plateformes"
2d_physics/layer_6="pics"
2d_physics/layer_7="fromages"
[rendering]