diff --git a/masks/smoke_particle.png b/masks/smoke_particle.png new file mode 100644 index 0000000..6082a13 Binary files /dev/null and b/masks/smoke_particle.png differ diff --git a/masks/smoke_particle.png.import b/masks/smoke_particle.png.import new file mode 100644 index 0000000..0e0f21e --- /dev/null +++ b/masks/smoke_particle.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c66jnmv1vefmo" +path="res://.godot/imported/smoke_particle.png-2ef7baf5e0798208c8e39646e1fd8e10.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://masks/smoke_particle.png" +dest_files=["res://.godot/imported/smoke_particle.png-2ef7baf5e0798208c8e39646e1fd8e10.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/masks/smoke_particle_16.png b/masks/smoke_particle_16.png new file mode 100644 index 0000000..e90df1a Binary files /dev/null and b/masks/smoke_particle_16.png differ diff --git a/masks/smoke_particle_16.png.import b/masks/smoke_particle_16.png.import new file mode 100644 index 0000000..7f467ce --- /dev/null +++ b/masks/smoke_particle_16.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bl4eehh16yo0r" +path="res://.godot/imported/smoke_particle_16.png-90c44d6bff680644df9c0fd938a657ae.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://masks/smoke_particle_16.png" +dest_files=["res://.godot/imported/smoke_particle_16.png-90c44d6bff680644df9c0fd938a657ae.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/princesse.gd b/princesse.gd index c8bfc90..2cdcabe 100644 --- a/princesse.gd +++ b/princesse.gd @@ -24,6 +24,8 @@ var gravity: int = ProjectSettings.get("physics/2d/default_gravity") @onready var camera := $Camera2D as Camera2D @onready var death_animation := $"Death player" as AnimationPlayer +@onready var nuage_prout := $"GPUParticles2D" as GPUParticles2D + ################################################################################ # # Constantes de déplacement à pimper dans l'inspecteur @@ -362,6 +364,7 @@ func dash() -> void: func cancel_dash() -> void: dash_step = -1 dashing=false + nuage_prout.emitting = false func choose_animation_orientation() -> void: # Oriente l'animation correctement en fonction de laquelle on joue et de @@ -528,6 +531,7 @@ func read_input() -> void: Input.start_joy_vibration(0, 1, 0.5, 0.2) available_dashs -=1 dashing = true + nuage_prout.emitting = true dash_fart.emit() # Limiter le dash en diagonnale car sinon il est trop grand # par rapport à un dash dans une seule direction diff --git a/princesse.tscn b/princesse.tscn index 8b6e1ac..91e12e3 100644 --- a/princesse.tscn +++ b/princesse.tscn @@ -1,7 +1,8 @@ -[gd_scene load_steps=63 format=3 uid="uid://dv0mokf4eogm7"] +[gd_scene load_steps=71 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://bl4eehh16yo0r" path="res://masks/smoke_particle_16.png" id="2_jyxmd"] [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"] @@ -10,6 +11,43 @@ [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="Gradient" id="Gradient_anx4x"] + +[sub_resource type="GradientTexture1D" id="GradientTexture1D_7kmv1"] +gradient = SubResource("Gradient_anx4x") + +[sub_resource type="Curve" id="Curve_iu7sd"] +min_value = -1.0 +_data = [Vector2(0, -1), 0.0, 0.0, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0] +point_count = 2 + +[sub_resource type="CurveTexture" id="CurveTexture_jwai0"] +curve = SubResource("Curve_iu7sd") + +[sub_resource type="Curve" id="Curve_igy3q"] +_data = [Vector2(0.0365535, 0), 0.0, 0.0, 0, 0, Vector2(0.503916, 1), 0.0, 0.0, 0, 0, Vector2(1, 0.852761), 0.0, 0.0, 0, 0] +point_count = 3 + +[sub_resource type="CurveTexture" id="CurveTexture_b7sj0"] +curve = SubResource("Curve_igy3q") + +[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_n8y3m"] +emission_shape = 1 +emission_sphere_radius = 4.82 +particle_flag_disable_z = true +orbit_velocity_min = 0.0 +orbit_velocity_max = 0.0 +radial_accel_min = 15.0 +radial_accel_max = 15.0 +angle_max = 360.0 +scale_curve = SubResource("CurveTexture_b7sj0") +color = Color(0.360784, 0.741176, 0.458824, 1) +color_ramp = SubResource("GradientTexture1D_7kmv1") +hue_variation_curve = SubResource("CurveTexture_jwai0") +collision_mode = 1 +collision_friction = 0.0 +collision_bounce = 0.0 + [sub_resource type="AtlasTexture" id="AtlasTexture_i248f"] atlas = ExtResource("2_hholp") region = Rect2(0, 0, 24, 50) @@ -436,6 +474,18 @@ COYOTE_LENGTH = 7 COYOTE_GRAB_LENGTH = 20 WALK_INCR_AIR = 4 +[node name="GPUParticles2D" type="GPUParticles2D" parent="."] +texture_filter = 4 +position = Vector2(-3.33334, 10) +scale = Vector2(0.5, 0.5) +emitting = false +amount = 100 +process_material = SubResource("ParticleProcessMaterial_n8y3m") +texture = ExtResource("2_jyxmd") +lifetime = 2.0 +preprocess = 2.0 +speed_scale = 4.0 + [node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."] modulate = Color(0.823529, 0.823529, 0.823529, 1) sprite_frames = SubResource("SpriteFrames_q52wx") @@ -476,7 +526,7 @@ texture = SubResource("GradientTexture2D_t1uxd") texture_scale = 1.85 [node name="light" type="PointLight2D" parent="."] -position = Vector2(0, 1.66669) +position = Vector2(-1.66667, -1.66667) color = Color(1, 0.964706, 0.643137, 0.6) energy = 0.32 shadow_enabled = true