diff --git a/microjogos/2025S1/SSAG/background.png.import b/microjogos/2025S1/SSAG/background.png.import new file mode 100644 index 000000000..04a76bdc5 --- /dev/null +++ b/microjogos/2025S1/SSAG/background.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://4h45ocmeeg22" +path="res://.godot/imported/background.png-3225fac70bf30de7f5c0882a71ea0f44.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://microjogos/2025S1/SSAG/background.png" +dest_files=["res://.godot/imported/background.png-3225fac70bf30de7f5c0882a71ea0f44.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/microjogos/2025S1/SSAG/cenas/cenas.txt b/microjogos/2025S1/SSAG/cenas/cenas.txt new file mode 100644 index 000000000..d5166c6e2 --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/cenas.txt @@ -0,0 +1,2 @@ +Coloque suas cenas aqui! A cena que vai rodar no jogo deve necessariamente ser a Main.tscn + diff --git a/microjogos/2025S1/SSAG/cenas/main.tscn b/microjogos/2025S1/SSAG/cenas/main.tscn new file mode 100644 index 000000000..75cabf25f --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/main.tscn @@ -0,0 +1,4 @@ +[gd_scene format=3 uid="uid://kocsvlrdms8a"] + +[node name="Main" type="Node2D"] +texture_filter = 1 diff --git a/microjogos/2025S1/SSAG/cenas/sala-principal.tscn b/microjogos/2025S1/SSAG/cenas/sala-principal.tscn new file mode 100644 index 000000000..8384f9c49 --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/sala-principal.tscn @@ -0,0 +1,288 @@ +[gd_scene load_steps=27 format=3 uid="uid://hssyta72u6rf"] + +[ext_resource type="Script" uid="uid://b1d21rsccuh44" path="res://microjogos/2025S1/SSAG/cenas/scripts/sala_principal.gd" id="1_bkrwu"] +[ext_resource type="Texture2D" uid="uid://biu76x64ls5l8" path="res://microjogos/2025S1/SSAG/recursos/imagens/backgorundss.png" id="2_hkv0s"] +[ext_resource type="Script" uid="uid://dwtsk8odrb0ia" path="res://microjogos/2025S1/SSAG/cenas/scripts/camera_2d.gd" id="3_lu3tb"] +[ext_resource type="Texture2D" uid="uid://f4yqkgellvub" path="res://microjogos/2025S1/SSAG/recursos/imagens/tile_portalat.png" id="6_xufp0"] +[ext_resource type="Texture2D" uid="uid://y23i2040avjy" path="res://microjogos/2025S1/SSAG/recursos/imagens/tile_porta.png" id="7_2t6n6"] +[ext_resource type="Texture2D" uid="uid://b66e5nnnnmg11" path="res://icon.png" id="7_lu3tb"] +[ext_resource type="Texture2D" uid="uid://cjxofl8nnkose" path="res://microjogos/2025S1/SSAG/recursos/imagens/porta_frente.png" id="7_xufp0"] +[ext_resource type="AudioStream" uid="uid://crrr37wsv714n" path="res://microjogos/2025S1/SSAG/recursos/sons/170141__timgormly__8-bit-bump.wav" id="8_2t6n6"] +[ext_resource type="AudioStream" uid="uid://bwse77840pu1s" path="res://microjogos/2025S1/SSAG/recursos/sons/251936__dambient__8-bit-loop-halloween-walz-creepy-walz.ogg" id="9_hkv0s"] +[ext_resource type="Script" uid="uid://cfnl4x2kfsckt" path="res://microjogos/2025S1/SSAG/cenas/scripts/label.gd" id="10_hkv0s"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_f8u7u"] +atlas = ExtResource("6_xufp0") +region = Rect2(0, 64, 32, 32) + +[sub_resource type="AtlasTexture" id="AtlasTexture_lu3tb"] +atlas = ExtResource("6_xufp0") +region = Rect2(32, 32, 32, 32) + +[sub_resource type="AtlasTexture" id="AtlasTexture_xufp0"] +atlas = ExtResource("6_xufp0") +region = Rect2(0, 32, 32, 32) + +[sub_resource type="AtlasTexture" id="AtlasTexture_2t6n6"] +atlas = ExtResource("6_xufp0") +region = Rect2(32, 0, 32, 32) + +[sub_resource type="AtlasTexture" id="AtlasTexture_hkv0s"] +atlas = ExtResource("6_xufp0") +region = Rect2(0, 0, 32, 32) + +[sub_resource type="SpriteFrames" id="SpriteFrames_b6mr2"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": SubResource("AtlasTexture_f8u7u") +}], +"loop": false, +"name": &"demonio_spawn", +"speed": 10.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": SubResource("AtlasTexture_lu3tb") +}], +"loop": true, +"name": &"idle", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": SubResource("AtlasTexture_xufp0") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_2t6n6") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_hkv0s") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_2t6n6") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_xufp0") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_lu3tb") +}], +"loop": false, +"name": &"porta_fechando", +"speed": 12.0 +}] + +[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_f8u7u"] +texture = ExtResource("7_2t6n6") +texture_region_size = Vector2i(32, 32) +0:0/0 = 0 +1:0/0 = 0 +2:0/0 = 0 +0:1/0 = 0 +1:1/0 = 0 + +[sub_resource type="TileSet" id="TileSet_b6mr2"] +sources/0 = SubResource("TileSetAtlasSource_f8u7u") + +[sub_resource type="AtlasTexture" id="AtlasTexture_b6mr2"] +atlas = ExtResource("7_xufp0") +region = Rect2(32, 32, 32, 32) + +[sub_resource type="AtlasTexture" id="AtlasTexture_pbpkq"] +atlas = ExtResource("7_xufp0") +region = Rect2(64, 32, 32, 32) + +[sub_resource type="AtlasTexture" id="AtlasTexture_o4uf6"] +atlas = ExtResource("7_xufp0") +region = Rect2(0, 64, 32, 32) + +[sub_resource type="AtlasTexture" id="AtlasTexture_den6x"] +atlas = ExtResource("7_xufp0") +region = Rect2(0, 0, 32, 32) + +[sub_resource type="AtlasTexture" id="AtlasTexture_bnhn4"] +atlas = ExtResource("7_xufp0") +region = Rect2(32, 0, 32, 32) + +[sub_resource type="AtlasTexture" id="AtlasTexture_5dvu2"] +atlas = ExtResource("7_xufp0") +region = Rect2(64, 0, 32, 32) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yb4by"] +atlas = ExtResource("7_xufp0") +region = Rect2(0, 32, 32, 32) + +[sub_resource type="SpriteFrames" id="SpriteFrames_hgek1"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": SubResource("AtlasTexture_b6mr2") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_pbpkq") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_o4uf6") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_o4uf6") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_o4uf6") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_pbpkq") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_b6mr2") +}], +"loop": true, +"name": &"demonio_spawn", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": SubResource("AtlasTexture_den6x") +}], +"loop": false, +"name": &"idle", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": SubResource("AtlasTexture_bnhn4") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_5dvu2") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_yb4by") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_5dvu2") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_bnhn4") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_den6x") +}], +"loop": false, +"name": &"porta_fechando", +"speed": 12.0 +}] + +[node name="Sala-principal" type="Node2D"] +position = Vector2(279, 1054) +scale = Vector2(3.64112, 3.64112) +script = ExtResource("1_bkrwu") + +[node name="Area2D" type="Area2D" parent="."] + +[node name="Sprite2D" type="Sprite2D" parent="Area2D"] +texture_filter = 1 +position = Vector2(199.3, -140) +scale = Vector2(3.37622, 3.08333) +texture = ExtResource("2_hkv0s") + +[node name="Camera2D" type="Camera2D" parent="Area2D/Sprite2D"] +script = ExtResource("3_lu3tb") + +[node name="porta-direita" type="Area2D" parent="."] +position = Vector2(2, -51) + +[node name="portadir" type="AnimatedSprite2D" parent="porta-direita"] +texture_filter = 1 +position = Vector2(355.75, -85.75) +scale = Vector2(3.42188, 3.07813) +sprite_frames = SubResource("SpriteFrames_b6mr2") +animation = &"idle" +flip_h = true + +[node name="porta-esquerda" type="Area2D" parent="."] +position = Vector2(2, -51) + +[node name="TileMapLayer" type="TileMapLayer" parent="porta-esquerda"] +position = Vector2(335, -105.25) +scale = Vector2(0.302632, 0.295709) +tile_set = SubResource("TileSet_b6mr2") + +[node name="portaesq" type="AnimatedSprite2D" parent="porta-esquerda"] +texture_filter = 1 +position = Vector2(39, -85) +scale = Vector2(3.4375, 3.1875) +sprite_frames = SubResource("SpriteFrames_b6mr2") +animation = &"idle" + +[node name="porta-frente" type="Area2D" parent="."] + +[node name="portafrente" type="AnimatedSprite2D" parent="porta-frente"] +texture_filter = 1 +position = Vector2(199, -179) +scale = Vector2(3.625, 3.625) +sprite_frames = SubResource("SpriteFrames_hgek1") +animation = &"idle" + +[node name="Morte" type="Timer" parent="."] +process_callback = 0 +wait_time = 2.0 + +[node name="Timer2" type="Timer" parent="."] +process_callback = 0 +wait_time = 1.5 +autostart = true + +[node name="Sprite2D" type="Sprite2D" parent="."] +visible = false +texture_filter = 1 +position = Vector2(215, -180) +scale = Vector2(14.2031, 14.2031) +texture = ExtResource("7_lu3tb") + +[node name="bump" type="AudioStreamPlayer2D" parent="."] +stream = ExtResource("8_2t6n6") +volume_db = 0.991 + +[node name="musica" type="AudioStreamPlayer2D" parent="."] +stream = ExtResource("9_hkv0s") +volume_db = -2.971 + +[node name="Label" type="Label" parent="."] +offset_left = 46.0 +offset_top = -176.0 +offset_right = 354.0 +offset_bottom = -113.0 +theme_override_colors/font_outline_color = Color(0, 0, 0, 1) +theme_override_constants/outline_size = 20 +theme_override_font_sizes/font_size = 44 +text = "SOBREVIVA!!!" +horizontal_alignment = 1 +vertical_alignment = 1 +script = ExtResource("10_hkv0s") +metadata/_edit_use_anchors_ = true + +[node name="GLOBAL" type="Timer" parent="."] +process_callback = 0 +wait_time = 1.5 +autostart = true + +[node name="wincondition" type="Timer" parent="."] +wait_time = 6.0 +autostart = true + +[node name="vidas" type="Label" parent="."] +offset_left = -56.0 +offset_top = -276.0 +offset_right = 24.0 +offset_bottom = -242.0 +theme_override_colors/font_color = Color(0, 0, 0, 1) +theme_override_colors/font_outline_color = Color(1, 1, 1, 1) +theme_override_constants/outline_size = 5 +text = "Vidas = 3" + +[connection signal="timeout" from="Morte" to="." method="on_morte"] +[connection signal="timeout" from="Morte" to="Area2D/Sprite2D/Camera2D" method="morrido"] +[connection signal="timeout" from="Timer2" to="." method="_on_timer_timeout"] +[connection signal="timeout" from="GLOBAL" to="." method="testosd"] +[connection signal="timeout" from="wincondition" to="." method="_on_wincondition_timeout"] diff --git a/microjogos/2025S1/SSAG/cenas/scripts/audio_stream_player_2d.gd b/microjogos/2025S1/SSAG/cenas/scripts/audio_stream_player_2d.gd new file mode 100644 index 000000000..63b46eacd --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/scripts/audio_stream_player_2d.gd @@ -0,0 +1 @@ +extends AudioStreamPlayer2D diff --git a/microjogos/2025S1/SSAG/cenas/scripts/audio_stream_player_2d.gd.uid b/microjogos/2025S1/SSAG/cenas/scripts/audio_stream_player_2d.gd.uid new file mode 100644 index 000000000..f6c239cfc --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/scripts/audio_stream_player_2d.gd.uid @@ -0,0 +1 @@ +uid://c8pgpdg8i2pwe diff --git a/microjogos/2025S1/SSAG/cenas/scripts/camera_2d.gd b/microjogos/2025S1/SSAG/cenas/scripts/camera_2d.gd new file mode 100644 index 000000000..38338af46 --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/scripts/camera_2d.gd @@ -0,0 +1,25 @@ +extends Camera2D +@export var randomStrength: float = 7.0 +@export var shakeFade: float = 5.0 + +var rng = RandomNumberGenerator.new() +var shakeStrength: float = 0.0 +var morr = 0 + +@onready var gam = $"/root/Sala-principal/gamuto" + +func apply_shake(): + shakeStrength = randomStrength + +func randomOffset() -> Vector2: + return Vector2(rng.randf_range(-shakeStrength, shakeStrength), rng.randf_range(-shakeStrength, shakeStrength)) + +func _process(delta): + if(Input.is_action_just_pressed("direita") or Input.is_action_just_pressed("esquerda") or Input.is_action_just_pressed("cima") or morr == 1): + apply_shake() + if shakeStrength > 0: + shakeStrength = lerpf(shakeStrength,0,shakeFade * delta) + + offset = randomOffset() +func morrido(): + morr = 1 diff --git a/microjogos/2025S1/SSAG/cenas/scripts/camera_2d.gd.uid b/microjogos/2025S1/SSAG/cenas/scripts/camera_2d.gd.uid new file mode 100644 index 000000000..623a24499 --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/scripts/camera_2d.gd.uid @@ -0,0 +1 @@ +uid://dwtsk8odrb0ia diff --git a/microjogos/2025S1/SSAG/cenas/scripts/gamuto.gd b/microjogos/2025S1/SSAG/cenas/scripts/gamuto.gd new file mode 100644 index 000000000..ee3ff2947 --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/scripts/gamuto.gd @@ -0,0 +1,25 @@ +extends CharacterBody2D + +var vel = 60 +var grav = -150 + + +func _physics_process(delta): + velocity.y += 5 + if(Input.is_action_just_pressed("cima") and is_on_floor()): + velocity.y = grav + if(Input.is_action_pressed("direita")): + velocity.x = vel + else: + if(velocity.x < 0): + velocity.x += 10 + if(velocity.x > 0): + velocity.x = 0 + if(Input.is_action_pressed("esquerda")): + velocity.x = -vel + else: + if(velocity.x > 0): + velocity.x -= 10 + if(velocity.x < 0): + velocity.x = 0 + move_and_slide() diff --git a/microjogos/2025S1/SSAG/cenas/scripts/gamuto.gd.uid b/microjogos/2025S1/SSAG/cenas/scripts/gamuto.gd.uid new file mode 100644 index 000000000..ee1676260 --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/scripts/gamuto.gd.uid @@ -0,0 +1 @@ +uid://dvid37idra80t diff --git a/microjogos/2025S1/SSAG/cenas/scripts/label.gd b/microjogos/2025S1/SSAG/cenas/scripts/label.gd new file mode 100644 index 000000000..de5d6b1d6 --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/scripts/label.gd @@ -0,0 +1,8 @@ +extends Label +# +#var posx = position.x +#var posy = position.y +#var dir = 1 +# +#func _physics_process(delta: float) -> void: + #position.y = posy + 50 * cos(delta) diff --git a/microjogos/2025S1/SSAG/cenas/scripts/label.gd.uid b/microjogos/2025S1/SSAG/cenas/scripts/label.gd.uid new file mode 100644 index 000000000..eeff71094 --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/scripts/label.gd.uid @@ -0,0 +1 @@ +uid://cfnl4x2kfsckt diff --git a/microjogos/2025S1/SSAG/cenas/scripts/main.gd b/microjogos/2025S1/SSAG/cenas/scripts/main.gd new file mode 100644 index 000000000..debd0c994 --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/scripts/main.gd @@ -0,0 +1,72 @@ +extends Node2D + +# Declaração dos sinais win e lose + +signal win +signal lose + +# Estas constantes são usadas para determinar o tamanho da tela do seu jogo. Por padrão, definem uma +# tela 1920x1080, que é padrão para monitores full HD. Caso você queira uma resolução menor para +# atingir uma estética mais pixelada, você pode mudar estes números para qualquer outra resolução +# 16:9 +const WIDTH = 1920 +const HEIGHT = 1080 + + +# -------------------------------------------------------------------------------------------------- +# FUNÇÕES PADRÃO +# -------------------------------------------------------------------------------------------------- + +# Esta função é chamada assim que esta cena é instanciada, ou seja, assim que seu minigame inicia +func _ready(): + # Verifica a linguagem do jogo e mostra texto nesta linguagem. Deve dar uma ideia do que deve + # ser feito para vencer o jogo. A fonte usada não suporta caracteres latinos como ~ ou ´ + match Global.language: + Global.LANGUAGE.EN: + NotificationCenter.notify("DO SOMETHING!") + Global.LANGUAGE.PT: + NotificationCenter.notify("FAÇA ALGO!") + + +# Esta função é chamada uma vez por frame e é otimizada para cálculos relacionados a física, como +# a movimentação de um personagem. O parâmetro delta indica a quantidade de tempo que passou desde +# a última chamada desta função. O comando pass não faz nada +func _physics_process(delta): + pass + + +# Esta função é chamada uma vez por frame e é otimizada para cálculos relacionados a renderização, +# como a movimentação de um personagem. O parâmetro delta indica a quantidade de tempo que passou +# desde a última chamada desta função. O comando pass não faz nada +func _process(delta): + pass + + +# -------------------------------------------------------------------------------------------------- +# SUAS FUNÇÕES +# -------------------------------------------------------------------------------------------------- + + +# Um método genérico. Crie quantos métodos você precisar! +func my_method(): + pass + + +# -------------------------------------------------------------------------------------------------- +# CONDIÇÕES DE VITÓRIA +# -------------------------------------------------------------------------------------------------- +# Quando o jogo começa, ela assume que o jogador não conseguiu vencer o jogo ainda, ou seja, se não +# acontecer nada, o jogador vai perder o jogo. A verificação se o jogador venceu o minigame é feita +# com base na emissão dos sinais "win" e "lose". Se "win" foi o último sinal emitido, o jogador +# vencerá o jogo, e se "lose" foi o último sinal emitido ou nenhum sinal foi emitido, o jogador +# perderá o jogo + + +# Chame esta função para registrar que o jogador venceu o jogo +func register_win(): + emit_signal("win") + + +# Chame esta função para registrar que o jogador perdeu o jogo +func register_lose(): + emit_signal("lose") diff --git a/microjogos/2025S1/SSAG/cenas/scripts/main.gd.uid b/microjogos/2025S1/SSAG/cenas/scripts/main.gd.uid new file mode 100644 index 000000000..f4855d1fc --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/scripts/main.gd.uid @@ -0,0 +1 @@ +uid://bd0y18w13b8aw diff --git a/microjogos/2025S1/SSAG/cenas/scripts/porta_direita.gd b/microjogos/2025S1/SSAG/cenas/scripts/porta_direita.gd new file mode 100644 index 000000000..e69de29bb diff --git a/microjogos/2025S1/SSAG/cenas/scripts/porta_direita.gd.uid b/microjogos/2025S1/SSAG/cenas/scripts/porta_direita.gd.uid new file mode 100644 index 000000000..8aeaa4083 --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/scripts/porta_direita.gd.uid @@ -0,0 +1 @@ +uid://c401h72qkkv8o diff --git a/microjogos/2025S1/SSAG/cenas/scripts/porta_esquerda.gd b/microjogos/2025S1/SSAG/cenas/scripts/porta_esquerda.gd new file mode 100644 index 000000000..e69de29bb diff --git a/microjogos/2025S1/SSAG/cenas/scripts/porta_esquerda.gd.uid b/microjogos/2025S1/SSAG/cenas/scripts/porta_esquerda.gd.uid new file mode 100644 index 000000000..96509a94f --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/scripts/porta_esquerda.gd.uid @@ -0,0 +1 @@ +uid://bi1keydovqy6e diff --git a/microjogos/2025S1/SSAG/cenas/scripts/rich_text_label.gd b/microjogos/2025S1/SSAG/cenas/scripts/rich_text_label.gd new file mode 100644 index 000000000..eb0c4c5c6 --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/scripts/rich_text_label.gd @@ -0,0 +1 @@ +extends RichTextLabel diff --git a/microjogos/2025S1/SSAG/cenas/scripts/rich_text_label.gd.uid b/microjogos/2025S1/SSAG/cenas/scripts/rich_text_label.gd.uid new file mode 100644 index 000000000..10f0c6aac --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/scripts/rich_text_label.gd.uid @@ -0,0 +1 @@ +uid://b4bchmfp33o4s diff --git a/microjogos/2025S1/SSAG/cenas/scripts/sala_principal.gd b/microjogos/2025S1/SSAG/cenas/scripts/sala_principal.gd new file mode 100644 index 000000000..e3dc23257 --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/scripts/sala_principal.gd @@ -0,0 +1,115 @@ +extends Node2D + +var rng = RandomNumberGenerator.new() + +signal win +signal lose + +const WIDTH = 1920 +const HEIGHT = 1080 + +var porta_demonio = -1 +var erros = 3 + +@onready var vidas = $vidas +@onready var global = $GLOBAL +@onready var texto = $Label +@onready var morte = $Morte +@onready var tempo = $Timer2 +@onready var pesq = $"porta-esquerda/portaesq" +@onready var pdir = $"porta-direita/portadir" +@onready var pfrente = $"porta-frente/portafrente" +@onready var bump = $bump +@onready var musica = $musica + +func speedup(j): + if tempo.wait_time > 0.6: + tempo.wait_time -= 0.3 + if tempo.wait_time <= 0.6: + tempo.wait_time -= 0.1 + if morte.wait_time > 1: + morte.wait_time -= 0.2 + if morte.wait_time <= 1 and morte.wait_time > 0.5: + morte.wait_time -= 0.05 + else: + morte.wait_time = 0.5 + if j.speed_scale < 16: + pesq.speed_scale += 0.2 + pdir.speed_scale += 0.2 + pfrente.speed_scale += 0.2 + else: + pesq.speed_scale += 0.1 + pdir.speed_scale += 0.1 + pfrente.speed_scale += 0.1 + +func _ready() -> void: + musica.play() + tempo.start() + vidas.text = "Vidas = 3" + + + +func faceondoor(i): + if(i == 0): + pesq.play("demonio_spawn") + porta_demonio = 0 + morte.start() + speedup(pesq) + if(i == 1): + pdir.play("demonio_spawn") + porta_demonio = 1 + morte.start() + speedup(pdir) + if(i == 2): + pfrente.play("demonio_spawn") + porta_demonio = 2 + morte.start() + speedup(pfrente) + +func _physics_process(delta): + if(Input.is_action_just_pressed("direita")): + $"porta-direita/portadir".play("porta_fechando") + if(porta_demonio == 1): + porta_demonio = -1 + morte.stop() + tempo.start() + elif(porta_demonio != 1): + erros -= 1 + vidas.text = "Vidas = " + str(erros) + bump.play() + if(Input.is_action_just_pressed("esquerda")): + $"porta-esquerda/portaesq".play("porta_fechando") + if(porta_demonio == 0): + porta_demonio = -1 + morte.stop() + tempo.start() + elif(porta_demonio != 0): + erros -= 1 + vidas.text = "Vidas = " + str(erros) + bump.play() + if(Input.is_action_just_pressed("cima")): + $"porta-frente/portafrente".play("porta_fechando") + if(porta_demonio == 2): + porta_demonio = -1 + morte.stop() + tempo.start() + elif(porta_demonio != 2): + erros -= 1 + vidas.text = "Vidas = " + str(erros) + bump.play() + if(erros <= 0): + on_morte() + +func _on_timer_timeout(): + faceondoor(rng.randi_range(0, 2)) + tempo.stop() + +func on_morte(): + $Sprite2D.visible = true + emit_signal("lose") + +func testosd() -> void: + texto.text = "" + +func _on_wincondition_timeout() -> void: + emit_signal("win") diff --git a/microjogos/2025S1/SSAG/cenas/scripts/sala_principal.gd.uid b/microjogos/2025S1/SSAG/cenas/scripts/sala_principal.gd.uid new file mode 100644 index 000000000..6aefe0b29 --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/scripts/sala_principal.gd.uid @@ -0,0 +1 @@ +uid://b1d21rsccuh44 diff --git a/microjogos/2025S1/SSAG/cenas/scripts/scripts.txt b/microjogos/2025S1/SSAG/cenas/scripts/scripts.txt new file mode 100644 index 000000000..16124eaea --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/scripts/scripts.txt @@ -0,0 +1,3 @@ +Coloque seus scripts aqui! +# https://freesound.org/people/timgormly/sounds/170141/ +# https://freesound.org/people/dAmbient/sounds/251936/ diff --git a/microjogos/2025S1/SSAG/cenas/scripts/timer.gd b/microjogos/2025S1/SSAG/cenas/scripts/timer.gd new file mode 100644 index 000000000..8475dce45 --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/scripts/timer.gd @@ -0,0 +1 @@ +extends Timer diff --git a/microjogos/2025S1/SSAG/cenas/scripts/timer.gd.uid b/microjogos/2025S1/SSAG/cenas/scripts/timer.gd.uid new file mode 100644 index 000000000..bee5f5ad1 --- /dev/null +++ b/microjogos/2025S1/SSAG/cenas/scripts/timer.gd.uid @@ -0,0 +1 @@ +uid://brimrbtdcavis diff --git a/microjogos/2025S1/SSAG/das.png.import b/microjogos/2025S1/SSAG/das.png.import new file mode 100644 index 000000000..b94be43b1 --- /dev/null +++ b/microjogos/2025S1/SSAG/das.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dg56yxq8jvvn4" +path="res://.godot/imported/das.png-f544f4b49d5af2de3dbefed82ba46fa9.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://microjogos/2025S1/SSAG/das.png" +dest_files=["res://.godot/imported/das.png-f544f4b49d5af2de3dbefed82ba46fa9.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/microjogos/2025S1/SSAG/microgame.tres b/microjogos/2025S1/SSAG/microgame.tres new file mode 100644 index 000000000..8d2afdbbf --- /dev/null +++ b/microjogos/2025S1/SSAG/microgame.tres @@ -0,0 +1,13 @@ +[gd_resource type="Resource" script_class="MicrogameAsset" load_steps=2 format=3 uid="uid://xbkahnqujip"] + +[ext_resource type="Script" uid="uid://bus1nknp6xsc0" path="res://principal/microgame_asset.gd" id="1_h8hd4"] + +[resource] +script = ExtResource("1_h8hd4") +title_pt = &"TÍTULO DO JOGO" +title_en = &"GAME TITLE" +credits_pt = "Créditos do jogo" +credits_en = "Game crédits" +start_message_pt = &"FAÇA ALGO!" +start_message_en = &"DO SOMETHING!" +difficulty = 0 diff --git a/microjogos/2025S1/SSAG/ouuu.png.import b/microjogos/2025S1/SSAG/ouuu.png.import new file mode 100644 index 000000000..2ff2054d6 --- /dev/null +++ b/microjogos/2025S1/SSAG/ouuu.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dgwlmpdpbmy8m" +path="res://.godot/imported/ouuu.png-b546b4c0dedaa23de2080d5cd30f9cc2.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://microjogos/2025S1/SSAG/ouuu.png" +dest_files=["res://.godot/imported/ouuu.png-b546b4c0dedaa23de2080d5cd30f9cc2.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/microjogos/2025S1/SSAG/recursos/imagens/backgorundss.png b/microjogos/2025S1/SSAG/recursos/imagens/backgorundss.png new file mode 100644 index 000000000..a184fcecf Binary files /dev/null and b/microjogos/2025S1/SSAG/recursos/imagens/backgorundss.png differ diff --git a/microjogos/2025S1/SSAG/recursos/imagens/backgorundss.png.import b/microjogos/2025S1/SSAG/recursos/imagens/backgorundss.png.import new file mode 100644 index 000000000..699402285 --- /dev/null +++ b/microjogos/2025S1/SSAG/recursos/imagens/backgorundss.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://biu76x64ls5l8" +path="res://.godot/imported/backgorundss.png-be247ae5eecaffb6db9a7e78696f2fb9.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://microjogos/2025S1/SSAG/recursos/imagens/backgorundss.png" +dest_files=["res://.godot/imported/backgorundss.png-be247ae5eecaffb6db9a7e78696f2fb9.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/microjogos/2025S1/SSAG/recursos/imagens/capa.png b/microjogos/2025S1/SSAG/recursos/imagens/capa.png new file mode 100644 index 000000000..caddf3786 Binary files /dev/null and b/microjogos/2025S1/SSAG/recursos/imagens/capa.png differ diff --git a/microjogos/2025S1/SSAG/recursos/imagens/capa.png.import b/microjogos/2025S1/SSAG/recursos/imagens/capa.png.import new file mode 100644 index 000000000..ca7323f40 --- /dev/null +++ b/microjogos/2025S1/SSAG/recursos/imagens/capa.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cqxxc5xgcmjce" +path="res://.godot/imported/capa.png-cfb4da26b649e07ce0ddd4ae50c308de.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://microjogos/2025S1/SSAG/recursos/imagens/capa.png" +dest_files=["res://.godot/imported/capa.png-cfb4da26b649e07ce0ddd4ae50c308de.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/microjogos/2025S1/SSAG/recursos/imagens/imagens.txt b/microjogos/2025S1/SSAG/recursos/imagens/imagens.txt new file mode 100644 index 000000000..5ff140e1c --- /dev/null +++ b/microjogos/2025S1/SSAG/recursos/imagens/imagens.txt @@ -0,0 +1 @@ +Coloque suas imagens aqui! diff --git a/microjogos/2025S1/SSAG/recursos/imagens/porta_frente.png b/microjogos/2025S1/SSAG/recursos/imagens/porta_frente.png new file mode 100644 index 000000000..9844bc56b Binary files /dev/null and b/microjogos/2025S1/SSAG/recursos/imagens/porta_frente.png differ diff --git a/microjogos/2025S1/SSAG/recursos/imagens/porta_frente.png.import b/microjogos/2025S1/SSAG/recursos/imagens/porta_frente.png.import new file mode 100644 index 000000000..4eff591e1 --- /dev/null +++ b/microjogos/2025S1/SSAG/recursos/imagens/porta_frente.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cjxofl8nnkose" +path="res://.godot/imported/porta_frente.png-a5bce86c4fd927aa620729277bc63652.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://microjogos/2025S1/SSAG/recursos/imagens/porta_frente.png" +dest_files=["res://.godot/imported/porta_frente.png-a5bce86c4fd927aa620729277bc63652.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/microjogos/2025S1/SSAG/recursos/imagens/tile_porta.png b/microjogos/2025S1/SSAG/recursos/imagens/tile_porta.png new file mode 100644 index 000000000..145f69f67 Binary files /dev/null and b/microjogos/2025S1/SSAG/recursos/imagens/tile_porta.png differ diff --git a/microjogos/2025S1/SSAG/recursos/imagens/tile_porta.png.import b/microjogos/2025S1/SSAG/recursos/imagens/tile_porta.png.import new file mode 100644 index 000000000..a88af561c --- /dev/null +++ b/microjogos/2025S1/SSAG/recursos/imagens/tile_porta.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://y23i2040avjy" +path="res://.godot/imported/tile_porta.png-f6ebf4d3518545c84f6815241e1179c4.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://microjogos/2025S1/SSAG/recursos/imagens/tile_porta.png" +dest_files=["res://.godot/imported/tile_porta.png-f6ebf4d3518545c84f6815241e1179c4.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/microjogos/2025S1/SSAG/recursos/imagens/tile_portalat.png b/microjogos/2025S1/SSAG/recursos/imagens/tile_portalat.png new file mode 100644 index 000000000..18f9b32c9 Binary files /dev/null and b/microjogos/2025S1/SSAG/recursos/imagens/tile_portalat.png differ diff --git a/microjogos/2025S1/SSAG/recursos/imagens/tile_portalat.png.import b/microjogos/2025S1/SSAG/recursos/imagens/tile_portalat.png.import new file mode 100644 index 000000000..c5b3cd742 --- /dev/null +++ b/microjogos/2025S1/SSAG/recursos/imagens/tile_portalat.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://f4yqkgellvub" +path="res://.godot/imported/tile_portalat.png-0899c8a6b67d13e3de3ab4ed3f3e3c53.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://microjogos/2025S1/SSAG/recursos/imagens/tile_portalat.png" +dest_files=["res://.godot/imported/tile_portalat.png-0899c8a6b67d13e3de3ab4ed3f3e3c53.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/microjogos/2025S1/SSAG/recursos/sons/170141__timgormly__8-bit-bump.wav b/microjogos/2025S1/SSAG/recursos/sons/170141__timgormly__8-bit-bump.wav new file mode 100644 index 000000000..cdc7d4122 Binary files /dev/null and b/microjogos/2025S1/SSAG/recursos/sons/170141__timgormly__8-bit-bump.wav differ diff --git a/microjogos/2025S1/SSAG/recursos/sons/170141__timgormly__8-bit-bump.wav.import b/microjogos/2025S1/SSAG/recursos/sons/170141__timgormly__8-bit-bump.wav.import new file mode 100644 index 000000000..03e03e197 --- /dev/null +++ b/microjogos/2025S1/SSAG/recursos/sons/170141__timgormly__8-bit-bump.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://crrr37wsv714n" +path="res://.godot/imported/170141__timgormly__8-bit-bump.wav-1bd5682e46e138d68761da94fd589daa.sample" + +[deps] + +source_file="res://microjogos/2025S1/SSAG/recursos/sons/170141__timgormly__8-bit-bump.wav" +dest_files=["res://.godot/imported/170141__timgormly__8-bit-bump.wav-1bd5682e46e138d68761da94fd589daa.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/microjogos/2025S1/SSAG/recursos/sons/251936__dambient__8-bit-loop-halloween-walz-creepy-walz.ogg b/microjogos/2025S1/SSAG/recursos/sons/251936__dambient__8-bit-loop-halloween-walz-creepy-walz.ogg new file mode 100644 index 000000000..7f449194a Binary files /dev/null and b/microjogos/2025S1/SSAG/recursos/sons/251936__dambient__8-bit-loop-halloween-walz-creepy-walz.ogg differ diff --git a/microjogos/2025S1/SSAG/recursos/sons/251936__dambient__8-bit-loop-halloween-walz-creepy-walz.ogg.import b/microjogos/2025S1/SSAG/recursos/sons/251936__dambient__8-bit-loop-halloween-walz-creepy-walz.ogg.import new file mode 100644 index 000000000..8b8305703 --- /dev/null +++ b/microjogos/2025S1/SSAG/recursos/sons/251936__dambient__8-bit-loop-halloween-walz-creepy-walz.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://bwse77840pu1s" +path="res://.godot/imported/251936__dambient__8-bit-loop-halloween-walz-creepy-walz.ogg-8a7c32727da925105febef467ae15d05.oggvorbisstr" + +[deps] + +source_file="res://microjogos/2025S1/SSAG/recursos/sons/251936__dambient__8-bit-loop-halloween-walz-creepy-walz.ogg" +dest_files=["res://.godot/imported/251936__dambient__8-bit-loop-halloween-walz-creepy-walz.ogg-8a7c32727da925105febef467ae15d05.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/microjogos/2025S1/SSAG/recursos/sons/sons.txt b/microjogos/2025S1/SSAG/recursos/sons/sons.txt new file mode 100644 index 000000000..2109e5920 --- /dev/null +++ b/microjogos/2025S1/SSAG/recursos/sons/sons.txt @@ -0,0 +1 @@ +Coloque seus sons aqui! diff --git a/microjogos/2025S1/SSAG/seu projeto.txt b/microjogos/2025S1/SSAG/seu projeto.txt new file mode 100644 index 000000000..f499e1e54 --- /dev/null +++ b/microjogos/2025S1/SSAG/seu projeto.txt @@ -0,0 +1,5 @@ +Boas vindas à sua área de trabalho! Sinta-se livre para renomear essa pasta com o seu nome ou o nome do seu jogo. O que tiver aqui vai ser sua entrega final quando o seu jogo estiver pronto. + +As pastas aqui dentro tem arquivos de texto explicando seu propósito, e a cena principal está localizada em cenas. O arquivo capa é uma imagem 450x450 que aparece quando seu jogo carrega. Troque ela por alguma coisa interessante mais pra frente! + +Lembre de preencher o arquivo creditos.gd antes de entregar o seu jogo! diff --git a/microjogos/2025S1/SSAG/uhhh.png.import b/microjogos/2025S1/SSAG/uhhh.png.import new file mode 100644 index 000000000..294b5385a --- /dev/null +++ b/microjogos/2025S1/SSAG/uhhh.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://b04wps8gyubc1" +path="res://.godot/imported/uhhh.png-7c68b0006acfc5180d6f6dda74acd608.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://microjogos/2025S1/SSAG/uhhh.png" +dest_files=["res://.godot/imported/uhhh.png-7c68b0006acfc5180d6f6dda74acd608.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/microjogos/2025S1/SSAG/untitled.png.import b/microjogos/2025S1/SSAG/untitled.png.import new file mode 100644 index 000000000..10950607d --- /dev/null +++ b/microjogos/2025S1/SSAG/untitled.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://km2vwmgq7agl" +path="res://.godot/imported/untitled.png-71968d90bb4b42f67fdbd51adea2c393.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://microjogos/2025S1/SSAG/untitled.png" +dest_files=["res://.godot/imported/untitled.png-71968d90bb4b42f67fdbd51adea2c393.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