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:
@@ -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
|
||||
|
||||
@@ -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")
|
||||
|
||||
16
princesse.gd
16
princesse.gd
@@ -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:
|
||||
|
||||
@@ -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]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user