Files
Princesse-Lactose-Godot/princesse.tscn
Thomas Lavocat 865cb265f0 princesse/walljump: améliorations du feeling
lorsque le joueur pointe dans une direction accroché au mur il a 20
frames pour décider d'où aller. Si il ne le fait pas, alors le
personnage se décolle du mur. Pour être plus clair dans le décollage du
mur, mettre une marge suffisante.

Coller au mur se produit quand on à les flêches du bon côté du touchent.
peut importe qu'on ait de la vitesse ou pas. Ce qui fait que projeté au
mur, même avec une vitesse de 0 à l'arrivée, on va s'y coller.
2023-06-06 14:00:04 +02:00

518 lines
14 KiB
Plaintext

[gd_scene load_steps=63 format=3 uid="uid://dv0mokf4eogm7"]
[ext_resource type="Script" path="res://princesse.gd" id="1_dkp7s"]
[ext_resource type="Texture2D" uid="uid://dr7fyh2rufsyj" path="res://sprite/princess_falling_direction.png" id="2_hholp"]
[ext_resource type="Texture2D" uid="uid://cc2vjgg2dw27g" path="res://sprite/princess_falling.png" id="3_kbaya"]
[ext_resource type="Texture2D" uid="uid://bwod37xemy88x" path="res://sprite/princess.png" id="4_iiu2b"]
[ext_resource type="Texture2D" uid="uid://cx58dasu8epvx" path="res://sprite/princess_idle.png" id="4_uydsc"]
[ext_resource type="Texture2D" uid="uid://b1624w7katr05" path="res://sprite/princess_jumping_impulsion.png" id="5_njcte"]
[ext_resource type="Texture2D" uid="uid://c2xtcu5ysgi7o" path="res://sprite/princess_jumping.png" id="6_srvje"]
[ext_resource type="Texture2D" uid="uid://d23lmsjrjw1mk" path="res://sprite/princess_wall_stick.png" id="7_8dix4"]
[ext_resource type="Texture2D" uid="uid://dgsn3ixn46anc" path="res://sprite/light.png" id="8_8c83t"]
[sub_resource type="AtlasTexture" id="AtlasTexture_i248f"]
atlas = ExtResource("2_hholp")
region = Rect2(0, 0, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_e23c2"]
atlas = ExtResource("2_hholp")
region = Rect2(0, 50, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_501l0"]
atlas = ExtResource("2_hholp")
region = Rect2(0, 0, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_oobtw"]
atlas = ExtResource("2_hholp")
region = Rect2(0, 50, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_etom6"]
atlas = ExtResource("2_hholp")
region = Rect2(0, 100, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_psvxe"]
atlas = ExtResource("2_hholp")
region = Rect2(0, 150, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_2mvwc"]
atlas = ExtResource("2_hholp")
region = Rect2(0, 200, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_wfvda"]
atlas = ExtResource("2_hholp")
region = Rect2(0, 250, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_07km1"]
atlas = ExtResource("3_kbaya")
region = Rect2(0, 0, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_xj4lb"]
atlas = ExtResource("3_kbaya")
region = Rect2(0, 50, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_5rs5h"]
atlas = ExtResource("3_kbaya")
region = Rect2(0, 100, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_wvl3e"]
atlas = ExtResource("3_kbaya")
region = Rect2(0, 150, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_kdxf0"]
atlas = ExtResource("3_kbaya")
region = Rect2(0, 200, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_f42nq"]
atlas = ExtResource("3_kbaya")
region = Rect2(0, 250, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_w81fh"]
atlas = ExtResource("4_uydsc")
region = Rect2(0, 0, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_ew2xl"]
atlas = ExtResource("4_uydsc")
region = Rect2(0, 50, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_8ywhi"]
atlas = ExtResource("4_uydsc")
region = Rect2(0, 100, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_0f1fb"]
atlas = ExtResource("4_uydsc")
region = Rect2(0, 150, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_5cr2j"]
atlas = ExtResource("4_uydsc")
region = Rect2(0, 200, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_1m2pr"]
atlas = ExtResource("4_uydsc")
region = Rect2(0, 250, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_s68q8"]
atlas = ExtResource("4_uydsc")
region = Rect2(0, 300, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_d4mkb"]
atlas = ExtResource("4_uydsc")
region = Rect2(0, 350, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_8eckg"]
atlas = ExtResource("4_uydsc")
region = Rect2(0, 400, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_jrvhm"]
atlas = ExtResource("4_uydsc")
region = Rect2(0, 450, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_xiqys"]
atlas = ExtResource("4_uydsc")
region = Rect2(0, 500, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_h3ewj"]
atlas = ExtResource("4_uydsc")
region = Rect2(0, 550, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_yqpcg"]
atlas = ExtResource("5_njcte")
region = Rect2(0, 0, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_8yyph"]
atlas = ExtResource("5_njcte")
region = Rect2(0, 50, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_ftqux"]
atlas = ExtResource("5_njcte")
region = Rect2(0, 100, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_5aadj"]
atlas = ExtResource("6_srvje")
region = Rect2(0, 0, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_ltvav"]
atlas = ExtResource("6_srvje")
region = Rect2(0, 50, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_v8l2b"]
atlas = ExtResource("6_srvje")
region = Rect2(0, 100, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_1a5fd"]
atlas = ExtResource("6_srvje")
region = Rect2(0, 150, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_ijaps"]
atlas = ExtResource("6_srvje")
region = Rect2(0, 200, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_gik46"]
atlas = ExtResource("6_srvje")
region = Rect2(0, 250, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_yxjwj"]
atlas = ExtResource("4_iiu2b")
region = Rect2(0, 0, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_0nfn2"]
atlas = ExtResource("4_iiu2b")
region = Rect2(0, 50, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_wo2be"]
atlas = ExtResource("4_iiu2b")
region = Rect2(0, 100, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_4j10n"]
atlas = ExtResource("4_iiu2b")
region = Rect2(0, 150, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_kwlld"]
atlas = ExtResource("4_iiu2b")
region = Rect2(0, 200, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_57mjl"]
atlas = ExtResource("4_iiu2b")
region = Rect2(0, 250, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_34pfo"]
atlas = ExtResource("7_8dix4")
region = Rect2(0, 0, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_xck10"]
atlas = ExtResource("7_8dix4")
region = Rect2(0, 50, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_1qhca"]
atlas = ExtResource("7_8dix4")
region = Rect2(0, 100, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_bljfu"]
atlas = ExtResource("7_8dix4")
region = Rect2(0, 150, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_fvex7"]
atlas = ExtResource("7_8dix4")
region = Rect2(0, 200, 24, 50)
[sub_resource type="AtlasTexture" id="AtlasTexture_qw8g6"]
atlas = ExtResource("7_8dix4")
region = Rect2(0, 250, 24, 50)
[sub_resource type="SpriteFrames" id="SpriteFrames_q52wx"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_i248f")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_e23c2")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_501l0")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_oobtw")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_etom6")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_psvxe")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_2mvwc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_wfvda")
}],
"loop": true,
"name": &"falling_diagonals",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_07km1")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_xj4lb")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_5rs5h")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_wvl3e")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_kdxf0")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_f42nq")
}],
"loop": true,
"name": &"falling_straight",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_w81fh")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ew2xl")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_8ywhi")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_0f1fb")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_5cr2j")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_1m2pr")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_s68q8")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_d4mkb")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_8eckg")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_jrvhm")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_xiqys")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_h3ewj")
}],
"loop": true,
"name": &"idle",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_yqpcg")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_8yyph")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ftqux")
}],
"loop": true,
"name": &"jump_impulsion",
"speed": 5.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_5aadj")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ltvav")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_v8l2b")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_1a5fd")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ijaps")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_gik46")
}],
"loop": true,
"name": &"jumping",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_yxjwj")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_0nfn2")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_wo2be")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_4j10n")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_kwlld")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_57mjl")
}],
"loop": true,
"name": &"walk",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_34pfo")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_xck10")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_1qhca")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bljfu")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_fvex7")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_qw8g6")
}],
"loop": true,
"name": &"wall_stick",
"speed": 10.0
}]
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_6r7th"]
radius = 4.33333
height = 42.0
[sub_resource type="Animation" id="Animation_uo4aj"]
resource_name = "death"
length = 0.5
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("AnimatedSprite2D:scale")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0.1, 0.5),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Vector2(1, 1), Vector2(0, 0)]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("AnimatedSprite2D:rotation")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0.1, 0.5),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [0.0, 31.4159]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_hxxp0"]
_data = {
"death": SubResource("Animation_uo4aj")
}
[sub_resource type="Gradient" id="Gradient_wf4ie"]
offsets = PackedFloat32Array(0, 0.313609, 0.994083, 1)
colors = PackedColorArray(0.411765, 0.6, 0.956863, 0.105882, 0.741176, 0.839216, 0.984314, 0.219608, 0.980392, 1, 0.803922, 1, 1, 0.592157, 0.282353, 0)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_t1uxd"]
gradient = SubResource("Gradient_wf4ie")
width = 1024
height = 1024
fill = 1
fill_from = Vector2(0.482759, 0.508621)
[node name="Princesse" type="CharacterBody2D"]
scale = Vector2(0.6, 0.6)
collision_mask = 241
slide_on_ceiling = false
floor_constant_speed = true
script = ExtResource("1_dkp7s")
JUMPING_SPEED = 230
KICK_JUMP_LIMITER = 0.75
COYOTE_LENGTH = 7
COYOTE_GRAB_LENGTH = 20
WALK_INCR_AIR = 4
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
sprite_frames = SubResource("SpriteFrames_q52wx")
animation = &"idle"
frame_progress = 0.890388
[node name="Camera2D" type="Camera2D" parent="."]
zoom = Vector2(2, 2)
position_smoothing_enabled = true
position_smoothing_speed = 10.0
drag_horizontal_enabled = true
drag_vertical_enabled = true
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(0, 4)
shape = SubResource("CapsuleShape2D_6r7th")
[node name="ground_far_detect" type="RayCast2D" parent="."]
position = Vector2(4, 0)
target_position = Vector2(0, 42)
collision_mask = 16
[node name="ground_far_detect2" type="RayCast2D" parent="."]
position = Vector2(-4, 0)
target_position = Vector2(0, 42)
collision_mask = 16
[node name="Death player" type="AnimationPlayer" parent="."]
libraries = {
"": SubResource("AnimationLibrary_hxxp0")
}
[node name="vignetting" type="PointLight2D" parent="."]
visible = false
energy = 1.8
blend_mode = 1
texture = SubResource("GradientTexture2D_t1uxd")
texture_scale = 1.85
[node name="light" type="PointLight2D" parent="."]
position = Vector2(0, 1.66669)
scale = Vector2(0.163303, 0.193631)
energy = 0.74
blend_mode = 2
shadow_enabled = true
texture = ExtResource("8_8c83t")
texture_scale = 0.44
[node name="wall_detect_left2" type="RayCast2D" parent="."]
position = Vector2(0, -6.66667)
target_position = Vector2(-8, 0)
collision_mask = 16
[node name="wall_detect_right2" type="RayCast2D" parent="."]
position = Vector2(0, -6.66667)
target_position = Vector2(8, 0)
collision_mask = 16
[node name="wall_detect_right3" type="RayCast2D" parent="."]
position = Vector2(0, 16.6667)
target_position = Vector2(8, 0)
collision_mask = 16
[node name="wall_detect_right" type="RayCast2D" parent="."]
position = Vector2(0, 5)
target_position = Vector2(8, 0)
collision_mask = 16
[node name="wall_detect_left3" type="RayCast2D" parent="."]
position = Vector2(0, 16.6667)
target_position = Vector2(-8, 0)
collision_mask = 16
[node name="wall_detect_left" type="RayCast2D" parent="."]
position = Vector2(0, 5)
target_position = Vector2(-8, 0)
collision_mask = 16
[connection signal="animation_finished" from="Death player" to="." method="_on_death_player_animation_finished"]