Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
e457a20
carga archivo 3Patitas proyecto
andreagit1 Jun 1, 2026
b13b3c8
Merge pull request #43 from Game-Lab-6-0-UTP-Grupo-1-Equipo-3/Andrea
andreagit1 Jun 1, 2026
20c69bf
Intro y Game1
Jun 15, 2026
f551564
Merge pull request #45 from Game-Lab-6-0-UTP-Grupo-1-Equipo-3/Gabriela
JuaniCargnel Jun 15, 2026
c266bf3
Modificacion de proyectiles y narrativa minijuego 2
Jun 17, 2026
9d314f0
Merge pull request #46 from Game-Lab-6-0-UTP-Grupo-1-Equipo-3/Gabriela
gachiby-sys Jun 17, 2026
006dbfc
MINI JUEGO 1 + LOGICA SEPARADA PARA NO AFECTAR A LOS DEMAS MINIJUEGOS
saltinzzz Jun 17, 2026
50d10f6
Merge pull request #47 from Game-Lab-6-0-UTP-Grupo-1-Equipo-3/Stalin
saltinzzz Jun 17, 2026
88dcf83
Actualizacion Min3 - Outro
andreagit1 Jun 18, 2026
0783246
Merge branch 'main' into Andrea
andreagit1 Jun 18, 2026
f40614c
Merge pull request #48 from Game-Lab-6-0-UTP-Grupo-1-Equipo-3/Andrea
andreagit1 Jun 18, 2026
3e4510c
Juego 3patitas unificado
andreagit1 Jun 20, 2026
4801a4f
Version 3patitas new
andreagit1 Jun 22, 2026
941c34d
Actualizo player y escenas
andreagit1 Jun 22, 2026
c5b55f1
Cambios en el entorno del minijuego1 + assets para guard y el collect…
saltinzzz Jun 23, 2026
7ab06eb
Cambios Intro y min2
andreagit1 Jun 23, 2026
e5a67bc
Merge branch 'gamelab-group' of https://github.com/Game-Lab-6-0-UTP-G…
andreagit1 Jun 23, 2026
beb0b38
Merge branch 'gamelab-group' of https://github.com/Game-Lab-6-0-UTP-G…
andreagit1 Jun 23, 2026
4dec5da
Diseño combat actualizado
andreagit1 Jun 24, 2026
9f6cdd9
Actualizacion escena
andreagit1 Jun 24, 2026
fdcdd12
Rediseño min2
andreagit1 Jun 25, 2026
85d3929
Actualizacion min2 y min3
andreagit1 Jun 26, 2026
0aec17e
Juego completado y revisado
saltinzzz Jun 26, 2026
d31a893
Fusión definitiva: Forzando versión local del juego
saltinzzz Jun 26, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions MiniGameState.gd
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
extends Node

var collected_names: Array[String] = []
var current_scene: String = ""

func register(item_name: String, scene: String) -> void:
if scene != current_scene:
collected_names.clear()
current_scene = scene
if item_name not in collected_names:
collected_names.append(item_name)

func is_collected(item_name: String, scene: String) -> bool:
if scene != current_scene:
return false
return item_name in collected_names

func reset() -> void:
collected_names.clear()
current_scene = ""
1 change: 1 addition & 0 deletions MiniGameState.gd.uid
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
uid://crdej8ed5ildb
3 changes: 3 additions & 0 deletions project.godot
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ InputHud="res://scenes/ui_elements/input_hints/input_hud.tscn"
AspectRatioDebugger="*res://scenes/globals/aspect_ratio_debugger/aspect_ratio_debugger.tscn"
MouseManager="*res://scenes/globals/mouse_manager/mouse_manager.tscn"
PhantomCameraManager="*uid://duq6jhf6unyis"
MiniGameState="*uid://crdej8ed5ildb"

[debug]

Expand Down Expand Up @@ -93,6 +94,8 @@ projectiles=""
guard_enemy=""
sequence_object=""
hook_listener=""
vertical_guard=""
collectible=""

[input]

Expand Down
Original file line number Diff line number Diff line change
@@ -1,278 +1,77 @@
[gd_resource type="SpriteFrames" format=3 uid="uid://dtoylirwywk0j"]

[ext_resource type="Texture2D" uid="uid://nwjrfnnav0lk" path="res://scenes/game_elements/characters/player/components/storyweaver_blue_attack_01.png" id="1_h7p10"]
[ext_resource type="Texture2D" uid="uid://dgmobjvp2gcxu" path="res://scenes/game_elements/characters/player/components/storyweaver_blue_attack_02.png" id="2_bgej0"]
[ext_resource type="Texture2D" uid="uid://f0ujlnlolad7" path="res://scenes/game_elements/characters/player/components/storyweaver_blue_defeated.png" id="3_fmekh"]
[ext_resource type="Texture2D" uid="uid://ceiyxl0dy2cg1" path="res://scenes/game_elements/characters/player/components/storyweaver_blue_idle.png" id="3_lo7nh"]
[ext_resource type="Texture2D" uid="uid://dmvl71i6783rk" path="res://scenes/game_elements/characters/player/components/storyweaver_blue_walk.png" id="4_3nn5s"]

[sub_resource type="AtlasTexture" id="AtlasTexture_007i1"]
atlas = ExtResource("1_h7p10")
region = Rect2(0, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_6cv16"]
atlas = ExtResource("1_h7p10")
region = Rect2(192, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_j4nxn"]
atlas = ExtResource("1_h7p10")
region = Rect2(384, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_28m0y"]
atlas = ExtResource("1_h7p10")
region = Rect2(576, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_bbmj2"]
atlas = ExtResource("2_bgej0")
region = Rect2(0, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_kxw46"]
atlas = ExtResource("2_bgej0")
region = Rect2(192, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_8qxvo"]
atlas = ExtResource("2_bgej0")
region = Rect2(384, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_5q8fn"]
atlas = ExtResource("2_bgej0")
region = Rect2(576, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_5c6ie"]
atlas = ExtResource("3_fmekh")
region = Rect2(0, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_tcdtl"]
atlas = ExtResource("3_fmekh")
region = Rect2(192, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_8a2yc"]
atlas = ExtResource("3_fmekh")
region = Rect2(384, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_0k2r4"]
atlas = ExtResource("3_fmekh")
region = Rect2(576, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_8410a"]
atlas = ExtResource("3_fmekh")
region = Rect2(768, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_xol17"]
atlas = ExtResource("3_fmekh")
region = Rect2(960, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_iflks"]
atlas = ExtResource("3_fmekh")
region = Rect2(1152, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_71e06"]
atlas = ExtResource("3_fmekh")
region = Rect2(1344, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_kpp0b"]
atlas = ExtResource("3_fmekh")
region = Rect2(1536, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_7f782"]
atlas = ExtResource("3_fmekh")
region = Rect2(1728, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_nemgu"]
atlas = ExtResource("3_fmekh")
region = Rect2(1920, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_fcs02"]
atlas = ExtResource("3_lo7nh")
region = Rect2(0, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_myrg7"]
atlas = ExtResource("3_lo7nh")
region = Rect2(192, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_kvlxm"]
atlas = ExtResource("3_lo7nh")
region = Rect2(384, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_uf5tr"]
atlas = ExtResource("3_lo7nh")
region = Rect2(576, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_lgqa7"]
atlas = ExtResource("3_lo7nh")
region = Rect2(768, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_8ydkj"]
atlas = ExtResource("3_lo7nh")
region = Rect2(960, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_3j4b4"]
atlas = ExtResource("3_lo7nh")
region = Rect2(1152, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_yj68g"]
atlas = ExtResource("3_lo7nh")
region = Rect2(1344, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_ioxgp"]
atlas = ExtResource("3_lo7nh")
region = Rect2(1536, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_cnsyf"]
atlas = ExtResource("3_lo7nh")
region = Rect2(1728, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_uniwh"]
atlas = ExtResource("4_3nn5s")
region = Rect2(0, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_iqsei"]
atlas = ExtResource("4_3nn5s")
region = Rect2(192, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_tffgl"]
atlas = ExtResource("4_3nn5s")
region = Rect2(384, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_pk8ii"]
atlas = ExtResource("4_3nn5s")
region = Rect2(576, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_5mf0n"]
atlas = ExtResource("4_3nn5s")
region = Rect2(768, 0, 192, 192)

[sub_resource type="AtlasTexture" id="AtlasTexture_4hvnv"]
atlas = ExtResource("4_3nn5s")
region = Rect2(960, 0, 192, 192)
[ext_resource type="Texture2D" uid="uid://2y4oibv0s1da" path="res://scenes/quests/story_quests/3_patitas/player_components/personaje01.png" id="4_5nl38"]

[resource]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_007i1")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_6cv16")
"texture": ExtResource("4_5nl38")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_j4nxn")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_28m0y")
"texture": ExtResource("4_5nl38")
}],
"loop": true,
"name": &"attack_01",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_bbmj2")
"texture": ExtResource("4_5nl38")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_kxw46")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_8qxvo")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_5q8fn")
"texture": ExtResource("4_5nl38")
}],
"loop": true,
"name": &"attack_02",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_5c6ie")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_tcdtl")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_8a2yc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_0k2r4")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_8410a")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_xol17")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_iflks")
"texture": ExtResource("4_5nl38")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_71e06")
"texture": ExtResource("4_5nl38")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_kpp0b")
"texture": ExtResource("4_5nl38")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_7f782")
"texture": ExtResource("4_5nl38")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_nemgu")
"texture": ExtResource("4_5nl38")
}],
"loop": false,
"name": &"defeated",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_fcs02")
"texture": ExtResource("4_5nl38")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_myrg7")
"texture": ExtResource("4_5nl38")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_kvlxm")
"texture": ExtResource("4_5nl38")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_uf5tr")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_lgqa7")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_8ydkj")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_3j4b4")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_yj68g")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ioxgp")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_cnsyf")
"texture": ExtResource("4_5nl38")
}],
"loop": true,
"name": &"idle",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_uniwh")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_iqsei")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_tffgl")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_pk8ii")
"texture": ExtResource("4_5nl38")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_5mf0n")
"texture": ExtResource("4_5nl38")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_4hvnv")
"texture": ExtResource("4_5nl38")
}],
"loop": true,
"name": &"walk",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,5 +11,10 @@ func _physics_process(delta: float) -> void:
if character.velocity.is_zero_approx():
return

var target_angle: float = character.velocity.angle()
var offset := 0.0

if character.is_in_group("vertical_guard"):
offset = 90.0

var target_angle = character.velocity.angle() + deg_to_rad(offset)
rotation = rotate_toward(rotation, target_angle, delta * LOOK_AT_TURN_SPEED)
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
@tool
class_name Guard extends CharacterBody2D
## Enemy type that patrols along a path and raises an alert if the player is detected.

## Emitted when the player is detected.
## [br][br]
## As the name suggests, this is typically a [Player], but may be some
Expand Down
5 changes: 2 additions & 3 deletions scenes/game_elements/characters/enemies/guard/guard.tscn
Original file line number Diff line number Diff line change
Expand Up @@ -242,8 +242,8 @@ offset = Vector2(377.88, 10.7686)
script = ExtResource("4_lptvm")

[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="DetectionArea" unique_id=1176393945]
position = Vector2(-29.3333, -132)
polygon = PackedVector2Array(302, 48, 283, 52, 279, 52, 101, 114, 98, 114, 79, 124, 77, 124, 72, 131, 71, 131, 71, 138, 78, 145, 78, 146, 95, 154, 95, 155, 275, 226, 275, 227, 292, 231, 292, 232, 312, 230, 316, 230, 330, 222, 332, 222, 340, 214, 341, 214, 346, 205, 347, 205, 351, 185, 351, 100, 347, 82, 347, 79, 338, 67, 338, 65, 325, 55, 325, 54, 302, 47)
position = Vector2(-37, -137)
polygon = PackedVector2Array(329.3333, -16, 318.3333, -33, 290.3333, -51, 101, 114, 98, 114, 79, 124, 77, 124, 72, 131, 71, 131, 71, 138, 78, 145, 78, 146, 95, 154, 95, 155, 275, 226, 275, 227, 292, 231, 292, 232, 312, 230, 322, 240, 345, 232, 332, 235, 351, 223, 341, 214, 369, 208, 358, 217, 389, 187, 416, 137, 394, 64, 383, 45, 374, 34, 369, 24, 358, 17, 357, 9, 349.3333, -11)

[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="." unique_id=616054452]
unique_name_in_owner = true
Expand All @@ -264,7 +264,6 @@ shape = SubResource("CircleShape2D_nv25s")

[node name="PlayerAwareness" type="TextureProgressBar" parent="." unique_id=578256400]
unique_name_in_owner = true
visible = false
modulate = Color(1, 1, 1, 0)
z_index = 1
material = SubResource("CanvasItemMaterial_nv25s")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -92,10 +92,10 @@ const WALK_TARGET_SKIP_RANGE: float = 0.25

## The speed of the projectile initial impulse and the projectile bouncing impulse.
@export_range(10., 100., 5., "or_greater", "or_less", "suffix:m/s")
var projectile_speed: float = 30.0
var projectile_speed: float = 80.0

## The life span of the projectile.
@export_range(0., 10., 0.1, "or_greater", "suffix:s") var projectile_duration: float = 5.0
@export_range(0., 10., 0.1, "or_greater", "suffix:s") var projectile_duration: float = 10.0

## If true, the projectile will constantly adjust itself to target the player.
@export var projectile_follows_player: bool = false
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ const DEFAULT_SPRITE_FRAME: SpriteFrames = preload("uid://vwf8e1v8brdp")

## The character's name. This is used to highlight when the player's character
## is speaking during dialogue.
@export var player_name: String = "Player Name"
@export var player_name: String = "player name"

## The current player state.
@export var mode: Mode = Mode.USER_CONTROLLED:
Expand Down
Loading