fixed roster generation
This commit is contained in:
@@ -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")
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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")
|
||||
|
||||
Reference in New Issue
Block a user