Compare commits
9 Commits
v0.1.15
...
a4cf579c8e
| Author | SHA1 | Date | |
|---|---|---|---|
| a4cf579c8e | |||
| 6c50970d7e | |||
| de0c6a959d | |||
| 3eca322fdd | |||
| 4d43e7067f | |||
| db4aa83224 | |||
| 3786893384 | |||
| 1dbafe1940 | |||
| 4e3d70cd61 |
BIN
assets/characters/Perso 4.png
Normal file
|
After Width: | Height: | Size: 1.5 MiB |
40
assets/characters/Perso 4.png.import
Normal file
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dmmhwqsi3im3w"
|
||||
path="res://.godot/imported/Perso 4.png-e989af224594ede122096ea4cc4a8672.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/characters/Perso 4.png"
|
||||
dest_files=["res://.godot/imported/Perso 4.png-e989af224594ede122096ea4cc4a8672.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
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/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
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
|
||||
BIN
assets/masks/Bouche 1.png
Normal file
|
After Width: | Height: | Size: 304 KiB |
40
assets/masks/Bouche 1.png.import
Normal file
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dr265gon4k377"
|
||||
path="res://.godot/imported/Bouche 1.png-829bdfefb380a5c2146fb79677a3e54e.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/masks/Bouche 1.png"
|
||||
dest_files=["res://.godot/imported/Bouche 1.png-829bdfefb380a5c2146fb79677a3e54e.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
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/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
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
|
||||
BIN
assets/masks/Bouche 2.png
Normal file
|
After Width: | Height: | Size: 328 KiB |
40
assets/masks/Bouche 2.png.import
Normal file
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://02al0mfbvjc1"
|
||||
path="res://.godot/imported/Bouche 2.png-cef33809e989213ecdcb5eaec450d079.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/masks/Bouche 2.png"
|
||||
dest_files=["res://.godot/imported/Bouche 2.png-cef33809e989213ecdcb5eaec450d079.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
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/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
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
|
||||
BIN
assets/masks/Bouche 3.png
Normal file
|
After Width: | Height: | Size: 374 KiB |
40
assets/masks/Bouche 3.png.import
Normal file
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bfnvs01ynm55q"
|
||||
path="res://.godot/imported/Bouche 3.png-51e19461e5a132b25fc8982a596c9ed1.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/masks/Bouche 3.png"
|
||||
dest_files=["res://.godot/imported/Bouche 3.png-51e19461e5a132b25fc8982a596c9ed1.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
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/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
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
|
||||
|
Before Width: | Height: | Size: 320 KiB After Width: | Height: | Size: 291 KiB |
|
Before Width: | Height: | Size: 373 KiB After Width: | Height: | Size: 373 KiB |
|
Before Width: | Height: | Size: 320 KiB After Width: | Height: | Size: 320 KiB |
@@ -4,6 +4,10 @@
|
||||
[ext_resource type="Script" uid="uid://cgj703gjwdvs1" path="res://menus/scenes/menus/main_menu/main_menu_with_animations.gd" id="2_ytpwg"]
|
||||
[ext_resource type="PackedScene" uid="uid://xkqu58vkydps" path="res://menus/scenes/windows/main_menu_options_window.tscn" id="3_8i6b8"]
|
||||
[ext_resource type="PackedScene" uid="uid://cvweffl7bo7bj" path="res://menus/scenes/windows/main_menu_credits_window.tscn" id="4_t55r5"]
|
||||
[ext_resource type="Texture2D" uid="uid://c60m6ulhqcbga" path="res://assets/decor/BG.png" id="5_t55r5"]
|
||||
[ext_resource type="Texture2D" uid="uid://dbpdehppn5h8v" path="res://assets/decor/entrance_bg_objects.png" id="6_cgy0s"]
|
||||
[ext_resource type="Texture2D" uid="uid://ce7wdct4e27e1" path="res://assets/decor/reception.png" id="7_l4hix"]
|
||||
[ext_resource type="Texture2D" uid="uid://crjrcjpfo53t0" path="res://assets/decor/menu.png" id="8_cgy0s"]
|
||||
|
||||
[sub_resource type="Animation" id="1"]
|
||||
resource_name = "Intro"
|
||||
@@ -327,25 +331,84 @@ tree_root = SubResource("AnimationNodeStateMachine_vikuh")
|
||||
anim_player = NodePath("../MenuAnimationPlayer")
|
||||
parameters/conditions/intro_done = false
|
||||
|
||||
[node name="Bg" type="Sprite2D" parent="." index="3" unique_id=1561676140]
|
||||
position = Vector2(2417.25, 540)
|
||||
scale = Vector2(0.5, 0.5)
|
||||
texture = ExtResource("5_t55r5")
|
||||
|
||||
[node name="EntranceBgObjects" type="Sprite2D" parent="." index="4" unique_id=545575527]
|
||||
position = Vector2(967.25, 410)
|
||||
scale = Vector2(0.5, 0.5)
|
||||
texture = ExtResource("6_cgy0s")
|
||||
|
||||
[node name="Reception" type="Sprite2D" parent="." index="5" unique_id=513064627]
|
||||
position = Vector2(1063.85, 700)
|
||||
scale = Vector2(0.5, 0.5)
|
||||
texture = ExtResource("7_l4hix")
|
||||
|
||||
[node name="Menu" type="Sprite2D" parent="." index="6" unique_id=639397146]
|
||||
position = Vector2(955, 552.25)
|
||||
scale = Vector2(0.6, 0.6)
|
||||
texture = ExtResource("8_cgy0s")
|
||||
|
||||
[node name="TitleMargin" parent="MenuContainer" index="0"]
|
||||
theme_override_constants/margin_left = 232
|
||||
theme_override_constants/margin_top = 141
|
||||
|
||||
[node name="TitleContainer" parent="MenuContainer/TitleMargin" index="0"]
|
||||
modulate = Color(1, 1, 1, 0)
|
||||
|
||||
[node name="TitleLabel" parent="MenuContainer/TitleMargin/TitleContainer" index="0"]
|
||||
text = "GGJ26"
|
||||
custom_minimum_size = Vector2(200, 0)
|
||||
anchors_preset = 5
|
||||
anchor_left = 0.5
|
||||
anchor_right = 0.5
|
||||
offset_left = -268.5
|
||||
offset_right = 67.359985
|
||||
offset_bottom = 137.0
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
text = "A majordomo in Venice"
|
||||
autowrap_mode = 3
|
||||
script = null
|
||||
|
||||
[node name="SubTitleMargin" parent="MenuContainer" index="1"]
|
||||
theme_override_constants/margin_top = 256
|
||||
theme_override_constants/margin_right = 84
|
||||
|
||||
[node name="SubTitleContainer" parent="MenuContainer/SubTitleMargin" index="0"]
|
||||
modulate = Color(1, 1, 1, 0)
|
||||
|
||||
[node name="SubTitleLabel" parent="MenuContainer/SubTitleMargin/SubTitleContainer" index="0"]
|
||||
custom_minimum_size = Vector2(200, 0)
|
||||
anchors_preset = 5
|
||||
anchor_left = 0.5
|
||||
anchor_right = 0.5
|
||||
offset_left = -100.0
|
||||
offset_right = 200.0
|
||||
offset_bottom = 145.0
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
text = "Make tables plans for the best night possible"
|
||||
autowrap_mode = 3
|
||||
|
||||
[node name="MenuButtonsMargin" parent="MenuContainer" index="2"]
|
||||
theme_override_constants/margin_top = -177
|
||||
|
||||
[node name="MenuButtonsContainer" parent="MenuContainer/MenuButtonsMargin" index="0"]
|
||||
modulate = Color(1, 1, 1, 0)
|
||||
|
||||
[node name="MenuButtonsBoxContainer" parent="MenuContainer/MenuButtonsMargin/MenuButtonsContainer" index="0"]
|
||||
lock = true
|
||||
|
||||
[node name="OptionsButton" parent="MenuContainer/MenuButtonsMargin/MenuButtonsContainer/MenuButtonsBoxContainer" index="1"]
|
||||
visible = false
|
||||
|
||||
[node name="CreditsButton" parent="MenuContainer/MenuButtonsMargin/MenuButtonsContainer/MenuButtonsBoxContainer" index="2"]
|
||||
visible = false
|
||||
|
||||
[node name="VersionContainer" parent="VersionMargin" index="0"]
|
||||
modulate = Color(1, 1, 1, 0)
|
||||
|
||||
[node name="MouseFilter" type="Control" parent="." index="6" unique_id=420264660]
|
||||
[node name="MouseFilter" type="Control" parent="." index="10" unique_id=420264660]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
|
||||
@@ -2,27 +2,25 @@
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dwy3kklywl0ci" path="res://assets/characters/Perso 1.png" id="1_tppor"]
|
||||
[ext_resource type="Script" uid="uid://bwam50qxikpw4" path="res://scenes/character/chara_resource.gd" id="2_cyb15"]
|
||||
[ext_resource type="Resource" uid="uid://b6614fqoymxur" path="res://resources/traits/silent.tres" id="3_q0kni"]
|
||||
[ext_resource type="Script" uid="uid://cya40uohlvgbr" path="res://scenes/character/trait.gd" id="3_s53hh"]
|
||||
[ext_resource type="Resource" uid="uid://cefwc4j3p7m3v" path="res://resources/traits/black.tres" id="4_tppor"]
|
||||
[ext_resource type="Resource" uid="uid://blu5de2dhiu46" path="res://resources/traits/young.tres" id="5_cyb15"]
|
||||
[ext_resource type="Resource" uid="uid://ct4iy75ai7lmy" path="res://resources/traits/enby.tres" id="6_tppor"]
|
||||
[ext_resource type="Resource" uid="uid://b118uebk1ldog" path="res://resources/traits/noble.tres" id="7_03y2d"]
|
||||
[ext_resource type="Resource" uid="uid://c4kpcm4tplsgg" path="res://resources/traits/alone.tres" id="4_s53hh"]
|
||||
[ext_resource type="Resource" uid="uid://lhskiwag15k" path="res://resources/traits/talkative.tres" id="4_w5qmk"]
|
||||
[ext_resource type="Resource" uid="uid://ct4iy75ai7lmy" path="res://resources/traits/enby.tres" id="6_cyb15"]
|
||||
[ext_resource type="Resource" uid="uid://cb8jguybr1tlj" path="res://resources/traits/white.tres" id="7_s53hh"]
|
||||
[ext_resource type="Resource" uid="uid://blu5de2dhiu46" path="res://resources/traits/young.tres" id="8_p10lp"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_cyb15")
|
||||
name = "Duchex"
|
||||
chara_sprite = ExtResource("1_tppor")
|
||||
mask_eyes_position = Vector2(59.355, 227)
|
||||
mask_mouth_position = Vector2(64.8, 432.04)
|
||||
traits = Array[ExtResource("3_s53hh")]([ExtResource("4_tppor"), ExtResource("5_cyb15"), ExtResource("6_tppor"), ExtResource("7_03y2d")])
|
||||
preferences = Dictionary[int, int]({
|
||||
0: 0,
|
||||
2: 0,
|
||||
3: 0,
|
||||
5: 0,
|
||||
6: 2,
|
||||
8: 2,
|
||||
13: 0,
|
||||
14: 3
|
||||
mask_eyes_position = Vector2(61.445, 168.635)
|
||||
mask_eyes_rotation = -0.06981317007977318
|
||||
mask_mouth_position = Vector2(76.505, 203.355)
|
||||
mask_mouth_rotation = -0.05235987755982989
|
||||
traits = Array[ExtResource("3_s53hh")]([ExtResource("4_w5qmk"), ExtResource("6_cyb15"), ExtResource("7_s53hh"), ExtResource("8_p10lp")])
|
||||
preferences = Dictionary[ExtResource("3_s53hh"), int]({
|
||||
ExtResource("3_q0kni"): 0,
|
||||
ExtResource("4_s53hh"): 4
|
||||
})
|
||||
metadata/_custom_type_script = "uid://bwam50qxikpw4"
|
||||
|
||||
@@ -3,23 +3,25 @@
|
||||
[ext_resource type="Texture2D" uid="uid://spbjfmmk8o0s" path="res://assets/characters/Perso 3.png" id="1_d1fpd"]
|
||||
[ext_resource type="Script" uid="uid://bwam50qxikpw4" path="res://scenes/character/chara_resource.gd" id="2_ce0p8"]
|
||||
[ext_resource type="Script" uid="uid://cya40uohlvgbr" path="res://scenes/character/trait.gd" id="3_n21sh"]
|
||||
[ext_resource type="Resource" uid="uid://cefwc4j3p7m3v" path="res://resources/traits/black.tres" id="4_d1fpd"]
|
||||
[ext_resource type="Resource" uid="uid://blu5de2dhiu46" path="res://resources/traits/young.tres" id="5_12asi"]
|
||||
[ext_resource type="Resource" uid="uid://bmx28vnfhcs8b" path="res://resources/traits/man.tres" id="6_12asi"]
|
||||
[ext_resource type="Resource" uid="uid://b118uebk1ldog" path="res://resources/traits/noble.tres" id="7_d1fpd"]
|
||||
[ext_resource type="Resource" uid="uid://lhskiwag15k" path="res://resources/traits/talkative.tres" id="3_tvmgq"]
|
||||
[ext_resource type="Resource" uid="uid://c4kpcm4tplsgg" path="res://resources/traits/alone.tres" id="4_tl7uu"]
|
||||
[ext_resource type="Resource" uid="uid://bvophatys2o1o" path="res://resources/traits/old.tres" id="5_n21sh"]
|
||||
[ext_resource type="Resource" uid="uid://b6614fqoymxur" path="res://resources/traits/silent.tres" id="5_tl7uu"]
|
||||
[ext_resource type="Resource" uid="uid://cefwc4j3p7m3v" path="res://resources/traits/black.tres" id="7_12asi"]
|
||||
[ext_resource type="Resource" uid="uid://bmx28vnfhcs8b" path="res://resources/traits/man.tres" id="8_ce0p8"]
|
||||
[ext_resource type="Resource" uid="uid://blu5de2dhiu46" path="res://resources/traits/young.tres" id="9_ce0p8"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_ce0p8")
|
||||
name = "Duke"
|
||||
chara_sprite = ExtResource("1_d1fpd")
|
||||
mask_eyes_position = Vector2(-87.17, -459.345)
|
||||
mask_eyes_rotation = 0.11693705988361988
|
||||
mask_mouth_position = Vector2(-60.07, -343.01)
|
||||
traits = Array[ExtResource("3_n21sh")]([ExtResource("4_d1fpd"), ExtResource("5_12asi"), ExtResource("6_12asi"), ExtResource("7_d1fpd")])
|
||||
preferences = Dictionary[int, int]({
|
||||
5: 0,
|
||||
6: 0,
|
||||
8: 3,
|
||||
11: 0
|
||||
mask_eyes_position = Vector2(-23.295, -0.335)
|
||||
mask_eyes_rotation = -0.03490658503988659
|
||||
mask_mouth_position = Vector2(-1.83, 2.27)
|
||||
traits = Array[ExtResource("3_n21sh")]([ExtResource("5_tl7uu"), ExtResource("7_12asi"), ExtResource("8_ce0p8"), ExtResource("9_ce0p8")])
|
||||
preferences = Dictionary[ExtResource("3_n21sh"), int]({
|
||||
ExtResource("3_tvmgq"): 0,
|
||||
ExtResource("4_tl7uu"): 0,
|
||||
ExtResource("5_n21sh"): 4
|
||||
})
|
||||
metadata/_custom_type_script = "uid://bwam50qxikpw4"
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
[gd_resource type="Resource" script_class="CharacterResource" format=3 uid="uid://da2ptl3f7h0ot"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://c57s3oksagauh" path="res://assets/sprites/sprites by judas la carotte/sprite3 happy small.png" id="1_k1rnw"]
|
||||
[ext_resource type="Resource" uid="uid://c4kpcm4tplsgg" path="res://resources/traits/alone.tres" id="3_ic6rb"]
|
||||
[ext_resource type="Script" uid="uid://bwam50qxikpw4" path="res://scenes/character/chara_resource.gd" id="3_vvog1"]
|
||||
[ext_resource type="Script" uid="uid://cya40uohlvgbr" path="res://scenes/character/trait.gd" id="4_0s3fj"]
|
||||
[ext_resource type="Resource" uid="uid://bc376om20da8m" path="res://resources/traits/royal.tres" id="7_0s3fj"]
|
||||
[ext_resource type="Resource" uid="uid://cb8jguybr1tlj" path="res://resources/traits/white.tres" id="8_u46dm"]
|
||||
[ext_resource type="Resource" uid="uid://bvophatys2o1o" path="res://resources/traits/old.tres" id="9_fvshn"]
|
||||
[ext_resource type="Resource" uid="uid://bmx28vnfhcs8b" path="res://resources/traits/man.tres" id="10_hcmf1"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("3_vvog1")
|
||||
@@ -16,13 +13,7 @@ mask_eyes_position = Vector2(-21.75, -274.015)
|
||||
mask_eyes_rotation = 0.06981317007977318
|
||||
mask_mouth_position = Vector2(-7.63, -186.87)
|
||||
mask_mouth_rotation = -0.1884955592153878
|
||||
traits = Array[ExtResource("4_0s3fj")]([ExtResource("8_u46dm"), ExtResource("9_fvshn"), ExtResource("10_hcmf1"), ExtResource("7_0s3fj")])
|
||||
preferences = Dictionary[int, int]({
|
||||
4: 0,
|
||||
6: 0,
|
||||
11: 1,
|
||||
12: 3,
|
||||
13: 0,
|
||||
14: 1
|
||||
preferences = Dictionary[ExtResource("4_0s3fj"), int]({
|
||||
ExtResource("3_ic6rb"): 1
|
||||
})
|
||||
metadata/_custom_type_script = "uid://bwam50qxikpw4"
|
||||
|
||||
@@ -3,25 +3,27 @@
|
||||
[ext_resource type="Texture2D" uid="uid://c726frtpkk1a8" path="res://assets/characters/Perso 2.png" id="1_d1164"]
|
||||
[ext_resource type="Script" uid="uid://bwam50qxikpw4" path="res://scenes/character/chara_resource.gd" id="2_g8bvo"]
|
||||
[ext_resource type="Script" uid="uid://cya40uohlvgbr" path="res://scenes/character/trait.gd" id="3_dkw07"]
|
||||
[ext_resource type="Resource" uid="uid://bc376om20da8m" path="res://resources/traits/royal.tres" id="8_d1164"]
|
||||
[ext_resource type="Resource" uid="uid://lhskiwag15k" path="res://resources/traits/talkative.tres" id="3_y3hrs"]
|
||||
[ext_resource type="Resource" uid="uid://b6614fqoymxur" path="res://resources/traits/silent.tres" id="4_hdamc"]
|
||||
[ext_resource type="Resource" uid="uid://ct4iy75ai7lmy" path="res://resources/traits/enby.tres" id="5_wjlcp"]
|
||||
[ext_resource type="Resource" uid="uid://c4kpcm4tplsgg" path="res://resources/traits/alone.tres" id="6_hdamc"]
|
||||
[ext_resource type="Resource" uid="uid://bvophatys2o1o" path="res://resources/traits/old.tres" id="8_j0xhd"]
|
||||
[ext_resource type="Resource" uid="uid://cb8jguybr1tlj" path="res://resources/traits/white.tres" id="9_aywjr"]
|
||||
[ext_resource type="Resource" uid="uid://dmd7gilnmcefr" path="res://resources/traits/woman.tres" id="10_tw1u2"]
|
||||
[ext_resource type="Resource" uid="uid://deygyo2n88228" path="res://resources/traits/speaks_of_cats.tres" id="11_utmh4"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_g8bvo")
|
||||
name = "Queen"
|
||||
chara_sprite = ExtResource("1_d1164")
|
||||
mask_eyes_position = Vector2(13.285, 181.09)
|
||||
mask_mouth_position = Vector2(26.595, 398.745)
|
||||
traits = Array[ExtResource("3_dkw07")]([ExtResource("9_aywjr"), ExtResource("8_j0xhd"), ExtResource("10_tw1u2"), ExtResource("8_d1164"), ExtResource("11_utmh4")])
|
||||
preferences = Dictionary[int, int]({
|
||||
5: 2,
|
||||
6: 0,
|
||||
9: 2,
|
||||
11: 3,
|
||||
12: 0,
|
||||
14: 3
|
||||
mask_eyes_position = Vector2(48, 187.345)
|
||||
mask_eyes_rotation = 0.05235987755982989
|
||||
mask_mouth_position = Vector2(31.595, 176.245)
|
||||
mask_mouth_rotation = 0.01745329251994329
|
||||
traits = Array[ExtResource("3_dkw07")]([ExtResource("3_y3hrs"), ExtResource("9_aywjr"), ExtResource("10_tw1u2"), ExtResource("8_j0xhd")])
|
||||
preferences = Dictionary[ExtResource("3_dkw07"), int]({
|
||||
ExtResource("3_y3hrs"): 4,
|
||||
ExtResource("4_hdamc"): 0,
|
||||
ExtResource("5_wjlcp"): 3,
|
||||
ExtResource("6_hdamc"): 4
|
||||
})
|
||||
metadata/_custom_type_script = "uid://bwam50qxikpw4"
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
[gd_resource type="Resource" script_class="MaskedChara" format=3 uid="uid://ctqdbo8xg3v88"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://d26mv2xtvmpqt" path="res://scenes/mask/mask_resource.gd" id="1_mu37d"]
|
||||
[ext_resource type="Resource" uid="uid://c87odmn680x7" path="res://resources/characters/duchex.tres" id="1_vsvkr"]
|
||||
[ext_resource type="Script" uid="uid://b8peyg02l0mrn" path="res://scenes/managers/masked_chara.gd" id="2_f07ys"]
|
||||
[ext_resource type="Resource" uid="uid://cuf1ocb4px4m3" path="res://resources/masks/cat.tres" id="3_4tayd"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_f07ys")
|
||||
character = ExtResource("1_vsvkr")
|
||||
masks = Array[ExtResource("1_mu37d")]([ExtResource("3_4tayd")])
|
||||
metadata/_custom_type_script = "uid://b8peyg02l0mrn"
|
||||
11
resources/guests/duchex_mute.tres
Normal file
@@ -0,0 +1,11 @@
|
||||
[gd_resource type="Resource" script_class="MaskedChara" format=3 uid="uid://c25kg6um2k1dy"]
|
||||
|
||||
[ext_resource type="Resource" uid="uid://c87odmn680x7" path="res://resources/characters/duchex.tres" id="1_nsuhm"]
|
||||
[ext_resource type="Script" uid="uid://b8peyg02l0mrn" path="res://scenes/managers/masked_chara.gd" id="2_lb6bi"]
|
||||
[ext_resource type="Resource" uid="uid://pdiaprcknftw" path="res://resources/masks/mute.tres" id="2_xmkje"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_lb6bi")
|
||||
character = ExtResource("1_nsuhm")
|
||||
mouth_mask = ExtResource("2_xmkje")
|
||||
metadata/_custom_type_script = "uid://b8peyg02l0mrn"
|
||||
11
resources/guests/queen_blind.tres
Normal file
@@ -0,0 +1,11 @@
|
||||
[gd_resource type="Resource" script_class="MaskedChara" format=3 uid="uid://im83307vumpx"]
|
||||
|
||||
[ext_resource type="Resource" uid="uid://wq3g1j3l4gl6" path="res://resources/characters/queen.tres" id="1_8rhpq"]
|
||||
[ext_resource type="Resource" uid="uid://vsvgpvluq7sh" path="res://resources/masks/blind.tres" id="2_57tio"]
|
||||
[ext_resource type="Script" uid="uid://b8peyg02l0mrn" path="res://scenes/managers/masked_chara.gd" id="2_84xil"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_84xil")
|
||||
character = ExtResource("1_8rhpq")
|
||||
face_mask = ExtResource("2_57tio")
|
||||
metadata/_custom_type_script = "uid://b8peyg02l0mrn"
|
||||
@@ -1,12 +0,0 @@
|
||||
[gd_resource type="Resource" script_class="MaskedChara" format=3 uid="uid://ca2fcdibf0mdm"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://d26mv2xtvmpqt" path="res://scenes/mask/mask_resource.gd" id="1_ns508"]
|
||||
[ext_resource type="Resource" uid="uid://wq3g1j3l4gl6" path="res://resources/characters/queen.tres" id="1_xr5g8"]
|
||||
[ext_resource type="Script" uid="uid://b8peyg02l0mrn" path="res://scenes/managers/masked_chara.gd" id="2_5n8mj"]
|
||||
[ext_resource type="Resource" uid="uid://cbcqtj8mxngfy" path="res://resources/masks/unracist.tres" id="3_ugmdk"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_5n8mj")
|
||||
character = ExtResource("1_xr5g8")
|
||||
masks = Array[ExtResource("1_ns508")]([ExtResource("3_ugmdk")])
|
||||
metadata/_custom_type_script = "uid://b8peyg02l0mrn"
|
||||
@@ -1,12 +0,0 @@
|
||||
[gd_resource type="Resource" script_class="MaskResource" format=3 uid="uid://cuf1ocb4px4m3"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://buql3bcbqx4pp" path="res://menus/assets/git_logo/Git-Logo-2Color.png" id="1_1u1n5"]
|
||||
[ext_resource type="Script" uid="uid://d26mv2xtvmpqt" path="res://scenes/mask/mask_resource.gd" id="2_ypt8w"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_ypt8w")
|
||||
mask_sprite = ExtResource("1_1u1n5")
|
||||
tags_multipliers = Dictionary[int, int]({
|
||||
12: 0
|
||||
})
|
||||
metadata/_custom_type_script = "uid://d26mv2xtvmpqt"
|
||||
12
resources/masks/falsy.tres
Normal file
@@ -0,0 +1,12 @@
|
||||
[gd_resource type="Resource" script_class="MaskResource" format=3 uid="uid://kau80jesm22w"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dr265gon4k377" path="res://assets/masks/Bouche 1.png" id="1_r5drl"]
|
||||
[ext_resource type="Script" uid="uid://d26mv2xtvmpqt" path="res://scenes/mask/mask_resource.gd" id="2_ncal4"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_ncal4")
|
||||
mask_sprite = ExtResource("1_r5drl")
|
||||
region = 1
|
||||
stimuli = 1
|
||||
stimuli_multiplier = -2.0
|
||||
metadata/_custom_type_script = "uid://d26mv2xtvmpqt"
|
||||
@@ -1,11 +1,12 @@
|
||||
[gd_resource type="Resource" script_class="MaskResource" format=3 uid="uid://pdiaprcknftw"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://d26mv2xtvmpqt" path="res://scenes/mask/mask_resource.gd" id="1_urvbb"]
|
||||
[ext_resource type="Texture2D" uid="uid://cftllq6l7xclt" path="res://icon.svg" id="1_wp4x3"]
|
||||
[ext_resource type="Texture2D" uid="uid://bfnvs01ynm55q" path="res://assets/masks/Bouche 3.png" id="1_wp4x3"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_urvbb")
|
||||
mask_sprite = ExtResource("1_wp4x3")
|
||||
region = 1
|
||||
stimuli = 1
|
||||
stimuli_multiplier = 0.0
|
||||
metadata/_custom_type_script = "uid://d26mv2xtvmpqt"
|
||||
|
||||
12
resources/masks/truthy.tres
Normal file
@@ -0,0 +1,12 @@
|
||||
[gd_resource type="Resource" script_class="MaskResource" format=3 uid="uid://divy6byhpwgs2"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://02al0mfbvjc1" path="res://assets/masks/Bouche 2.png" id="1_dunu4"]
|
||||
[ext_resource type="Script" uid="uid://d26mv2xtvmpqt" path="res://scenes/mask/mask_resource.gd" id="2_cle5s"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_cle5s")
|
||||
mask_sprite = ExtResource("1_dunu4")
|
||||
region = 1
|
||||
stimuli = 1
|
||||
stimuli_multiplier = 2.0
|
||||
metadata/_custom_type_script = "uid://d26mv2xtvmpqt"
|
||||
@@ -1,12 +0,0 @@
|
||||
[gd_resource type="Resource" script_class="MaskResource" format=3 uid="uid://cbcqtj8mxngfy"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://d26mv2xtvmpqt" path="res://scenes/mask/mask_resource.gd" id="1_fs0fy"]
|
||||
[ext_resource type="Texture2D" uid="uid://cftllq6l7xclt" path="res://icon.svg" id="1_fv3id"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_fs0fy")
|
||||
mask_sprite = ExtResource("1_fv3id")
|
||||
mask_transform = null
|
||||
category = 3
|
||||
category_multiplier = 0.0
|
||||
metadata/_custom_type_script = "uid://d26mv2xtvmpqt"
|
||||
11
resources/traits/alone.tres
Normal file
@@ -0,0 +1,11 @@
|
||||
[gd_resource type="Resource" script_class="Trait" format=3 uid="uid://c4kpcm4tplsgg"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cya40uohlvgbr" path="res://scenes/character/trait.gd" id="1_w8hps"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_w8hps")
|
||||
name = "alone"
|
||||
stimulis = Array[int]([0, 1, 2])
|
||||
category = 5
|
||||
tag = 14
|
||||
metadata/_custom_type_script = "uid://cya40uohlvgbr"
|
||||
9
resources/traits/silent.tres
Normal file
@@ -0,0 +1,9 @@
|
||||
[gd_resource type="Resource" script_class="Trait" format=3 uid="uid://b6614fqoymxur"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cya40uohlvgbr" path="res://scenes/character/trait.gd" id="1_750wv"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_750wv")
|
||||
name = "silent"
|
||||
stimulis = Array[int]([1])
|
||||
metadata/_custom_type_script = "uid://cya40uohlvgbr"
|
||||
9
resources/traits/talkative.tres
Normal file
@@ -0,0 +1,9 @@
|
||||
[gd_resource type="Resource" script_class="Trait" format=3 uid="uid://lhskiwag15k"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cya40uohlvgbr" path="res://scenes/character/trait.gd" id="1_rcjnw"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_rcjnw")
|
||||
name = "talkative"
|
||||
stimulis = Array[int]([1])
|
||||
metadata/_custom_type_script = "uid://cya40uohlvgbr"
|
||||
@@ -5,6 +5,5 @@
|
||||
[resource]
|
||||
script = ExtResource("1_msbkw")
|
||||
name = "young"
|
||||
stimulis = Array[int]([1, 2])
|
||||
tags = Array[int]([0])
|
||||
stimulis = Array[int]([1])
|
||||
metadata/_custom_type_script = "uid://cya40uohlvgbr"
|
||||
|
||||
@@ -42,4 +42,4 @@ var mask_mouth_rotation : float = 0.0:
|
||||
|
||||
@export_category("Traits and preferences")
|
||||
@export var traits: Array[Trait]
|
||||
@export var preferences: Dictionary[Trait.Tag, Preference]
|
||||
@export var preferences: Dictionary[Trait, Preference]
|
||||
|
||||
@@ -27,17 +27,6 @@ func _ready() -> void:
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta: float) -> void:
|
||||
if Engine.is_editor_hint():
|
||||
_engine_process(delta)
|
||||
else:
|
||||
_game_process(delta)
|
||||
|
||||
|
||||
func _game_process(delta: float) -> void:
|
||||
pass
|
||||
|
||||
|
||||
func _engine_process(delta: float) -> void:
|
||||
if chara_resource == null:
|
||||
return
|
||||
|
||||
|
||||
@@ -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://wq3g1j3l4gl6" path="res://resources/characters/queen.tres" id="2_fgi2k"]
|
||||
[ext_resource type="Texture2D" uid="uid://c726frtpkk1a8" path="res://assets/characters/Perso 2.png" id="3_f8hpl"]
|
||||
[ext_resource type="Resource" uid="uid://c87odmn680x7" path="res://resources/characters/duchex.tres" id="2_fgi2k"]
|
||||
[ext_resource type="Texture2D" uid="uid://dwy3kklywl0ci" path="res://assets/characters/Perso 1.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,12 @@ chara_resource = ExtResource("2_fgi2k")
|
||||
texture = ExtResource("3_f8hpl")
|
||||
|
||||
[node name="MaskMouth" parent="." unique_id=1087336064 instance=ExtResource("3_mutn8")]
|
||||
position = Vector2(26.595, 398.745)
|
||||
position = Vector2(76.505, 203.355)
|
||||
rotation = -0.05235988
|
||||
|
||||
[node name="MaskEyes" parent="." unique_id=428968220 instance=ExtResource("3_mutn8")]
|
||||
position = Vector2(13.285, 181.09)
|
||||
position = Vector2(61.445, 168.635)
|
||||
rotation = -0.06981317
|
||||
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="." unique_id=713965213]
|
||||
libraries/ = SubResource("AnimationLibrary_7ex5l")
|
||||
|
||||
@@ -18,20 +18,24 @@
|
||||
[ext_resource type="AudioStream" uid="uid://x6erlvj03nlm" path="res://assets/audio/kenney_casino-audio/Audio/card-slide-8.ogg" id="9_i7in8"]
|
||||
[ext_resource type="Script" uid="uid://d26mv2xtvmpqt" path="res://scenes/mask/mask_resource.gd" id="9_m4h2d"]
|
||||
[ext_resource type="AudioStream" uid="uid://vrw6idscfnei" path="res://assets/audio/kenney_casino-audio/Audio/card-shove-1.ogg" id="10_6llfj"]
|
||||
[ext_resource type="Resource" uid="uid://cuf1ocb4px4m3" path="res://resources/masks/cat.tres" id="10_p8abn"]
|
||||
[ext_resource type="AudioStream" uid="uid://b5ea6pr6bv85d" path="res://assets/audio/kenney_casino-audio/Audio/card-shove-2.ogg" id="11_0bhws"]
|
||||
[ext_resource type="Resource" uid="uid://pdiaprcknftw" path="res://resources/masks/mute.tres" id="11_s17dp"]
|
||||
[ext_resource type="Resource" uid="uid://cbcqtj8mxngfy" path="res://resources/masks/unracist.tres" id="12_37hlw"]
|
||||
[ext_resource type="AudioStream" uid="uid://dpv07j0ia0ayl" path="res://assets/audio/kenney_casino-audio/Audio/card-shove-3.ogg" id="12_62atk"]
|
||||
[ext_resource type="AudioStream" uid="uid://b7pe3ogc8rbvx" path="res://assets/audio/kenney_casino-audio/Audio/card-shove-4.ogg" id="13_i7in8"]
|
||||
[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://vsvgpvluq7sh" path="res://resources/masks/blind.tres" id="24_g2upo"]
|
||||
[ext_resource type="PackedScene" uid="uid://0rq12xgcteak" path="res://scenes/list/list.tscn" id="25_6llfj"]
|
||||
[ext_resource type="Resource" uid="uid://dfguca2526tk6" path="res://resources/guests/queen_unmasked.tres" id="26_rofvo"]
|
||||
[ext_resource type="Resource" uid="uid://t2n1q71ce4x6" path="res://resources/masks/deaf.tres" id="25_38d3o"]
|
||||
[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://ca2fcdibf0mdm" path="res://resources/guests/queen_unracist.tres" id="28_r1bmu"]
|
||||
[ext_resource type="Resource" uid="uid://ctqdbo8xg3v88" path="res://resources/guests/duchex_cat.tres" id="29_6w6mm"]
|
||||
[ext_resource type="Resource" uid="uid://cfargib0urafc" path="res://resources/guests/duchex_unmasked.tres" id="27_62f45"]
|
||||
[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"]
|
||||
[ext_resource type="Resource" uid="uid://dfguca2526tk6" path="res://resources/guests/queen_unmasked.tres" id="30_6g32y"]
|
||||
[ext_resource type="Resource" uid="uid://im83307vumpx" path="res://resources/guests/queen_blind.tres" id="33_f4j1x"]
|
||||
[ext_resource type="Script" uid="uid://bb0od2qqdx3or" path="res://scenes/main/ready_bell.gd" id="33_tbnf8"]
|
||||
[ext_resource type="Texture2D" uid="uid://c3bxwu75mcl87" path="res://assets/decor/mask_page_held.png" id="35_1k3ck"]
|
||||
[ext_resource type="Texture2D" uid="uid://ce7wdct4e27e1" path="res://assets/decor/reception.png" id="35_62f45"]
|
||||
@@ -326,10 +330,22 @@ tracks/0/keys = {
|
||||
"update": 0,
|
||||
"values": [Vector2(131, 317.00003)]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath(".:visible")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [false]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_62f45"]
|
||||
resource_name = "idle"
|
||||
length = 0.3
|
||||
length = 4.0
|
||||
loop_mode = 1
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
@@ -338,10 +354,22 @@ tracks/0/path = NodePath(".:position")
|
||||
tracks/0/interp = 2
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 0.16666667),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"times": PackedFloat32Array(0, 0.3, 0.6),
|
||||
"transitions": PackedFloat32Array(1, 1, 1),
|
||||
"update": 0,
|
||||
"values": [Vector2(131, 317.00003), Vector2(131, 478)]
|
||||
"values": [Vector2(131, 317.00003), Vector2(131, 478), Vector2(131, 317.00003)]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath(".:visible")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0, 0.6),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 1,
|
||||
"values": [true, false]
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_6g32y"]
|
||||
@@ -373,15 +401,18 @@ 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("10_p8abn"), ExtResource("11_s17dp"), ExtResource("12_37hlw")])
|
||||
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 = NodePath("../Character")
|
||||
guest_list = NodePath("../GuestList")
|
||||
mask_list = NodePath("../MaskList")
|
||||
tables = [NodePath("../Table"), NodePath("../Table2"), NodePath("../Table3")]
|
||||
lvl1_guest_1 = ExtResource("26_rofvo")
|
||||
lvl1_guest_1 = ExtResource("27_62f45")
|
||||
lvl1_guest_2 = ExtResource("27_6w6mm")
|
||||
lvl2_guest_1 = ExtResource("28_r1bmu")
|
||||
lvl2_guest_2 = ExtResource("29_6w6mm")
|
||||
lvl2_guest_1 = ExtResource("27_62f45")
|
||||
lvl2_guest_2 = ExtResource("30_6g32y")
|
||||
lvl3_guest_1 = ExtResource("33_f4j1x")
|
||||
lvl3_guest_2 = ExtResource("29_62f45")
|
||||
lvl3_guest_3 = ExtResource("27_6w6mm")
|
||||
|
||||
[node name="Camera2D" type="Camera2D" parent="." unique_id=1166192115]
|
||||
limit_left = -960
|
||||
@@ -423,7 +454,6 @@ scale = Vector2(0.5, 0.5)
|
||||
texture = ExtResource("35_62f45")
|
||||
|
||||
[node name="MaskList" parent="." unique_id=437192154 instance=ExtResource("25_6llfj")]
|
||||
visible = false
|
||||
position = Vector2(409, 523)
|
||||
rotation = 0.1675516
|
||||
scale = Vector2(0.99999994, 0.99999994)
|
||||
@@ -455,6 +485,7 @@ scale = Vector2(0.3, 0.3)
|
||||
texture = ExtResource("37_6g32y")
|
||||
|
||||
[node name="RingBell" type="Sprite2D" parent="." unique_id=1001478580]
|
||||
visible = false
|
||||
position = Vector2(131, 317.00003)
|
||||
scale = Vector2(0.3, 0.3)
|
||||
texture = ExtResource("39_62f45")
|
||||
|
||||
@@ -23,8 +23,13 @@ class_name GameManager
|
||||
@export var lvl2_guest_1: MaskedChara
|
||||
@export var lvl2_guest_2: MaskedChara
|
||||
|
||||
@export_group("Level 3")
|
||||
@export var lvl3_guest_1: MaskedChara
|
||||
@export var lvl3_guest_2: MaskedChara
|
||||
@export var lvl3_guest_3: MaskedChara
|
||||
|
||||
@export_category("Random levels")
|
||||
@export var max_roster_size: int = 3;
|
||||
@export var current_level: Levels = Levels.LVL1
|
||||
@export_tool_button("Create chara roster") var create_roster_action = create_new_roster
|
||||
|
||||
var current_chara_roster: Array[MaskedChara]
|
||||
@@ -37,24 +42,24 @@ enum GameState {
|
||||
enum Levels {
|
||||
LVL1,
|
||||
LVL2,
|
||||
LVL3,
|
||||
RANDOM
|
||||
}
|
||||
var current_game_state = GameState.READY
|
||||
var current_level = Levels.LVL1
|
||||
var first_guest = true
|
||||
var current_guest: MaskedChara
|
||||
var selected_seat: Seat
|
||||
var roster_size: int = 2
|
||||
|
||||
@onready var camera_2d: Camera2D = $"../Camera2D"
|
||||
@onready var ring_bell: Sprite2D = $"../RingBell"
|
||||
@onready var bell_anim_player: AnimationPlayer = $"../RingBell/AnimationPlayer"
|
||||
|
||||
|
||||
func create_new_roster() -> void:
|
||||
print("Create new roster")
|
||||
current_chara_roster = []
|
||||
print(character_roster.size())
|
||||
var roster_for_this_round = character_roster.duplicate()
|
||||
var max_number_of_people = min(max_roster_size, character_roster.size())
|
||||
var max_number_of_people = min(roster_size, character_roster.size())
|
||||
for i in range(max_number_of_people):
|
||||
# Pick unique characters for the roster
|
||||
var random_index = randi_range(0, roster_for_this_round.size() - 1)
|
||||
@@ -67,8 +72,6 @@ func create_new_roster() -> void:
|
||||
var masked_chara = MaskedChara.new(chara, face_mask, mouth_mask)
|
||||
|
||||
current_chara_roster.append(masked_chara)
|
||||
print("Added %s to roster" % chara.name)
|
||||
print(character_roster.size())
|
||||
|
||||
func review_next_guest():
|
||||
# See previous guest out
|
||||
@@ -85,7 +88,6 @@ func review_next_guest():
|
||||
return
|
||||
|
||||
# Process next guest
|
||||
print("Guest is %s" % current_guest.character.name)
|
||||
character.chara_resource = current_guest.character
|
||||
character.mask_eyes.mask_resource = current_guest.face_mask
|
||||
character.mask_mouth.mask_resource = current_guest.mouth_mask
|
||||
@@ -110,10 +112,13 @@ func ending_tween_cb():
|
||||
# Progress levels
|
||||
current_game_state = GameState.READY
|
||||
ring_bell.visible = true
|
||||
mask_list.visible = false
|
||||
bell_anim_player.play("idle")
|
||||
if current_level == Levels.LVL1:
|
||||
current_level = Levels.LVL2
|
||||
elif current_level == Levels.LVL2:
|
||||
current_level = Levels.LVL3
|
||||
else:
|
||||
roster_size += 1
|
||||
current_level = Levels.RANDOM
|
||||
|
||||
|
||||
@@ -136,16 +141,21 @@ func on_ready_bell_pressed() -> void:
|
||||
if(current_game_state != GameState.READY):
|
||||
return
|
||||
|
||||
for table in tables:
|
||||
table.initialize()
|
||||
|
||||
if current_level == Levels.LVL1:
|
||||
current_chara_roster = [lvl1_guest_1, lvl1_guest_2]
|
||||
elif current_level == Levels.LVL2:
|
||||
current_chara_roster = [lvl2_guest_1, lvl2_guest_2]
|
||||
elif current_level == Levels.LVL3:
|
||||
current_chara_roster = [lvl3_guest_1, lvl3_guest_2, lvl3_guest_3]
|
||||
else:
|
||||
create_new_roster()
|
||||
|
||||
current_game_state = GameState.GUEST_REVIEW
|
||||
bell_anim_player.stop()
|
||||
ring_bell.visible = false
|
||||
mask_list.visible = true
|
||||
first_guest = true
|
||||
review_next_guest()
|
||||
|
||||
|
||||
@@ -5,7 +5,9 @@ class_name MaskedChara
|
||||
@export var face_mask: MaskResource
|
||||
@export var mouth_mask: MaskResource
|
||||
|
||||
@export var pref_score_map: Dictionary[CharacterResource.Preference, float] = {
|
||||
const ALONE_TRAIT = preload("uid://c4kpcm4tplsgg")
|
||||
|
||||
var pref_score_map: Dictionary[CharacterResource.Preference, float] = {
|
||||
CharacterResource.Preference.LOVE: 2.0,
|
||||
CharacterResource.Preference.APPROVE: 1.0,
|
||||
CharacterResource.Preference.DONT_CARE: 0.0,
|
||||
@@ -26,10 +28,12 @@ func compute_score(other_guests: Array[MaskedChara]) -> float:
|
||||
var overall_score = 0.0
|
||||
var preferences = character.preferences
|
||||
|
||||
var is_alone = true
|
||||
for guest in other_guests:
|
||||
if guest == null:
|
||||
continue
|
||||
|
||||
|
||||
is_alone = false
|
||||
var guest_mouth_mask = guest.mouth_mask
|
||||
var guest_traits = guest.character.traits
|
||||
|
||||
@@ -44,11 +48,21 @@ func compute_score(other_guests: Array[MaskedChara]) -> float:
|
||||
strength *= face_mask.stimuli_multiplier
|
||||
trait_strength += strength
|
||||
|
||||
var preference = character.preferences.get(guest_trait.tag) if guest_trait.tag in character.preferences else CharacterResource.Preference.APPROVE
|
||||
var score_multiplier = pref_score_map.get(preference) if preference in pref_score_map else 1.0
|
||||
var preference = character.preferences.get(guest_trait) if guest_trait in character.preferences else CharacterResource.Preference.DONT_CARE
|
||||
var score_multiplier = pref_score_map.get(preference) if preference in pref_score_map else 0.0
|
||||
guest_appreciation += trait_strength*score_multiplier
|
||||
|
||||
overall_score += guest_appreciation
|
||||
|
||||
print("%s score: %s" % [character.name, overall_score])
|
||||
if is_alone:
|
||||
var alone_pref = character.preferences.get(ALONE_TRAIT) if ALONE_TRAIT in character.preferences else CharacterResource.Preference.DONT_CARE
|
||||
var alone_score = pref_score_map.get(alone_pref) if alone_pref in pref_score_map else 0.0
|
||||
var alone_strength = 0.0
|
||||
for stimuli in ALONE_TRAIT.stimulis:
|
||||
var strength = stimuli
|
||||
if face_mask != null and stimuli == face_mask.stimuli:
|
||||
strength *= face_mask.stimuli_multiplier
|
||||
alone_strength += strength
|
||||
overall_score = alone_score*alone_strength
|
||||
|
||||
return overall_score
|
||||
|
||||
@@ -12,28 +12,9 @@ class_name Mask
|
||||
|
||||
func _on_mask_resource_changed() -> void:
|
||||
if mask_resource == null:
|
||||
mask_sprite.visible = false
|
||||
return
|
||||
if mask_sprite != null:
|
||||
mask_sprite.visible = true
|
||||
mask_sprite.texture = mask_resource.mask_sprite
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready() -> void:
|
||||
pass # Replace with function body.
|
||||
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta: float) -> void:
|
||||
if Engine.is_editor_hint():
|
||||
_engine_process(delta)
|
||||
else:
|
||||
_game_process(delta)
|
||||
|
||||
|
||||
func _game_process(delta: float) -> void:
|
||||
pass
|
||||
|
||||
|
||||
func _engine_process(delta: float) -> void:
|
||||
if mask_resource == null:
|
||||
return
|
||||
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
[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="Texture2D" uid="uid://cftllq6l7xclt" path="res://icon.svg" id="1_jlvus"]
|
||||
[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"]
|
||||
|
||||
[node name="Mask" type="Node2D" unique_id=428968220]
|
||||
script = ExtResource("1_61b51")
|
||||
mask_resource = ExtResource("2_0pm64")
|
||||
|
||||
[node name="MaskSprite" type="Sprite2D" parent="." unique_id=1997645103]
|
||||
texture = ExtResource("1_jlvus")
|
||||
texture = ExtResource("3_htpgb")
|
||||
|
||||
@@ -28,6 +28,8 @@ func _ready() -> void:
|
||||
|
||||
func _on_chara_resource_changed() -> void:
|
||||
if guest == null:
|
||||
empty.visible = true
|
||||
character.visible = false
|
||||
return
|
||||
|
||||
if character != null:
|
||||
@@ -40,6 +42,9 @@ func _on_chara_resource_changed() -> void:
|
||||
|
||||
func set_guest(p_guest: MaskedChara) -> void:
|
||||
if p_guest == null:
|
||||
guest = null
|
||||
empty.visible = true
|
||||
character.visible = false
|
||||
return
|
||||
|
||||
guest = p_guest
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[gd_scene format=3 uid="uid://l0hl170iqkgx"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cuojjiwxidmwu" path="res://scenes/seat/seat.gd" id="1_pceab"]
|
||||
[ext_resource type="Resource" uid="uid://ca2fcdibf0mdm" path="res://resources/guests/queen_unracist.tres" id="2_wnjs1"]
|
||||
[ext_resource type="PackedScene" uid="uid://bvpyqyftqhy45" path="res://scenes/character/character.tscn" id="3_dxmy0"]
|
||||
[ext_resource type="Resource" uid="uid://c87odmn680x7" path="res://resources/characters/duchex.tres" id="4_ipxud"]
|
||||
[ext_resource type="Texture2D" uid="uid://cftllq6l7xclt" path="res://icon.svg" id="4_wnjs1"]
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_rofvo"]
|
||||
@@ -10,9 +10,9 @@ size = Vector2(128, 128)
|
||||
|
||||
[node name="Seat" type="Area2D" unique_id=1604639021]
|
||||
script = ExtResource("1_pceab")
|
||||
guest = ExtResource("2_wnjs1")
|
||||
|
||||
[node name="Character" parent="." unique_id=138741531 instance=ExtResource("3_dxmy0")]
|
||||
chara_resource = ExtResource("4_ipxud")
|
||||
|
||||
[node name="Empty" type="Sprite2D" parent="." unique_id=357649392]
|
||||
texture = ExtResource("4_wnjs1")
|
||||
|
||||
@@ -7,23 +7,42 @@ signal seat_clicked(Seat)
|
||||
@onready var seat_2: Seat = $Seat2
|
||||
@onready var seat_3: Seat = $Seat3
|
||||
|
||||
@onready var table: Sprite2D = $Table
|
||||
@onready var table_defeat: Sprite2D = $TableDefeat
|
||||
@onready var table_victory: Sprite2D = $TableVictory
|
||||
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready() -> void:
|
||||
pass # Replace with function body.
|
||||
initialize()
|
||||
|
||||
|
||||
func on_seat_clicked(seat: Seat) -> void:
|
||||
seat_clicked.emit(seat)
|
||||
|
||||
|
||||
func initialize() -> void:
|
||||
table.visible = true
|
||||
table_defeat.visible = false
|
||||
table_victory.visible = false
|
||||
|
||||
seat_1.set_guest(null)
|
||||
seat_2.set_guest(null)
|
||||
seat_3.set_guest(null)
|
||||
|
||||
|
||||
func compute_score() -> float:
|
||||
if seat_1.guest == null and seat_2.guest == null and seat_2.guest == null:
|
||||
return 0.0
|
||||
|
||||
var score_guest1 = seat_1.guest.compute_score([seat_2.guest, seat_3.guest]) if seat_1.guest != null else 0.0
|
||||
var score_guest2 = seat_2.guest.compute_score([seat_1.guest, seat_3.guest]) if seat_2.guest != null else 0.0
|
||||
var score_guest3 = seat_3.guest.compute_score([seat_1.guest, seat_2.guest]) if seat_3.guest != null else 0.0
|
||||
|
||||
var table_score = score_guest1 + score_guest2 + score_guest3
|
||||
|
||||
print("%s score: %s" % [name, table_score])
|
||||
table.visible = false
|
||||
table_defeat.visible = table_score < 0
|
||||
table_victory.visible = table_score >= 0
|
||||
|
||||
return table_score
|
||||
|
||||
|
||||
@@ -11,15 +11,12 @@ script = ExtResource("1_ov72x")
|
||||
|
||||
[node name="Seat1" parent="." unique_id=1604639021 instance=ExtResource("1_qavd0")]
|
||||
position = Vector2(-204, -87)
|
||||
guest = null
|
||||
|
||||
[node name="Seat2" parent="." unique_id=848918585 instance=ExtResource("1_qavd0")]
|
||||
position = Vector2(-14, -117)
|
||||
guest = null
|
||||
|
||||
[node name="Seat3" parent="." unique_id=150555678 instance=ExtResource("1_qavd0")]
|
||||
position = Vector2(173, -98)
|
||||
guest = null
|
||||
|
||||
[node name="Table" type="Sprite2D" parent="." unique_id=466061690]
|
||||
position = Vector2(0, 100)
|
||||
|
||||