Fix a few parakeets bugs

This commit is contained in:
BimDav
2023-03-28 11:56:55 +02:00
parent 7e752d6100
commit 076e59df7b
5 changed files with 39 additions and 20 deletions
+1
View File
@@ -109,6 +109,7 @@ func set_max_progression(new_max_progression: int) -> void:
progression_rects[i].queue_free()
for i in range(progression_rects.size(), new_max_progression):
var new_progression_rect: = model_progression_rect.duplicate()
new_progression_rect.show()
new_progression_rect.texture = empty_progression_icon
progression_container.add_child(new_progression_rect)
model_progression_rect.visible = new_max_progression >= 1
+1 -1
View File
@@ -19,7 +19,7 @@
[ext_resource type="Texture2D" uid="uid://dqtmyedk1ylbw" path="res://assets/minigames/minigame_ui/graphic/button_replay_up.png" id="17_ipxst"]
[ext_resource type="Texture2D" uid="uid://bvu8ud6hkwusb" path="res://assets/minigames/minigame_ui/graphic/button_replay_down.png" id="18_5pefo"]
[ext_resource type="Texture2D" uid="uid://d4ffd4us2hrbs" path="res://assets/minigames/minigame_ui/graphic/button_replay_disabled.png" id="19_mm65c"]
[ext_resource type="PackedScene" uid="uid://blos4rn53qkwg" path="res://sources/minigames/base/kalulu.tscn" id="19_wn4nd"]
[ext_resource type="PackedScene" uid="uid://c4t2cq5vyj4ai" path="res://sources/minigames/base/kalulu.tscn" id="19_wn4nd"]
[ext_resource type="Texture2D" uid="uid://db64tlixplfru" path="res://assets/minigames/minigame_ui/graphic/life_empty.png" id="20_jyeyb"]
[ext_resource type="Texture2D" uid="uid://dkvf2b6b1keqf" path="res://assets/minigames/minigame_ui/graphic/volume_up.png" id="20_qsa3m"]
[ext_resource type="Texture2D" uid="uid://blgoagm5j5jh2" path="res://assets/minigames/minigame_ui/graphic/volume_down.png" id="21_g5me6"]
+28 -12
View File
@@ -3,17 +3,11 @@ extends Node2D
const instance_scene: = "res://sources/minigames/parakeets/parakeet.tscn"
signal pressed()
@export var sad_duration: = 2.0
@onready var animated_sprite: = $AnimatedSprite2D
@onready var label: = $Label
var stimulus: Dictionary :
set(value):
stimulus = value
label.text = value.Grapheme
enum Colors {
Red,
Green,
Yellow,
}
const animations: = [
preload("res://sources/minigames/parakeets/red_parakeet_animations.tres"),
@@ -21,9 +15,31 @@ const animations: = [
preload("res://sources/minigames/parakeets/yellow_parakeet_spritesheet.tres")
]
signal pressed()
@export var sad_duration: = 2.0
@export var color: = Colors.Red:
set(value):
color = value
if animated_sprite:
animated_sprite.sprite_frames = animations[color]
@export var uppercase: = true:
set(value):
uppercase = value
if label:
label.text = label.text.to_upper() if uppercase else label.text.to_lower()
@onready var animated_sprite: = $AnimatedSprite2D
@onready var label: = $Label
var stimulus: Dictionary :
set(value):
stimulus = value
label.text = value.Grapheme.to_upper() if uppercase else value.Grapheme
func _ready() -> void:
animated_sprite.sprite_frames = animations[randi() % animations.size()]
color = color
animated_sprite.play("idle_front")
+2 -3
View File
@@ -1,7 +1,7 @@
[gd_scene load_steps=9 format=3 uid="uid://cmoeum0oc0p2"]
[ext_resource type="Script" path="res://sources/minigames/parakeets/parakeet.gd" id="1_p0nqk"]
[ext_resource type="SpriteFrames" uid="uid://c4xffrugn6xgx" path="res://sources/minigames/parakeets/yellow_parakeet_spritesheet.tres" id="2_yx4ca"]
[ext_resource type="SpriteFrames" uid="uid://wybpq21deku7" path="res://sources/minigames/parakeets/red_parakeet_animations.tres" id="2_k0dcm"]
[ext_resource type="FontFile" uid="uid://b2l4jfylc1v41" path="res://assets/fonts/DidactGothic-Regular.ttf" id="5_k8sc4"]
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_2q8kg"]
@@ -19,10 +19,9 @@ script = ExtResource("1_p0nqk")
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
scale = Vector2(2, 2)
sprite_frames = ExtResource("2_yx4ca")
sprite_frames = ExtResource("2_k0dcm")
animation = &"idle_front"
autoplay = "idle_front"
frame_progress = 0.51529
offset = Vector2(2.08165e-12, -82)
[node name="Label" type="Label" parent="."]
@@ -74,19 +74,22 @@ func _setup_minigame() -> void:
var stimuli2: = stimuli.duplicate()
stimuli2.shuffle()
max_progression = pairs_count
var color: = randi_range(0, Parakeet.Colors.size() - 1) as Parakeet.Colors
for i in pairs_count:
var new_parakeet1: Parakeet = Parakeet.instantiate()
var new_parakeet2: Parakeet = Parakeet.instantiate()
parakeets_node.add_child(new_parakeet1)
parakeets_node.add_child(new_parakeet2)
new_parakeet1.color = color
new_parakeet2.color = color
new_parakeet1.uppercase = true
new_parakeet2.uppercase = false
new_parakeet1.global_position = possible_start_positions[2 * i].global_position
new_parakeet2.global_position = possible_start_positions[2 * i + 1].global_position
parakeets.append_array([new_parakeet1, new_parakeet2])
var stimulus: Dictionary = stimuli2.pop_back()
var stimulus_up: = stimulus.duplicate()
stimulus_up.label = stimulus_up.Grapheme.to_upper()
new_parakeet1.stimulus = stimulus
new_parakeet2.stimulus = stimulus_up
new_parakeet2.stimulus = stimulus
new_parakeet1.pressed.connect(_on_parakeet_pressed.bind(new_parakeet1))
new_parakeet2.pressed.connect(_on_parakeet_pressed.bind(new_parakeet2))
@@ -132,7 +135,7 @@ func _on_parakeet_pressed(parakeet: Parakeet) -> void:
func _on_selected_two() -> void:
if selected[0].stimulus.Grapheme.to_upper() == selected[1].stimulus.Grapheme.to_upper():
if selected[0].stimulus.Grapheme == selected[1].stimulus.Grapheme:
_correct()
else:
_wrong()