fixed roster generation
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 12s
Create tag and build when new code gets to main / Export (push) Successful in 1m29s

This commit is contained in:
2026-02-01 14:09:46 +01:00
parent 81b632d3aa
commit 09a92bd148
11 changed files with 76 additions and 64 deletions

View File

@@ -1,8 +1,8 @@
[gd_scene format=3 uid="uid://bvpyqyftqhy45"]
[ext_resource type="Script" uid="uid://dnt4l1eghm1gi" path="res://scenes/character/character.gd" id="1_cuyo6"]
[ext_resource type="Resource" uid="uid://gtk0ms164vl5" path="res://resources/characters/worker.tres" id="2_fgi2k"]
[ext_resource type="Texture2D" uid="uid://bveq6mbi1yuku" path="res://assets/characters/Perso 8.png" id="3_f8hpl"]
[ext_resource type="Resource" uid="uid://i4yr7hqobna7" path="res://resources/characters/prince.tres" id="2_fgi2k"]
[ext_resource type="Texture2D" uid="uid://c61n5v2xrlwy2" path="res://assets/characters/Perso 5.png" id="3_f8hpl"]
[ext_resource type="PackedScene" uid="uid://3jlukpb5hefb" path="res://scenes/mask/mask.tscn" id="3_mutn8"]
[sub_resource type="Animation" id="Animation_fgi2k"]
@@ -164,10 +164,11 @@ chara_resource = ExtResource("2_fgi2k")
texture = ExtResource("3_f8hpl")
[node name="MaskMouth" parent="." unique_id=1087336064 instance=ExtResource("3_mutn8")]
visible = false
position = Vector2(88.32, -14.73)
[node name="MaskEyes" parent="." unique_id=428968220 instance=ExtResource("3_mutn8")]
visible = false
position = Vector2(104.295, 9.395)
rotation = -0.017453292
[node name="AnimationPlayer" type="AnimationPlayer" parent="." unique_id=713965213]
libraries/ = SubResource("AnimationLibrary_7ex5l")

View File

@@ -25,12 +25,17 @@
[ext_resource type="Script" uid="uid://cgctwciolfqe5" path="res://scenes/camera/camera_controller.gd" id="14_0bhws"]
[ext_resource type="Texture2D" uid="uid://c60m6ulhqcbga" path="res://assets/decor/BG.png" id="14_os81g"]
[ext_resource type="Texture2D" uid="uid://dbpdehppn5h8v" path="res://assets/decor/entrance_bg_objects.png" id="15_1k3ck"]
[ext_resource type="Resource" uid="uid://c2v05fqr7cwll" path="res://resources/characters/bishop.tres" id="23_wcrab"]
[ext_resource type="Resource" uid="uid://vsvgpvluq7sh" path="res://resources/masks/blind.tres" id="24_g2upo"]
[ext_resource type="Resource" uid="uid://jcski7vdhybh" path="res://resources/characters/farmer.tres" id="24_gohbf"]
[ext_resource type="PackedScene" uid="uid://0rq12xgcteak" path="res://scenes/list/list.tscn" id="25_6llfj"]
[ext_resource type="Resource" uid="uid://t2n1q71ce4x6" path="res://resources/masks/deaf.tres" id="25_38d3o"]
[ext_resource type="Resource" uid="uid://dvmqrw5bylhv6" path="res://resources/characters/knight.tres" id="25_jucdw"]
[ext_resource type="Resource" uid="uid://dvmr6qryknr2j" path="res://resources/characters/nun.tres" id="26_6miv3"]
[ext_resource type="Resource" uid="uid://kau80jesm22w" path="res://resources/masks/falsy.tres" id="26_i6fjx"]
[ext_resource type="Resource" uid="uid://bfvky2dpu6vv0" path="res://resources/guests/duke_unmasked.tres" id="27_6w6mm"]
[ext_resource type="Resource" uid="uid://cfargib0urafc" path="res://resources/guests/duchex_unmasked.tres" id="27_62f45"]
[ext_resource type="Resource" uid="uid://i4yr7hqobna7" path="res://resources/characters/prince.tres" id="27_yisfj"]
[ext_resource type="Resource" uid="uid://q3o5oxegjx2" path="res://resources/masks/no_smell.tres" id="28_7dg2i"]
[ext_resource type="Resource" uid="uid://divy6byhpwgs2" path="res://resources/masks/truthy.tres" id="29_08tbl"]
[ext_resource type="Resource" uid="uid://c25kg6um2k1dy" path="res://resources/guests/duchex_mute.tres" id="29_62f45"]
@@ -400,8 +405,9 @@ texture = ExtResource("15_1k3ck")
[node name="GameManager" type="Node" parent="." unique_id=528989100 node_paths=PackedStringArray("character", "guest_list", "mask_list", "tables")]
script = ExtResource("3_hxu8e")
character_roster = Array[ExtResource("4_nvumn")]([ExtResource("5_ou6is"), ExtResource("6_necax"), ExtResource("7_r4lks"), ExtResource("8_pg34l")])
mask_roster = Array[ExtResource("9_m4h2d")]([ExtResource("24_g2upo"), ExtResource("25_38d3o"), ExtResource("26_i6fjx"), ExtResource("11_s17dp"), ExtResource("28_7dg2i"), ExtResource("29_08tbl")])
character_roster = Array[ExtResource("4_nvumn")]([ExtResource("5_ou6is"), ExtResource("6_necax"), ExtResource("7_r4lks"), ExtResource("8_pg34l"), ExtResource("23_wcrab"), ExtResource("24_gohbf"), ExtResource("25_jucdw"), ExtResource("26_6miv3"), ExtResource("27_yisfj")])
face_mask_roster = Array[ExtResource("9_m4h2d")]([ExtResource("24_g2upo"), ExtResource("25_38d3o"), ExtResource("28_7dg2i")])
mouth_mask_roster = Array[ExtResource("9_m4h2d")]([ExtResource("26_i6fjx"), ExtResource("11_s17dp"), ExtResource("29_08tbl")])
character = NodePath("../Character")
guest_list = NodePath("../GuestList")
mask_list = NodePath("../MaskList")
@@ -413,6 +419,7 @@ lvl2_guest_2 = ExtResource("30_6g32y")
lvl3_guest_1 = ExtResource("33_f4j1x")
lvl3_guest_2 = ExtResource("29_62f45")
lvl3_guest_3 = ExtResource("27_6w6mm")
current_level = 3
[node name="Camera2D" type="Camera2D" parent="." unique_id=1166192115]
limit_left = -960

View File

@@ -4,7 +4,8 @@ class_name GameManager
@export_category("Complete rosters")
@export var character_roster: Array[CharacterResource]
@export var mask_roster: Array[MaskResource]
@export var face_mask_roster: Array[MaskResource]
@export var mouth_mask_roster: Array[MaskResource]
@export_category("References")
@export var character: Character
@@ -31,6 +32,7 @@ class_name GameManager
@export_category("Random levels")
@export var current_level: Levels = Levels.LVL1
@export var max_number_guests: int = 9
@export var dual_mask_probability: float = 0.2
@export_tool_button("Create chara roster") var create_roster_action = create_new_roster
var current_chara_roster: Array[MaskedChara]
@@ -66,11 +68,24 @@ func create_new_roster() -> void:
var random_index = randi_range(0, roster_for_this_round.size() - 1)
var chara: CharacterResource = roster_for_this_round.pop_at(random_index)
var mouth_mask: MaskResource
var eyes_mask: MaskResource
var should_pick_eye_mask = randi_range(0, 1) == 1
var dual_masked = randf() <= dual_mask_probability
if (should_pick_eye_mask):
eyes_mask = face_mask_roster.pick_random()
if dual_masked:
mouth_mask = mouth_mask_roster.pick_random()
else:
mouth_mask = mouth_mask_roster.pick_random()
if dual_masked:
eyes_mask = face_mask_roster.pick_random()
# Associate a single mask (for now) to the character
var mask: MaskResource = mask_roster.pick_random()
var face_mask = mask if mask.region == MaskResource.Region.EYES else null
var mouth_mask = mask if mask.region == MaskResource.Region.MOUTH else null
var masked_chara = MaskedChara.new(chara, face_mask, mouth_mask)
# var mask: MaskResource = mask_roster.pick_random()
# var face_mask = mask if mask.region == MaskResource.Region.EYES else null
# var mouth_mask = mask if mask.region == MaskResource.Region.MOUTH else null
var masked_chara = MaskedChara.new(chara, eyes_mask, mouth_mask)
current_chara_roster.append(masked_chara)
@@ -119,7 +134,8 @@ func ending_tween_cb():
elif current_level == Levels.LVL2:
current_level = Levels.LVL3
else:
roster_size += 1
if final_score >= 0:
roster_size += 1
current_level = Levels.RANDOM
@@ -158,9 +174,9 @@ func on_ready_bell_pressed() -> void:
var all_masks_in_current_roster: Array[MaskResource] = []
for masked_chara in current_chara_roster:
all_chara_in_current_roster.append(masked_chara.character)
if masked_chara.face_mask.resource_name:
if masked_chara.face_mask != null and masked_chara.face_mask.resource_name:
all_masks_in_current_roster.append(masked_chara.face_mask)
if masked_chara.mouth_mask.resource_name:
if masked_chara.mouth_mask != null and masked_chara.mouth_mask.resource_name:
all_masks_in_current_roster.append(masked_chara.mouth_mask)
mask_list.set_mask_list(all_masks_in_current_roster)

View File

@@ -1,8 +1,8 @@
[gd_scene format=3 uid="uid://3jlukpb5hefb"]
[ext_resource type="Script" uid="uid://cfo3mk5f2q3ej" path="res://scenes/mask/mask.gd" id="1_61b51"]
[ext_resource type="Resource" uid="uid://pdiaprcknftw" path="res://resources/masks/mute.tres" id="2_0pm64"]
[ext_resource type="Texture2D" uid="uid://bfnvs01ynm55q" path="res://assets/masks/Bouche 3.png" id="3_htpgb"]
[ext_resource type="Resource" uid="uid://vsvgpvluq7sh" path="res://resources/masks/blind.tres" id="2_0pm64"]
[ext_resource type="Texture2D" uid="uid://sf7sjug1spau" path="res://assets/masks/Masque 1.png" id="3_htpgb"]
[node name="Mask" type="Node2D" unique_id=428968220]
script = ExtResource("1_61b51")