right wrong fx + frog improvements

This commit is contained in:
Laurent Tourte
2024-01-22 14:53:13 +01:00
parent f8c1b28095
commit 755c691d25
24 changed files with 760 additions and 25 deletions
+16 -16
View File
@@ -4,7 +4,7 @@
[ext_resource type="Script" path="res://sources/utils/fx/highlight.gd" id="1_uj18s"]
[ext_resource type="Texture2D" uid="uid://c161hyri7yhme" path="res://assets/vfx/fx_01.png" id="2_3sm6p"]
[sub_resource type="Animation" id="Animation_enql5"]
[sub_resource type="Animation" id="Animation_mfajw"]
length = 0.001
tracks/0/type = "bezier"
tracks/0/imported = false
@@ -73,9 +73,9 @@ tracks/5/keys = {
"times": PackedFloat32Array(0)
}
[sub_resource type="Animation" id="Animation_upcal"]
resource_name = "highlight"
loop_mode = 1
[sub_resource type="Animation" id="Animation_ud7pl"]
resource_name = "win"
length = 3.0
tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
@@ -85,7 +85,7 @@ tracks/0/loop_wrap = true
tracks/0/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(0.8, -0.25, 0, 0.25, 0.5, 1.6, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 1)
"times": PackedFloat32Array(0, 3)
}
tracks/1/type = "bezier"
tracks/1/imported = false
@@ -96,7 +96,7 @@ tracks/1/loop_wrap = true
tracks/1/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(0.8, -0.25, 0, 0.25, 0.5, 1.6, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 1)
"times": PackedFloat32Array(0, 3)
}
tracks/2/type = "bezier"
tracks/2/imported = false
@@ -107,7 +107,7 @@ tracks/2/loop_wrap = true
tracks/2/keys = {
"handle_modes": PackedInt32Array(0, 0, 0),
"points": PackedFloat32Array(0, -0.25, 0, 0.05, 0.5, 1, -0.05, 0, 0.5, 0, 0, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 0.1, 1)
"times": PackedFloat32Array(0, 0.1, 3)
}
tracks/3/type = "bezier"
tracks/3/imported = false
@@ -118,7 +118,7 @@ tracks/3/loop_wrap = true
tracks/3/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(0.8, -0.25, 0, 0.25, 0.5, 1.6, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 1)
"times": PackedFloat32Array(0, 3)
}
tracks/4/type = "bezier"
tracks/4/imported = false
@@ -129,7 +129,7 @@ tracks/4/loop_wrap = true
tracks/4/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(0.8, -0.25, 0, 0.25, 0.5, 1.6, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 1)
"times": PackedFloat32Array(0, 3)
}
tracks/5/type = "bezier"
tracks/5/imported = false
@@ -140,10 +140,10 @@ tracks/5/loop_wrap = true
tracks/5/keys = {
"handle_modes": PackedInt32Array(0, 0, 0),
"points": PackedFloat32Array(0, -0.25, 0, 0.05, 0.5, 1, -0.05, 0, 0.5, 0, 0, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 0.1, 1)
"times": PackedFloat32Array(0, 0.1, 3)
}
[sub_resource type="Animation" id="Animation_ty014"]
[sub_resource type="Animation" id="Animation_7q7mv"]
resource_name = "stop"
length = 0.1
tracks/0/type = "bezier"
@@ -213,11 +213,11 @@ tracks/5/keys = {
"times": PackedFloat32Array(0)
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_20b8s"]
[sub_resource type="AnimationLibrary" id="AnimationLibrary_g6flg"]
_data = {
"RESET": SubResource("Animation_enql5"),
"highlight": SubResource("Animation_upcal"),
"stop": SubResource("Animation_ty014")
"RESET": SubResource("Animation_mfajw"),
"highlight": SubResource("Animation_ud7pl"),
"stop": SubResource("Animation_7q7mv")
}
[sub_resource type="CanvasItemMaterial" id="CanvasItemMaterial_3qhub"]
@@ -228,7 +228,7 @@ script = ExtResource("1_uj18s")
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
"": SubResource("AnimationLibrary_20b8s")
"": SubResource("AnimationLibrary_g6flg")
}
[node name="Rays" type="Sprite2D" parent="."]
+14
View File
@@ -0,0 +1,14 @@
extends Node2D
signal finished()
@onready var animation_player: = $AnimationPlayer
func play() -> void:
animation_player.play("right")
func _on_animation_player_animation_finished(animation_name: StringName) -> void:
if animation_name == "right":
finished.emit()
+262
View File
@@ -0,0 +1,262 @@
[gd_scene load_steps=15 format=3 uid="uid://cn2rw06pltyiu"]
[ext_resource type="Script" path="res://sources/utils/fx/right.gd" id="1_83pnv"]
[ext_resource type="AudioStream" uid="uid://s0cxaexjq5l2" path="res://assets/sfx/sfx_right.mp3" id="2_ebh1q"]
[ext_resource type="Texture2D" uid="uid://3idggaf5hbbm" path="res://assets/vfx/fx_02.png" id="3_2nlkh"]
[ext_resource type="Texture2D" uid="uid://c161hyri7yhme" path="res://assets/vfx/fx_01.png" id="4_coc6y"]
[ext_resource type="Texture2D" uid="uid://dxl5h3tqf21cv" path="res://assets/vfx/fx_03.png" id="5_300xs"]
[sub_resource type="Animation" id="Animation_sc4ca"]
length = 0.001
tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Rays:scale:x")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(0.8, -0.25, 0, 0.25, 0.5),
"times": PackedFloat32Array(0)
}
tracks/1/type = "bezier"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Rays:scale:y")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(0.8, -0.25, 0, 0.25, 0.5),
"times": PackedFloat32Array(0)
}
tracks/2/type = "bezier"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Rays:modulate:a")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(0, -0.25, 0, 0.05, 0.5),
"times": PackedFloat32Array(0)
}
tracks/3/type = "bezier"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Halo:scale:x")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(0.8, -0.25, 0, 0.25, 0.5),
"times": PackedFloat32Array(0)
}
tracks/4/type = "bezier"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Halo:scale:y")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(0.8, -0.25, 0, 0.25, 0.5),
"times": PackedFloat32Array(0)
}
tracks/5/type = "bezier"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Halo:modulate:a")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(0, -0.25, 0, 0.05, 0.5),
"times": PackedFloat32Array(0)
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("GPUParticles2D:emitting")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("AudioStreamPlayer2D:playing")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
[sub_resource type="Animation" id="Animation_xu0xr"]
resource_name = "right"
length = 3.0
tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Halo:scale:x")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(0.8, -0.25, 0, 0.25, 0.5, 1.6, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 3)
}
tracks/1/type = "bezier"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Halo:scale:y")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(0.8, -0.25, 0, 0.25, 0.5, 1.6, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 3)
}
tracks/2/type = "bezier"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Halo:modulate:a")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"handle_modes": PackedInt32Array(0, 0, 0),
"points": PackedFloat32Array(0, -0.25, 0, 0.05, 0.5, 1, -0.05, 0, 0.5, 0, 0, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 0.1, 3)
}
tracks/3/type = "bezier"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Rays:scale:x")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(0.8, -0.25, 0, 0.25, 0.5, 1.6, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 3)
}
tracks/4/type = "bezier"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Rays:scale:y")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(0.8, -0.25, 0, 0.25, 0.5, 1.6, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 3)
}
tracks/5/type = "bezier"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Rays:modulate:a")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"handle_modes": PackedInt32Array(0, 0, 0),
"points": PackedFloat32Array(0, -0.25, 0, 0.05, 0.5, 1, -0.05, 0, 0.5, 0, 0, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 0.1, 3)
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("GPUParticles2D:emitting")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("AudioStreamPlayer2D:playing")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_k8dqy"]
_data = {
"RESET": SubResource("Animation_sc4ca"),
"right": SubResource("Animation_xu0xr")
}
[sub_resource type="CanvasItemMaterial" id="CanvasItemMaterial_v3jt2"]
blend_mode = 1
[sub_resource type="Gradient" id="Gradient_u3fxj"]
colors = PackedColorArray(1, 1, 1, 1, 1, 1, 1, 0)
[sub_resource type="GradientTexture1D" id="GradientTexture1D_1y1y0"]
gradient = SubResource("Gradient_u3fxj")
width = 32
[sub_resource type="Curve" id="Curve_4x1t7"]
max_value = 0.8
_data = [Vector2(0, 0.8), 0.0, 0.0, 0, 0, Vector2(1, 0), -2.08937, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_ebpu0"]
width = 32
curve = SubResource("Curve_4x1t7")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_dwcrn"]
particle_flag_disable_z = true
direction = Vector3(0, -1, 0)
initial_velocity_min = 100.0
initial_velocity_max = 200.0
angular_velocity_max = 720.0
gravity = Vector3(0, 98, 0)
scale_curve = SubResource("CurveTexture_ebpu0")
color_ramp = SubResource("GradientTexture1D_1y1y0")
[node name="RightFX" type="Node2D"]
script = ExtResource("1_83pnv")
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
"": SubResource("AnimationLibrary_k8dqy")
}
[node name="AudioStreamPlayer2D" type="AudioStreamPlayer2D" parent="."]
stream = ExtResource("2_ebh1q")
[node name="Rays" type="Sprite2D" parent="."]
modulate = Color(1, 1, 1, 0)
material = SubResource("CanvasItemMaterial_v3jt2")
scale = Vector2(0.8, 0.8)
texture = ExtResource("3_2nlkh")
[node name="Halo" type="Sprite2D" parent="."]
modulate = Color(1, 1, 1, 0)
scale = Vector2(0.8, 0.8)
texture = ExtResource("4_coc6y")
[node name="GPUParticles2D" type="GPUParticles2D" parent="."]
emitting = false
amount = 16
process_material = SubResource("ParticleProcessMaterial_dwcrn")
texture = ExtResource("5_300xs")
lifetime = 2.5
one_shot = true
explosiveness = 1.0
[connection signal="animation_finished" from="AnimationPlayer" to="." method="_on_animation_player_animation_finished"]
+14
View File
@@ -0,0 +1,14 @@
extends Node2D
signal finished()
@onready var animation_player: = $AnimationPlayer
func play() -> void:
animation_player.play("wrong")
func _on_animation_player_animation_finished(animation_name: StringName) -> void:
if animation_name == "wrong":
finished.emit()
+164
View File
@@ -0,0 +1,164 @@
[gd_scene load_steps=8 format=3 uid="uid://dlmbxcgiv8tpr"]
[ext_resource type="AudioStream" uid="uid://2imrfcmquc7d" path="res://assets/sfx/sfx_wrong.mp3" id="1_qd4na"]
[ext_resource type="Script" path="res://sources/utils/fx/wrong.gd" id="1_sgjc5"]
[ext_resource type="Texture2D" uid="uid://c161hyri7yhme" path="res://assets/vfx/fx_01.png" id="3_r5miu"]
[ext_resource type="Texture2D" uid="uid://bqw5oyt88v05u" path="res://assets/vfx/cross.png" id="4_7ijh5"]
[sub_resource type="Animation" id="Animation_tj5mf"]
length = 0.001
tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Halo:scale:x")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(0.8, -0.25, 0, 0.25, 0.5),
"times": PackedFloat32Array(0)
}
tracks/1/type = "bezier"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Halo:scale:y")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(0.8, -0.25, 0, 0.25, 0.5),
"times": PackedFloat32Array(0)
}
tracks/2/type = "bezier"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Halo:modulate:a")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"handle_modes": PackedInt32Array(0),
"points": PackedFloat32Array(0, -0.25, 0, 0.05, 0.5),
"times": PackedFloat32Array(0)
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("AudioStreamPlayer2D:playing")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
[sub_resource type="Animation" id="Animation_dn23k"]
resource_name = "wrong"
tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Halo:scale:x")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(0.8, -0.25, 0, 0.25, 0.5, 1.6, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 1)
}
tracks/1/type = "bezier"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Halo:scale:y")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(0.8, -0.25, 0, 0.25, 0.5, 1.6, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 1)
}
tracks/2/type = "bezier"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Halo:modulate:a")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"handle_modes": PackedInt32Array(0, 0, 0),
"points": PackedFloat32Array(0, -0.25, 0, 0.05, 0.5, 1, -0.05, 0, 0.5, 0, 0, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 0.1, 1)
}
tracks/3/type = "bezier"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Cross:scale:x")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(0.8, -0.25, 0, 0.25, 0.5, 1.6, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 1)
}
tracks/4/type = "bezier"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Cross:scale:y")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"handle_modes": PackedInt32Array(0, 0),
"points": PackedFloat32Array(0.8, -0.25, 0, 0.25, 0.5, 1.6, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 1)
}
tracks/5/type = "bezier"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Cross:modulate:a")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"handle_modes": PackedInt32Array(0, 0, 0),
"points": PackedFloat32Array(0, -0.25, 0, 0.05, 0.5, 1, -0.05, 0, 0.5, 0, 0, -0.25, 0, 0.25, 0),
"times": PackedFloat32Array(0, 0.1, 1)
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("AudioStreamPlayer2D:playing")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_c86ui"]
_data = {
"RESET": SubResource("Animation_tj5mf"),
"wrong": SubResource("Animation_dn23k")
}
[node name="WrongFX" type="Node2D"]
script = ExtResource("1_sgjc5")
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
libraries = {
"": SubResource("AnimationLibrary_c86ui")
}
[node name="AudioStreamPlayer2D" type="AudioStreamPlayer2D" parent="."]
stream = ExtResource("1_qd4na")
[node name="Halo" type="Sprite2D" parent="."]
modulate = Color(1, 1, 1, 0)
scale = Vector2(0.8, 0.8)
texture = ExtResource("3_r5miu")
[node name="Cross" type="Sprite2D" parent="."]
modulate = Color(1, 1, 1, 0)
scale = Vector2(0.8, 0.8)
texture = ExtResource("4_7ijh5")
[connection signal="animation_finished" from="AnimationPlayer" to="." method="_on_animation_player_animation_finished"]