summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcelo Costa <>2024-01-27 16:16:43 -0300
committerMarcelo Costa <>2024-01-27 16:16:43 -0300
commit1aa604aca63ede5f97a68a1b20b51d157b3e614d (patch)
tree9358dbf72f466eff14711a2e1079e55340786449
parent7f4fc3b59c286c7c50df43c4f75eab330955e4f3 (diff)
parent9c2895c0015180b8bb43b8f9173af3f790f890df (diff)
downloadgamejam-ggj-2024-1aa604aca63ede5f97a68a1b20b51d157b3e614d.tar.gz
gamejam-ggj-2024-1aa604aca63ede5f97a68a1b20b51d157b3e614d.tar.bz2
gamejam-ggj-2024-1aa604aca63ede5f97a68a1b20b51d157b3e614d.zip
Merge branch 'main' of https://github.com/henriquelalves/ggj2024
-rw-r--r--game/main.gd12
-rw-r--r--game/main.tscn54
-rw-r--r--game/microgames/flowers_delivery/flowers_delivery.gd3
-rw-r--r--game/shared/scripts/microgame.gd24
-rw-r--r--game/transition/transition.tscn200
5 files changed, 179 insertions, 114 deletions
diff --git a/game/main.gd b/game/main.gd
index 3195392..68f2d3c 100644
--- a/game/main.gd
+++ b/game/main.gd
@@ -14,6 +14,11 @@ var _microgame_count = 1
func _ready() -> void:
+ %FadeAnimationPlayer.play("fade_in")
+ transition.reset()
+ transition.microgame_fade_out()
+ await %FadeAnimationPlayer.animation_finished
+
remove_child(microgame_viewport)
transition.microgame_viewport_container.add_child(microgame_viewport)
microgame_viewport.offset_bottom = 0
@@ -21,12 +26,8 @@ func _ready() -> void:
microgame_viewport.offset_right = 0
microgame_viewport.offset_top = 0
- transition.reset()
-
while true:
if _current_microgame != null:
- _current_microgame.process_mode = Node.PROCESS_MODE_DISABLED
-
await transition.microgame_fade_out()
_current_microgame.queue_free()
@@ -43,6 +44,9 @@ func _ready() -> void:
_current_microgame.process_mode = Node.PROCESS_MODE_INHERIT
_won_last_microgame = await _current_microgame.finished
+ _current_microgame.process_mode = Node.PROCESS_MODE_DISABLED
+
+ await get_tree().create_timer(1.0).timeout
_starting = false
_microgame_count += 1
diff --git a/game/main.tscn b/game/main.tscn
index 055f1d2..29f0699 100644
--- a/game/main.tscn
+++ b/game/main.tscn
@@ -1,8 +1,44 @@
-[gd_scene load_steps=3 format=3 uid="uid://culqaacu08vye"]
+[gd_scene load_steps=6 format=3 uid="uid://culqaacu08vye"]
[ext_resource type="Script" path="res://game/main.gd" id="1_i86db"]
[ext_resource type="PackedScene" uid="uid://u3g8s4kck61t" path="res://game/transition/transition.tscn" id="2_xhsf2"]
+[sub_resource type="Animation" id="Animation_krlic"]
+resource_name = "fade_in"
+tracks/0/type = "value"
+tracks/0/imported = false
+tracks/0/enabled = true
+tracks/0/path = NodePath("ColorRect:color")
+tracks/0/interp = 1
+tracks/0/loop_wrap = true
+tracks/0/keys = {
+"times": PackedFloat32Array(0, 1),
+"transitions": PackedFloat32Array(1, 1),
+"update": 0,
+"values": [Color(0, 0, 0, 1), Color(0, 0, 0, 0)]
+}
+
+[sub_resource type="Animation" id="Animation_q2678"]
+length = 0.001
+tracks/0/type = "value"
+tracks/0/imported = false
+tracks/0/enabled = true
+tracks/0/path = NodePath("ColorRect:color")
+tracks/0/interp = 1
+tracks/0/loop_wrap = true
+tracks/0/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [Color(0, 0, 0, 1)]
+}
+
+[sub_resource type="AnimationLibrary" id="AnimationLibrary_bnwsc"]
+_data = {
+"RESET": SubResource("Animation_q2678"),
+"fade_in": SubResource("Animation_krlic")
+}
+
[node name="Main" type="Node2D"]
script = ExtResource("1_i86db")
@@ -27,3 +63,19 @@ render_target_update_mode = 4
[node name="MicrogameTimer" type="Timer" parent="."]
unique_name_in_owner = true
wait_time = 5.0
+
+[node name="FadeLayer" type="CanvasLayer" parent="."]
+
+[node name="ColorRect" type="ColorRect" parent="FadeLayer"]
+anchors_preset = 15
+anchor_right = 1.0
+anchor_bottom = 1.0
+grow_horizontal = 2
+grow_vertical = 2
+color = Color(0, 0, 0, 1)
+
+[node name="FadeAnimationPlayer" type="AnimationPlayer" parent="FadeLayer"]
+unique_name_in_owner = true
+libraries = {
+"": SubResource("AnimationLibrary_bnwsc")
+}
diff --git a/game/microgames/flowers_delivery/flowers_delivery.gd b/game/microgames/flowers_delivery/flowers_delivery.gd
index e6c25da..79001b1 100644
--- a/game/microgames/flowers_delivery/flowers_delivery.gd
+++ b/game/microgames/flowers_delivery/flowers_delivery.gd
@@ -2,7 +2,6 @@ extends Microgame
# Called when the node enters the scene tree for the first time.
-func _ready() -> void:
+func _microgame_ready() -> void:
await $Timer.timeout
finished.emit(true if randf() < 0.5 else false)
- print("acabou")
diff --git a/game/shared/scripts/microgame.gd b/game/shared/scripts/microgame.gd
index 29b63ed..15fbc69 100644
--- a/game/shared/scripts/microgame.gd
+++ b/game/shared/scripts/microgame.gd
@@ -1,7 +1,29 @@
class_name Microgame
extends Node
+const MICROGAME_TIMER = 5.0
+
+enum MICROGAME_CONTROL {HEAD_ON_KEYBOARD, INVERTED_HAND, ONLY_PINKY}
+
@export var microgame_name = ""
-@export var instruction = ""
+@export var microgame_control: MICROGAME_CONTROL
+@export var instructions = ""
signal finished(won)
+
+
+func _ready():
+ var timer = Timer.new()
+ add_child(timer)
+ timer.one_shot = true
+ timer.start(MICROGAME_TIMER)
+
+ timer.timeout.connect(func():
+ finished.emit(false)
+ )
+
+ _microgame_ready()
+
+
+func _microgame_ready():
+ pass
diff --git a/game/transition/transition.tscn b/game/transition/transition.tscn
index 11b9fb1..d9b7e6c 100644
--- a/game/transition/transition.tscn
+++ b/game/transition/transition.tscn
@@ -13,105 +13,6 @@ font = ExtResource("2_phg5r")
font_size = 80
font_color = Color(0, 0, 0, 1)
-[sub_resource type="Animation" id="Animation_hump4"]
-length = 0.001
-tracks/0/type = "value"
-tracks/0/imported = false
-tracks/0/enabled = true
-tracks/0/path = NodePath("Foreground/Characters/CharacterAnimation:position")
-tracks/0/interp = 1
-tracks/0/loop_wrap = true
-tracks/0/keys = {
-"times": PackedFloat32Array(0),
-"transitions": PackedFloat32Array(1),
-"update": 0,
-"values": [Vector2(338, 305)]
-}
-tracks/1/type = "value"
-tracks/1/imported = false
-tracks/1/enabled = true
-tracks/1/path = NodePath("Foreground/Characters/CharacterAnimation2:position")
-tracks/1/interp = 1
-tracks/1/loop_wrap = true
-tracks/1/keys = {
-"times": PackedFloat32Array(0),
-"transitions": PackedFloat32Array(1),
-"update": 0,
-"values": [Vector2(163, 386)]
-}
-tracks/2/type = "value"
-tracks/2/imported = false
-tracks/2/enabled = true
-tracks/2/path = NodePath("Foreground/Characters/CharacterAnimation3:position")
-tracks/2/interp = 1
-tracks/2/loop_wrap = true
-tracks/2/keys = {
-"times": PackedFloat32Array(0),
-"transitions": PackedFloat32Array(1),
-"update": 0,
-"values": [Vector2(820, 306)]
-}
-tracks/3/type = "value"
-tracks/3/imported = false
-tracks/3/enabled = true
-tracks/3/path = NodePath("Foreground/Characters/CharacterAnimation4:position")
-tracks/3/interp = 1
-tracks/3/loop_wrap = true
-tracks/3/keys = {
-"times": PackedFloat32Array(0),
-"transitions": PackedFloat32Array(1),
-"update": 0,
-"values": [Vector2(982, 389)]
-}
-tracks/4/type = "value"
-tracks/4/imported = false
-tracks/4/enabled = true
-tracks/4/path = NodePath("Foreground/ViewportContainer/ColorRect:color")
-tracks/4/interp = 1
-tracks/4/loop_wrap = true
-tracks/4/keys = {
-"times": PackedFloat32Array(0),
-"transitions": PackedFloat32Array(1),
-"update": 0,
-"values": [Color(1, 1, 1, 1)]
-}
-tracks/5/type = "value"
-tracks/5/imported = false
-tracks/5/enabled = true
-tracks/5/path = NodePath("Foreground/ViewportContainer:size")
-tracks/5/interp = 1
-tracks/5/loop_wrap = true
-tracks/5/keys = {
-"times": PackedFloat32Array(0),
-"transitions": PackedFloat32Array(1),
-"update": 0,
-"values": [Vector2(432, 220)]
-}
-tracks/6/type = "value"
-tracks/6/imported = false
-tracks/6/enabled = true
-tracks/6/path = NodePath("Foreground/ViewportContainer:position")
-tracks/6/interp = 1
-tracks/6/loop_wrap = true
-tracks/6/keys = {
-"times": PackedFloat32Array(0),
-"transitions": PackedFloat32Array(1),
-"update": 0,
-"values": [Vector2(360, 68)]
-}
-tracks/7/type = "value"
-tracks/7/imported = false
-tracks/7/enabled = true
-tracks/7/path = NodePath("Foreground/MicrogameCountLabel:position")
-tracks/7/interp = 1
-tracks/7/loop_wrap = true
-tracks/7/keys = {
-"times": PackedFloat32Array(0),
-"transitions": PackedFloat32Array(1),
-"update": 0,
-"values": [Vector2(511, -116)]
-}
-
[sub_resource type="Animation" id="Animation_67853"]
resource_name = "microgame_fade_out"
length = 0.5
@@ -282,9 +183,96 @@ tracks/4/keys = {
}]
}
+[sub_resource type="Animation" id="Animation_gf6gi"]
+length = 0.001
+tracks/0/type = "value"
+tracks/0/imported = false
+tracks/0/enabled = true
+tracks/0/path = NodePath("Foreground/ViewportContainer/ColorRect:color")
+tracks/0/interp = 1
+tracks/0/loop_wrap = true
+tracks/0/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [Color(1, 1, 1, 1)]
+}
+tracks/1/type = "value"
+tracks/1/imported = false
+tracks/1/enabled = true
+tracks/1/path = NodePath("Foreground/ViewportContainer:size")
+tracks/1/interp = 1
+tracks/1/loop_wrap = true
+tracks/1/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [Vector2(432, 220)]
+}
+tracks/2/type = "value"
+tracks/2/imported = false
+tracks/2/enabled = true
+tracks/2/path = NodePath("Foreground/ViewportContainer:position")
+tracks/2/interp = 1
+tracks/2/loop_wrap = true
+tracks/2/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [Vector2(360, 68)]
+}
+tracks/3/type = "value"
+tracks/3/imported = false
+tracks/3/enabled = true
+tracks/3/path = NodePath("Foreground/Characters/CharacterAnimation:position")
+tracks/3/interp = 1
+tracks/3/loop_wrap = true
+tracks/3/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [Vector2(338, 305)]
+}
+tracks/4/type = "value"
+tracks/4/imported = false
+tracks/4/enabled = true
+tracks/4/path = NodePath("Foreground/Characters/CharacterAnimation2:position")
+tracks/4/interp = 1
+tracks/4/loop_wrap = true
+tracks/4/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [Vector2(163, 386)]
+}
+tracks/5/type = "value"
+tracks/5/imported = false
+tracks/5/enabled = true
+tracks/5/path = NodePath("Foreground/Characters/CharacterAnimation3:position")
+tracks/5/interp = 1
+tracks/5/loop_wrap = true
+tracks/5/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [Vector2(820, 306)]
+}
+tracks/6/type = "value"
+tracks/6/imported = false
+tracks/6/enabled = true
+tracks/6/path = NodePath("Foreground/Characters/CharacterAnimation4:position")
+tracks/6/interp = 1
+tracks/6/loop_wrap = true
+tracks/6/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [Vector2(982, 389)]
+}
+
[sub_resource type="AnimationLibrary" id="AnimationLibrary_en0c8"]
_data = {
-"RESET": SubResource("Animation_hump4"),
+"RESET": SubResource("Animation_gf6gi"),
"microgame_fade_out": SubResource("Animation_67853"),
"show_microgame_count": SubResource("Animation_8isba"),
"win_transition": SubResource("Animation_lm0of")
@@ -321,8 +309,8 @@ anchor_right = 1.0
anchor_bottom = 1.0
offset_left = 360.0
offset_top = 68.0
-offset_right = -360.0
-offset_bottom = -360.0
+offset_right = 792.0
+offset_bottom = 288.0
grow_horizontal = 2
grow_vertical = 2
@@ -350,10 +338,10 @@ anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
-offset_left = -65.0
-offset_top = -440.0
-offset_right = 171.0
-offset_bottom = -330.0
+offset_left = 2815.0
+offset_top = 1180.0
+offset_right = 3051.0
+offset_bottom = 1290.0
grow_horizontal = 2
grow_vertical = 2
text = "blabla"