3 Commits

Author SHA1 Message Date
837b994ef0 new font and menu tweaks, created bishop and knight character
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 10s
Create tag and build when new code gets to main / Export (push) Successful in 1m30s
2026-02-01 12:41:49 +01:00
a4cf579c8e fixed mask placement issue
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 9s
Create tag and build when new code gets to main / Export (push) Successful in 1m23s
2026-02-01 11:14:55 +01:00
6c50970d7e alone management 2026-02-01 11:12:46 +01:00
81 changed files with 1388 additions and 77 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

View 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

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 993 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

View File

@@ -0,0 +1,93 @@
Copyright 2023 The Playwrite Project Authors (https://github.com/TypeTogether/Playwrite)
This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at:
https://openfontlicense.org
-----------------------------------------------------------
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
-----------------------------------------------------------
PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.
The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded,
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.
DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.
"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).
"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).
"Modified Version" refers to any derivative made by adding to, deleting,
or substituting -- in part or in whole -- any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.
"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.
PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:
1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.
2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.
3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.
5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.
TERMINATION
This license becomes null and void if any of the above conditions are
not met.
DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.

View File

@@ -0,0 +1,36 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://miscsmiumts5"
path="res://.godot/imported/PlaywriteAUTAS-VariableFont_wght.ttf-a8a605958bbf86eb4629cecf564abce2.fontdata"
[deps]
source_file="res://assets/fonts/Playwrite_AU_TAS/PlaywriteAUTAS-VariableFont_wght.ttf"
dest_files=["res://.godot/imported/PlaywriteAUTAS-VariableFont_wght.ttf-a8a605958bbf86eb4629cecf564abce2.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
modulate_color_glyphs=false
hinting=1
subpixel_positioning=4
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

View File

@@ -0,0 +1,66 @@
Playwrite AU TAS Variable Font
==============================
This download contains Playwrite AU TAS as both a variable font and static fonts.
Playwrite AU TAS is a variable font with this axis:
wght
This means all the styles are contained in a single file:
Playwrite_AU_TAS/PlaywriteAUTAS-VariableFont_wght.ttf
If your app fully supports variable fonts, you can now pick intermediate styles
that arent available as static fonts. Not all apps support variable fonts, and
in those cases you can use the static font files for Playwrite AU TAS:
Playwrite_AU_TAS/static/PlaywriteAUTAS-Thin.ttf
Playwrite_AU_TAS/static/PlaywriteAUTAS-ExtraLight.ttf
Playwrite_AU_TAS/static/PlaywriteAUTAS-Light.ttf
Playwrite_AU_TAS/static/PlaywriteAUTAS-Regular.ttf
Get started
-----------
1. Install the font files you want to use
2. Use your app's font picker to view the font family and all the
available styles
Learn more about variable fonts
-------------------------------
https://developers.google.com/web/fundamentals/design-and-ux/typography/variable-fonts
https://variablefonts.typenetwork.com
https://medium.com/variable-fonts
In desktop apps
https://theblog.adobe.com/can-variable-fonts-illustrator-cc
https://helpx.adobe.com/nz/photoshop/using/fonts.html#variable_fonts
Online
https://developers.google.com/fonts/docs/getting_started
https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Fonts/Variable_Fonts_Guide
https://developer.microsoft.com/en-us/microsoft-edge/testdrive/demos/variable-fonts
Installing fonts
MacOS: https://support.apple.com/en-us/HT201749
Linux: https://www.google.com/search?q=how+to+install+a+font+on+gnu%2Blinux
Windows: https://support.microsoft.com/en-us/help/314960/how-to-install-or-remove-a-font-in-windows
Android Apps
https://developers.google.com/fonts/docs/android
https://developer.android.com/guide/topics/ui/look-and-feel/downloadable-fonts
License
-------
Please read the full license text (OFL.txt) to understand the permissions,
restrictions and requirements for usage, redistribution, and modification.
You can use them in your products & projects print or digital,
commercial or otherwise.
This isn't legal advice, please consider consulting a lawyer and see the full
license for all details.

Binary file not shown.

View File

@@ -0,0 +1,36 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://c1paxjyjwhkvg"
path="res://.godot/imported/PlaywriteAUTAS-ExtraLight.ttf-1ed5270323ece7c8ea6f0b012f5d168b.fontdata"
[deps]
source_file="res://assets/fonts/Playwrite_AU_TAS/static/PlaywriteAUTAS-ExtraLight.ttf"
dest_files=["res://.godot/imported/PlaywriteAUTAS-ExtraLight.ttf-1ed5270323ece7c8ea6f0b012f5d168b.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
modulate_color_glyphs=false
hinting=1
subpixel_positioning=4
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

View File

@@ -0,0 +1,36 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://vbfmm30e3u68"
path="res://.godot/imported/PlaywriteAUTAS-Light.ttf-44b9f9c99caba7d7d38ecc76905993a9.fontdata"
[deps]
source_file="res://assets/fonts/Playwrite_AU_TAS/static/PlaywriteAUTAS-Light.ttf"
dest_files=["res://.godot/imported/PlaywriteAUTAS-Light.ttf-44b9f9c99caba7d7d38ecc76905993a9.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
modulate_color_glyphs=false
hinting=1
subpixel_positioning=4
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

View File

@@ -0,0 +1,36 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://xlqwckigib1y"
path="res://.godot/imported/PlaywriteAUTAS-Regular.ttf-d064ce7e3bcba863c3a9734d3ac929a7.fontdata"
[deps]
source_file="res://assets/fonts/Playwrite_AU_TAS/static/PlaywriteAUTAS-Regular.ttf"
dest_files=["res://.godot/imported/PlaywriteAUTAS-Regular.ttf-d064ce7e3bcba863c3a9734d3ac929a7.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
modulate_color_glyphs=false
hinting=1
subpixel_positioning=4
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

View File

@@ -0,0 +1,36 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://dh3yyynngr4sm"
path="res://.godot/imported/PlaywriteAUTAS-Thin.ttf-3a7289c6fdcf13f7562b956c62767fbf.fontdata"
[deps]
source_file="res://assets/fonts/Playwrite_AU_TAS/static/PlaywriteAUTAS-Thin.ttf"
dest_files=["res://.godot/imported/PlaywriteAUTAS-Thin.ttf-3a7289c6fdcf13f7562b956c62767fbf.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
modulate_color_glyphs=false
hinting=1
subpixel_positioning=4
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

Binary file not shown.

View File

@@ -0,0 +1,93 @@
Copyright 2022 The Shantell Sans Project Authors (https://github.com/arrowtype/shantell-sans)
This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at:
https://openfontlicense.org
-----------------------------------------------------------
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
-----------------------------------------------------------
PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.
The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded,
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.
DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.
"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).
"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).
"Modified Version" refers to any derivative made by adding to, deleting,
or substituting -- in part or in whole -- any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.
"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.
PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:
1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.
2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.
3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.
5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.
TERMINATION
This license becomes null and void if any of the above conditions are
not met.
DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.

View File

@@ -0,0 +1,78 @@
Shantell Sans Variable Font
===========================
This download contains Shantell Sans as both variable fonts and static fonts.
Shantell Sans is a variable font with these axes:
BNCE
INFM
SPAC
wght
This means all the styles are contained in these files:
Shantell_Sans/ShantellSans-VariableFont_BNCE,INFM,SPAC,wght.ttf
Shantell_Sans/ShantellSans-Italic-VariableFont_BNCE,INFM,SPAC,wght.ttf
If your app fully supports variable fonts, you can now pick intermediate styles
that arent available as static fonts. Not all apps support variable fonts, and
in those cases you can use the static font files for Shantell Sans:
Shantell_Sans/static/ShantellSans-Light.ttf
Shantell_Sans/static/ShantellSans-Regular.ttf
Shantell_Sans/static/ShantellSans-Medium.ttf
Shantell_Sans/static/ShantellSans-SemiBold.ttf
Shantell_Sans/static/ShantellSans-Bold.ttf
Shantell_Sans/static/ShantellSans-ExtraBold.ttf
Shantell_Sans/static/ShantellSans-LightItalic.ttf
Shantell_Sans/static/ShantellSans-Italic.ttf
Shantell_Sans/static/ShantellSans-MediumItalic.ttf
Shantell_Sans/static/ShantellSans-SemiBoldItalic.ttf
Shantell_Sans/static/ShantellSans-BoldItalic.ttf
Shantell_Sans/static/ShantellSans-ExtraBoldItalic.ttf
Get started
-----------
1. Install the font files you want to use
2. Use your app's font picker to view the font family and all the
available styles
Learn more about variable fonts
-------------------------------
https://developers.google.com/web/fundamentals/design-and-ux/typography/variable-fonts
https://variablefonts.typenetwork.com
https://medium.com/variable-fonts
In desktop apps
https://theblog.adobe.com/can-variable-fonts-illustrator-cc
https://helpx.adobe.com/nz/photoshop/using/fonts.html#variable_fonts
Online
https://developers.google.com/fonts/docs/getting_started
https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Fonts/Variable_Fonts_Guide
https://developer.microsoft.com/en-us/microsoft-edge/testdrive/demos/variable-fonts
Installing fonts
MacOS: https://support.apple.com/en-us/HT201749
Linux: https://www.google.com/search?q=how+to+install+a+font+on+gnu%2Blinux
Windows: https://support.microsoft.com/en-us/help/314960/how-to-install-or-remove-a-font-in-windows
Android Apps
https://developers.google.com/fonts/docs/android
https://developer.android.com/guide/topics/ui/look-and-feel/downloadable-fonts
License
-------
Please read the full license text (OFL.txt) to understand the permissions,
restrictions and requirements for usage, redistribution, and modification.
You can use them in your products & projects print or digital,
commercial or otherwise.
This isn't legal advice, please consider consulting a lawyer and see the full
license for all details.

View File

@@ -0,0 +1,36 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://baokvv60aqokh"
path="res://.godot/imported/ShantellSans-Italic-VariableFont_BNCE,INFM,SPAC,wght.ttf-86e660b090caaabfb0675ced48f18bf7.fontdata"
[deps]
source_file="res://assets/fonts/Shantell_Sans/ShantellSans-Italic-VariableFont_BNCE,INFM,SPAC,wght.ttf"
dest_files=["res://.godot/imported/ShantellSans-Italic-VariableFont_BNCE,INFM,SPAC,wght.ttf-86e660b090caaabfb0675ced48f18bf7.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
modulate_color_glyphs=false
hinting=1
subpixel_positioning=4
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

View File

@@ -0,0 +1,36 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://b6paka7n5bncd"
path="res://.godot/imported/ShantellSans-VariableFont_BNCE,INFM,SPAC,wght.ttf-d1b19911108f0e223d261d67a0da3a8d.fontdata"
[deps]
source_file="res://assets/fonts/Shantell_Sans/ShantellSans-VariableFont_BNCE,INFM,SPAC,wght.ttf"
dest_files=["res://.godot/imported/ShantellSans-VariableFont_BNCE,INFM,SPAC,wght.ttf-d1b19911108f0e223d261d67a0da3a8d.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
modulate_color_glyphs=false
hinting=1
subpixel_positioning=4
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

Binary file not shown.

View File

@@ -0,0 +1,36 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://e03gd28fvlo8"
path="res://.godot/imported/ShantellSans-Bold.ttf-bcc6b431aa31a30671543e15ec301db7.fontdata"
[deps]
source_file="res://assets/fonts/Shantell_Sans/static/ShantellSans-Bold.ttf"
dest_files=["res://.godot/imported/ShantellSans-Bold.ttf-bcc6b431aa31a30671543e15ec301db7.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
modulate_color_glyphs=false
hinting=1
subpixel_positioning=4
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

View File

@@ -0,0 +1,36 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://bnsbhvkhcmw4l"
path="res://.godot/imported/ShantellSans-BoldItalic.ttf-0468fb0d049895196ea93090017f2742.fontdata"
[deps]
source_file="res://assets/fonts/Shantell_Sans/static/ShantellSans-BoldItalic.ttf"
dest_files=["res://.godot/imported/ShantellSans-BoldItalic.ttf-0468fb0d049895196ea93090017f2742.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
modulate_color_glyphs=false
hinting=1
subpixel_positioning=4
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

View File

@@ -0,0 +1,36 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://g2p84cmskj6j"
path="res://.godot/imported/ShantellSans-ExtraBold.ttf-37659e171443b0460ba3989e78952333.fontdata"
[deps]
source_file="res://assets/fonts/Shantell_Sans/static/ShantellSans-ExtraBold.ttf"
dest_files=["res://.godot/imported/ShantellSans-ExtraBold.ttf-37659e171443b0460ba3989e78952333.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
modulate_color_glyphs=false
hinting=1
subpixel_positioning=4
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

View File

@@ -0,0 +1,36 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://b2inyfm5s1erg"
path="res://.godot/imported/ShantellSans-ExtraBoldItalic.ttf-5e0c831b2219f10d6614eb93c2209777.fontdata"
[deps]
source_file="res://assets/fonts/Shantell_Sans/static/ShantellSans-ExtraBoldItalic.ttf"
dest_files=["res://.godot/imported/ShantellSans-ExtraBoldItalic.ttf-5e0c831b2219f10d6614eb93c2209777.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
modulate_color_glyphs=false
hinting=1
subpixel_positioning=4
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

View File

@@ -0,0 +1,36 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://daum5h5s47wy3"
path="res://.godot/imported/ShantellSans-Italic.ttf-0b982f12ef382a3524aa2ba890b2309b.fontdata"
[deps]
source_file="res://assets/fonts/Shantell_Sans/static/ShantellSans-Italic.ttf"
dest_files=["res://.godot/imported/ShantellSans-Italic.ttf-0b982f12ef382a3524aa2ba890b2309b.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
modulate_color_glyphs=false
hinting=1
subpixel_positioning=4
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

View File

@@ -0,0 +1,36 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://b1cvlh5gmpp60"
path="res://.godot/imported/ShantellSans-Light.ttf-1188121155a91c9013fa2d25f4f27823.fontdata"
[deps]
source_file="res://assets/fonts/Shantell_Sans/static/ShantellSans-Light.ttf"
dest_files=["res://.godot/imported/ShantellSans-Light.ttf-1188121155a91c9013fa2d25f4f27823.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
modulate_color_glyphs=false
hinting=1
subpixel_positioning=4
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

View File

@@ -0,0 +1,36 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://dh3cpvtijpelr"
path="res://.godot/imported/ShantellSans-LightItalic.ttf-9cf07efebd9da9a1c0c36895fe7c8230.fontdata"
[deps]
source_file="res://assets/fonts/Shantell_Sans/static/ShantellSans-LightItalic.ttf"
dest_files=["res://.godot/imported/ShantellSans-LightItalic.ttf-9cf07efebd9da9a1c0c36895fe7c8230.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
modulate_color_glyphs=false
hinting=1
subpixel_positioning=4
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

View File

@@ -0,0 +1,36 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://by5hk3nrn6cnt"
path="res://.godot/imported/ShantellSans-Medium.ttf-36be470dac035cd5f0c25a22cf1fd9f1.fontdata"
[deps]
source_file="res://assets/fonts/Shantell_Sans/static/ShantellSans-Medium.ttf"
dest_files=["res://.godot/imported/ShantellSans-Medium.ttf-36be470dac035cd5f0c25a22cf1fd9f1.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
modulate_color_glyphs=false
hinting=1
subpixel_positioning=4
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

View File

@@ -0,0 +1,36 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://d23ltkepwjvks"
path="res://.godot/imported/ShantellSans-MediumItalic.ttf-16d8be164496e4866308270e910c9e47.fontdata"
[deps]
source_file="res://assets/fonts/Shantell_Sans/static/ShantellSans-MediumItalic.ttf"
dest_files=["res://.godot/imported/ShantellSans-MediumItalic.ttf-16d8be164496e4866308270e910c9e47.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
modulate_color_glyphs=false
hinting=1
subpixel_positioning=4
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

View File

@@ -0,0 +1,36 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://ers4b4yk4wso"
path="res://.godot/imported/ShantellSans-Regular.ttf-1c66f4d7370149180df730b2b8af738b.fontdata"
[deps]
source_file="res://assets/fonts/Shantell_Sans/static/ShantellSans-Regular.ttf"
dest_files=["res://.godot/imported/ShantellSans-Regular.ttf-1c66f4d7370149180df730b2b8af738b.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
modulate_color_glyphs=false
hinting=1
subpixel_positioning=4
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

View File

@@ -0,0 +1,36 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://j3j27t2qiiv0"
path="res://.godot/imported/ShantellSans-SemiBold.ttf-a50c1abf51a78ac87d73cd3f56ead2d1.fontdata"
[deps]
source_file="res://assets/fonts/Shantell_Sans/static/ShantellSans-SemiBold.ttf"
dest_files=["res://.godot/imported/ShantellSans-SemiBold.ttf-a50c1abf51a78ac87d73cd3f56ead2d1.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
modulate_color_glyphs=false
hinting=1
subpixel_positioning=4
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

View File

@@ -0,0 +1,36 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://bemd1tluhkfb4"
path="res://.godot/imported/ShantellSans-SemiBoldItalic.ttf-4078c07f59f8e4a3fb11506a3cadc490.fontdata"
[deps]
source_file="res://assets/fonts/Shantell_Sans/static/ShantellSans-SemiBoldItalic.ttf"
dest_files=["res://.godot/imported/ShantellSans-SemiBoldItalic.ttf-4078c07f59f8e4a3fb11506a3cadc490.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
disable_embedded_bitmaps=true
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
modulate_color_glyphs=false
hinting=1
subpixel_positioning=4
keep_rounding_remainders=true
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

Binary file not shown.

View File

@@ -5,10 +5,10 @@ content_margin_left = 4.0
content_margin_top = 4.0
content_margin_right = 4.0
content_margin_bottom = 4.0
bg_color = Color(0.428961, 0.730226, 0.50528, 1)
bg_color = Color(0.9100096, 0.86291647, 0.708175, 1)
border_width_right = 2
border_width_bottom = 2
border_color = Color(0.298858, 0.546296, 0.363635, 1)
border_color = Color(0, 0, 0, 1)
corner_radius_top_left = 4
corner_radius_top_right = 4
corner_radius_bottom_right = 4
@@ -19,10 +19,10 @@ content_margin_left = 4.0
content_margin_top = 4.0
content_margin_right = 4.0
content_margin_bottom = 4.0
bg_color = Color(0.298858, 0.546296, 0.363635, 1)
bg_color = Color(0.95843965, 0.9319269, 0.85383695, 1)
border_width_right = 2
border_width_bottom = 2
border_color = Color(0.234842, 0.443383, 0.289887, 1)
border_color = Color(0, 0, 0, 1)
corner_radius_top_left = 4
corner_radius_top_right = 4
corner_radius_bottom_right = 4
@@ -33,10 +33,10 @@ content_margin_left = 4.0
content_margin_top = 4.0
content_margin_right = 4.0
content_margin_bottom = 4.0
bg_color = Color(0.234842, 0.443383, 0.289887, 1)
bg_color = Color(0.8565786, 0.79335916, 0.5865505, 1)
border_width_right = 2
border_width_bottom = 2
border_color = Color(0.234842, 0.443383, 0.289887, 1)
border_color = Color(0, 0, 0, 1)
corner_radius_top_left = 4
corner_radius_top_right = 4
corner_radius_bottom_right = 4

View File

@@ -367,7 +367,8 @@ 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"
theme_override_font_sizes/font_size = 40
text = "\"Good evening\""
autowrap_mode = 3
script = null
@@ -387,6 +388,7 @@ offset_left = -100.0
offset_right = 200.0
offset_bottom = 145.0
theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_font_sizes/font_size = 20
text = "Make tables plans for the best night possible"
autowrap_mode = 3
@@ -399,12 +401,28 @@ modulate = Color(1, 1, 1, 0)
[node name="MenuButtonsBoxContainer" parent="MenuContainer/MenuButtonsMargin/MenuButtonsContainer" index="0"]
lock = true
[node name="NewGameButton" parent="MenuContainer/MenuButtonsMargin/MenuButtonsContainer/MenuButtonsBoxContainer" index="0"]
custom_minimum_size = Vector2(200, 50)
theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_colors/font_focus_color = Color(0, 0, 0, 1)
theme_override_colors/font_pressed_color = Color(0, 0, 0, 1)
theme_override_colors/font_hover_color = Color(0, 0, 0, 1)
theme_override_colors/font_hover_pressed_color = Color(0, 0, 0, 1)
[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="ExitButton" parent="MenuContainer/MenuButtonsMargin/MenuButtonsContainer/MenuButtonsBoxContainer" index="3"]
custom_minimum_size = Vector2(0, 50)
theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_colors/font_focus_color = Color(0, 0, 0, 1)
theme_override_colors/font_pressed_color = Color(0, 0, 0, 1)
theme_override_colors/font_hover_color = Color(0, 0, 0, 1)
theme_override_colors/font_hover_pressed_color = Color(0, 0, 0, 1)
[node name="VersionContainer" parent="VersionMargin" index="0"]
modulate = Color(1, 1, 1, 0)

View File

@@ -49,6 +49,7 @@ enabled=PackedStringArray("res://addons/maaacks_game_template/plugin.cfg", "res:
[gui]
theme/custom="res://menus/resources/themes/grow.tres"
theme/custom_font="uid://miscsmiumts5"
[internationalization]

View File

@@ -0,0 +1,26 @@
[gd_resource type="Resource" script_class="CharacterResource" format=3 uid="uid://c2v05fqr7cwll"]
[ext_resource type="Texture2D" uid="uid://dmmhwqsi3im3w" path="res://assets/characters/Perso 4.png" id="1_ilqpx"]
[ext_resource type="Script" uid="uid://cya40uohlvgbr" path="res://scenes/character/trait.gd" id="1_kq1ar"]
[ext_resource type="Script" uid="uid://bwam50qxikpw4" path="res://scenes/character/chara_resource.gd" id="2_ilqpx"]
[ext_resource type="Resource" uid="uid://cefwc4j3p7m3v" path="res://resources/traits/black.tres" id="3_kbmal"]
[ext_resource type="Resource" uid="uid://b118uebk1ldog" path="res://resources/traits/noble.tres" id="4_yew24"]
[ext_resource type="Resource" uid="uid://dxrbtwv4hfs71" path="res://resources/traits/married.tres" id="5_d7rom"]
[ext_resource type="Resource" uid="uid://bvophatys2o1o" path="res://resources/traits/old.tres" id="6_4wm6o"]
[ext_resource type="Resource" uid="uid://c4kpcm4tplsgg" path="res://resources/traits/alone.tres" id="6_l6cdd"]
[ext_resource type="Resource" uid="uid://cb8jguybr1tlj" path="res://resources/traits/white.tres" id="7_d7rom"]
[ext_resource type="Resource" uid="uid://exoxxj84dvsf" path="res://resources/traits/peasant.tres" id="8_l6cdd"]
[ext_resource type="Resource" uid="uid://b3lg32juui18i" path="res://resources/traits/noisy.tres" id="9_yew24"]
[resource]
script = ExtResource("2_ilqpx")
name = "Bishop"
chara_sprite = ExtResource("1_ilqpx")
traits = Array[ExtResource("1_kq1ar")]([ExtResource("6_4wm6o"), ExtResource("7_d7rom"), ExtResource("6_4wm6o"), ExtResource("8_l6cdd"), ExtResource("9_yew24")])
preferences = Dictionary[ExtResource("1_kq1ar"), int]({
ExtResource("3_kbmal"): 4,
ExtResource("4_yew24"): 1,
ExtResource("5_d7rom"): 4,
ExtResource("6_l6cdd"): 0
})
metadata/_custom_type_script = "uid://bwam50qxikpw4"

View File

@@ -4,10 +4,13 @@
[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://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"]
[ext_resource type="Resource" uid="uid://b118uebk1ldog" path="res://resources/traits/noble.tres" id="10_p10lp"]
[ext_resource type="Resource" uid="uid://dxrbtwv4hfs71" path="res://resources/traits/married.tres" id="11_r85wd"]
[resource]
script = ExtResource("2_cyb15")
@@ -17,8 +20,9 @@ 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")])
traits = Array[ExtResource("3_s53hh")]([ExtResource("4_w5qmk"), ExtResource("6_cyb15"), ExtResource("7_s53hh"), ExtResource("8_p10lp"), ExtResource("10_p10lp"), ExtResource("11_r85wd")])
preferences = Dictionary[ExtResource("3_s53hh"), int]({
ExtResource("3_q0kni"): 0
ExtResource("3_q0kni"): 0,
ExtResource("4_s53hh"): 4
})
metadata/_custom_type_script = "uid://bwam50qxikpw4"

View File

@@ -4,7 +4,14 @@
[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://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"]
[ext_resource type="Resource" uid="uid://b118uebk1ldog" path="res://resources/traits/noble.tres" id="11_afn2m"]
[ext_resource type="Resource" uid="uid://dxrbtwv4hfs71" path="res://resources/traits/married.tres" id="12_2kdgx"]
[resource]
script = ExtResource("2_ce0p8")
@@ -13,8 +20,10 @@ chara_sprite = ExtResource("1_d1fpd")
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")])
traits = Array[ExtResource("3_n21sh")]([ExtResource("5_tl7uu"), ExtResource("7_12asi"), ExtResource("8_ce0p8"), ExtResource("9_ce0p8"), ExtResource("11_afn2m"), ExtResource("12_2kdgx")])
preferences = Dictionary[ExtResource("3_n21sh"), int]({
ExtResource("3_tvmgq"): 0
ExtResource("3_tvmgq"): 0,
ExtResource("4_tl7uu"): 0,
ExtResource("5_n21sh"): 3
})
metadata/_custom_type_script = "uid://bwam50qxikpw4"

View File

@@ -1,8 +1,19 @@
[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://b3lg32juui18i" path="res://resources/traits/noisy.tres" id="3_j8s63"]
[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://cqhrgihss2k46" path="res://resources/traits/smelly.tres" id="4_k1rnw"]
[ext_resource type="Resource" uid="uid://bsayj3pugsg54" path="res://resources/traits/animals.tres" id="5_0mgot"]
[ext_resource type="Resource" uid="uid://b118uebk1ldog" path="res://resources/traits/noble.tres" id="5_6ktt3"]
[ext_resource type="Resource" uid="uid://bobrwfsc3tg04" path="res://resources/traits/brave.tres" id="6_u46dm"]
[ext_resource type="Resource" uid="uid://dxrbtwv4hfs71" path="res://resources/traits/married.tres" id="6_vvog1"]
[ext_resource type="Resource" uid="uid://3a6ivamvrnqj" path="res://resources/traits/clean.tres" id="7_fvshn"]
[ext_resource type="Resource" uid="uid://bmx28vnfhcs8b" path="res://resources/traits/man.tres" id="7_k1rnw"]
[ext_resource type="Resource" uid="uid://cb8jguybr1tlj" path="res://resources/traits/white.tres" id="8_0mgot"]
[ext_resource type="Resource" uid="uid://dca6k1gmnp6os" path="res://resources/traits/single.tres" id="8_2v1ds"]
[ext_resource type="Resource" uid="uid://bvophatys2o1o" path="res://resources/traits/old.tres" id="9_teajx"]
[resource]
script = ExtResource("3_vvog1")
@@ -12,4 +23,13 @@ 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("5_6ktt3"), ExtResource("6_vvog1"), ExtResource("7_k1rnw"), ExtResource("8_0mgot"), ExtResource("9_teajx")])
preferences = Dictionary[ExtResource("4_0s3fj"), int]({
ExtResource("3_j8s63"): 4,
ExtResource("4_k1rnw"): 4,
ExtResource("5_0mgot"): 4,
ExtResource("6_u46dm"): 0,
ExtResource("7_fvshn"): 1,
ExtResource("8_2v1ds"): 0
})
metadata/_custom_type_script = "uid://bwam50qxikpw4"

View File

@@ -0,0 +1,32 @@
[gd_resource type="Resource" script_class="CharacterResource" format=3 uid="uid://dvmqrw5bylhv6"]
[ext_resource type="Script" uid="uid://cya40uohlvgbr" path="res://scenes/character/trait.gd" id="1_iqt1j"]
[ext_resource type="Resource" uid="uid://dmd7gilnmcefr" path="res://resources/traits/woman.tres" id="2_h0v0n"]
[ext_resource type="Script" uid="uid://bwam50qxikpw4" path="res://scenes/character/chara_resource.gd" id="2_tdxmb"]
[ext_resource type="Resource" uid="uid://ct4iy75ai7lmy" path="res://resources/traits/enby.tres" id="3_3vdcn"]
[ext_resource type="Resource" uid="uid://bobrwfsc3tg04" path="res://resources/traits/brave.tres" id="3_bsgk7"]
[ext_resource type="Resource" uid="uid://cefwc4j3p7m3v" path="res://resources/traits/black.tres" id="4_aiy02"]
[ext_resource type="Resource" uid="uid://bsayj3pugsg54" path="res://resources/traits/animals.tres" id="4_lag8f"]
[ext_resource type="Resource" uid="uid://3a6ivamvrnqj" path="res://resources/traits/clean.tres" id="5_0cnfx"]
[ext_resource type="Resource" uid="uid://b118uebk1ldog" path="res://resources/traits/noble.tres" id="5_862cf"]
[ext_resource type="Resource" uid="uid://bmx28vnfhcs8b" path="res://resources/traits/man.tres" id="6_xxla0"]
[ext_resource type="Resource" uid="uid://bvophatys2o1o" path="res://resources/traits/old.tres" id="7_2tfi0"]
[ext_resource type="Resource" uid="uid://dca6k1gmnp6os" path="res://resources/traits/single.tres" id="7_5qve6"]
[ext_resource type="Resource" uid="uid://b3lg32juui18i" path="res://resources/traits/noisy.tres" id="8_asft4"]
[ext_resource type="Resource" uid="uid://blu5de2dhiu46" path="res://resources/traits/young.tres" id="8_so1uv"]
[ext_resource type="Resource" uid="uid://exoxxj84dvsf" path="res://resources/traits/peasant.tres" id="9_h0v0n"]
[resource]
script = ExtResource("2_tdxmb")
name = "knight"
traits = Array[ExtResource("1_iqt1j")]([ExtResource("3_bsgk7"), ExtResource("4_aiy02"), ExtResource("5_0cnfx"), ExtResource("6_xxla0"), ExtResource("7_5qve6"), ExtResource("8_so1uv"), ExtResource("9_h0v0n")])
preferences = Dictionary[ExtResource("1_iqt1j"), int]({
ExtResource("2_h0v0n"): 0,
ExtResource("3_3vdcn"): 0,
ExtResource("4_lag8f"): 1,
ExtResource("5_862cf"): 1,
ExtResource("9_h0v0n"): 1,
ExtResource("7_2tfi0"): 4,
ExtResource("8_asft4"): 3
})
metadata/_custom_type_script = "uid://bwam50qxikpw4"

View File

@@ -6,9 +6,12 @@
[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://b118uebk1ldog" path="res://resources/traits/noble.tres" id="11_wjlcp"]
[ext_resource type="Resource" uid="uid://dxrbtwv4hfs71" path="res://resources/traits/married.tres" id="12_4ysbx"]
[resource]
script = ExtResource("2_g8bvo")
@@ -17,11 +20,12 @@ chara_sprite = ExtResource("1_d1164")
mask_eyes_position = Vector2(48, 187.345)
mask_eyes_rotation = 0.05235987755982989
mask_mouth_position = Vector2(31.595, 176.245)
mask_mouth_rotation = 0.017453292519943295
traits = Array[ExtResource("3_dkw07")]([ExtResource("3_y3hrs"), ExtResource("9_aywjr"), ExtResource("10_tw1u2"), ExtResource("8_j0xhd")])
mask_mouth_rotation = 0.01745329251994329
traits = Array[ExtResource("3_dkw07")]([ExtResource("3_y3hrs"), ExtResource("9_aywjr"), ExtResource("10_tw1u2"), ExtResource("8_j0xhd"), ExtResource("11_wjlcp"), ExtResource("12_4ysbx")])
preferences = Dictionary[ExtResource("3_dkw07"), int]({
ExtResource("3_y3hrs"): 4,
ExtResource("4_hdamc"): 0,
ExtResource("5_wjlcp"): 3
ExtResource("5_wjlcp"): 3,
ExtResource("6_hdamc"): 4
})
metadata/_custom_type_script = "uid://bwam50qxikpw4"

View 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"

View File

@@ -1,11 +1,9 @@
[gd_resource type="Resource" script_class="Trait" format=3 uid="uid://deygyo2n88228"]
[gd_resource type="Resource" script_class="Trait" format=3 uid="uid://bsayj3pugsg54"]
[ext_resource type="Script" uid="uid://cya40uohlvgbr" path="res://scenes/character/trait.gd" id="1_exp1s"]
[ext_resource type="Script" uid="uid://cya40uohlvgbr" path="res://scenes/character/trait.gd" id="1_6b1l6"]
[resource]
script = ExtResource("1_exp1s")
name = "speaks_of_cats"
script = ExtResource("1_6b1l6")
name = "speaks_of_animals"
stimulis = Array[int]([1])
category = 4
tag = 12
metadata/_custom_type_script = "uid://cya40uohlvgbr"

View File

@@ -1,11 +1,9 @@
[gd_resource type="Resource" script_class="Trait" format=3 uid="uid://bc376om20da8m"]
[gd_resource type="Resource" script_class="Trait" format=3 uid="uid://bobrwfsc3tg04"]
[ext_resource type="Script" uid="uid://cya40uohlvgbr" path="res://scenes/character/trait.gd" id="1_iabmh"]
[ext_resource type="Script" uid="uid://cya40uohlvgbr" path="res://scenes/character/trait.gd" id="1_af1sn"]
[resource]
script = ExtResource("1_iabmh")
name = "royal"
script = ExtResource("1_af1sn")
name = "brave"
stimulis = Array[int]([0])
category = 2
tag = 6
metadata/_custom_type_script = "uid://cya40uohlvgbr"

View File

@@ -0,0 +1,9 @@
[gd_resource type="Resource" script_class="Trait" format=3 uid="uid://3a6ivamvrnqj"]
[ext_resource type="Script" uid="uid://cya40uohlvgbr" path="res://scenes/character/trait.gd" id="1_kdrvf"]
[resource]
script = ExtResource("1_kdrvf")
name = "clean"
stimulis = Array[int]([2])
metadata/_custom_type_script = "uid://cya40uohlvgbr"

View File

@@ -0,0 +1,9 @@
[gd_resource type="Resource" script_class="Trait" format=3 uid="uid://dxrbtwv4hfs71"]
[ext_resource type="Script" uid="uid://cya40uohlvgbr" path="res://scenes/character/trait.gd" id="1_b58s2"]
[resource]
script = ExtResource("1_b58s2")
name = "married"
stimulis = Array[int]([0, 1])
metadata/_custom_type_script = "uid://cya40uohlvgbr"

View File

@@ -1,11 +1,9 @@
[gd_resource type="Resource" script_class="Trait" format=3 uid="uid://dy3wgs61t2gx5"]
[gd_resource type="Resource" script_class="Trait" format=3 uid="uid://b3lg32juui18i"]
[ext_resource type="Script" uid="uid://cya40uohlvgbr" path="res://scenes/character/trait.gd" id="1_o8usb"]
[ext_resource type="Script" uid="uid://cya40uohlvgbr" path="res://scenes/character/trait.gd" id="1_gykwb"]
[resource]
script = ExtResource("1_o8usb")
name = "speaks_of_dogs"
script = ExtResource("1_gykwb")
name = "noisy"
stimulis = Array[int]([1])
category = 4
tag = 13
metadata/_custom_type_script = "uid://cya40uohlvgbr"

View File

@@ -0,0 +1,9 @@
[gd_resource type="Resource" script_class="Trait" format=3 uid="uid://dca6k1gmnp6os"]
[ext_resource type="Script" uid="uid://cya40uohlvgbr" path="res://scenes/character/trait.gd" id="1_d5xxp"]
[resource]
script = ExtResource("1_d5xxp")
name = "single"
stimulis = Array[int]([1])
metadata/_custom_type_script = "uid://cya40uohlvgbr"

View File

@@ -0,0 +1,9 @@
[gd_resource type="Resource" script_class="Trait" format=3 uid="uid://cqhrgihss2k46"]
[ext_resource type="Script" uid="uid://cya40uohlvgbr" path="res://scenes/character/trait.gd" id="1_3ykpy"]
[resource]
script = ExtResource("1_3ykpy")
name = "smelly"
stimulis = Array[int]([2])
metadata/_custom_type_script = "uid://cya40uohlvgbr"

View File

@@ -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

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://gy4ygqrjj5ys" path="res://resources/characters/duke.tres" id="2_fgi2k"]
[ext_resource type="Texture2D" uid="uid://spbjfmmk8o0s" path="res://assets/characters/Perso 3.png" id="3_f8hpl"]
[ext_resource type="Resource" uid="uid://c2v05fqr7cwll" path="res://resources/characters/bishop.tres" id="2_fgi2k"]
[ext_resource type="Texture2D" uid="uid://dmmhwqsi3im3w" path="res://assets/characters/Perso 4.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,11 +164,10 @@ chara_resource = ExtResource("2_fgi2k")
texture = ExtResource("3_f8hpl")
[node name="MaskMouth" parent="." unique_id=1087336064 instance=ExtResource("3_mutn8")]
position = Vector2(-1.83, 2.27)
visible = false
[node name="MaskEyes" parent="." unique_id=428968220 instance=ExtResource("3_mutn8")]
position = Vector2(-23.295, -0.335)
rotation = -0.034906585
visible = false
[node name="AnimationPlayer" type="AnimationPlayer" parent="." unique_id=713965213]
libraries/ = SubResource("AnimationLibrary_7ex5l")

View File

@@ -1,6 +1,9 @@
extends Area2D
class_name List
var current_item = 0
@onready var label: Label = $Label
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
@@ -12,5 +15,33 @@ func _process(delta: float) -> void:
pass
func set_list(items: Array[Resource]):
func set_mask_list(items: Array[MaskResource]):
print(items)
current_item = 0
if items.size() == 0:
label.text = "..."
func set_chara_list(items: Array[CharacterResource]):
print(items)
current_item = 0
if items.size() == 0:
label.text = "..."
func cycle_through_items() -> void:
current_item += 1
print(current_item)
func _on_mouse_entered() -> void:
Input.set_default_cursor_shape(Input.CursorShape.CURSOR_POINTING_HAND)
func _on_mouse_exited() -> void:
Input.set_default_cursor_shape(Input.CursorShape.CURSOR_ARROW)
func _on_input_event(viewport: Node, event: InputEvent, shape_idx: int) -> void:
if event is InputEventMouseButton and event.is_pressed():
Input.set_default_cursor_shape(Input.CursorShape.CURSOR_ARROW)
cycle_through_items()

View File

@@ -11,3 +11,19 @@ script = ExtResource("1_khygj")
[node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=579673425]
shape = SubResource("CapsuleShape2D_trceg")
[node name="Label" type="Label" parent="." unique_id=1624172949]
z_index = 10
custom_minimum_size = Vector2(360, 0)
offset_left = -179.0
offset_top = -257.0
offset_right = 121.0
offset_bottom = -209.0
theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_font_sizes/font_size = 24
text = "..."
autowrap_mode = 3
[connection signal="input_event" from="." to="." method="_on_input_event"]
[connection signal="mouse_entered" from="." to="." method="_on_mouse_entered"]
[connection signal="mouse_exited" from="." to="." method="_on_mouse_exited"]

View File

@@ -330,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
@@ -342,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"]
@@ -388,6 +412,7 @@ 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
@@ -429,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)
@@ -461,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")

View File

@@ -26,6 +26,7 @@ class_name GameManager
@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 current_level: Levels = Levels.LVL1
@@ -52,12 +53,11 @@ 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(roster_size, character_roster.size())
for i in range(max_number_of_people):
@@ -72,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
@@ -90,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
@@ -115,7 +112,7 @@ 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:
@@ -144,18 +141,33 @@ 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]
current_chara_roster = [lvl3_guest_1, lvl3_guest_2, lvl3_guest_3]
else:
create_new_roster()
var all_chara_in_current_roster: Array[CharacterResource] = []
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:
all_masks_in_current_roster.append(masked_chara.face_mask)
if 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)
guest_list.set_chara_list(all_chara_in_current_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()

View File

@@ -5,6 +5,8 @@ class_name MaskedChara
@export var face_mask: MaskResource
@export var mouth_mask: MaskResource
const ALONE_TRAIT = preload("uid://c4kpcm4tplsgg")
var pref_score_map: Dictionary[CharacterResource.Preference, float] = {
CharacterResource.Preference.LOVE: 2.0,
CharacterResource.Preference.APPROVE: 1.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
@@ -47,10 +51,18 @@ func compute_score(other_guests: Array[MaskedChara]) -> float:
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
print("%s guest appreciation %s" % [character.name, guest_appreciation])
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

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://divy6byhpwgs2" path="res://resources/masks/truthy.tres" id="2_0pm64"]
[ext_resource type="Texture2D" uid="uid://02al0mfbvjc1" path="res://assets/masks/Bouche 2.png" id="3_htpgb"]
[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")

View File

@@ -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

View File

@@ -1,7 +1,6 @@
[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://c25kg6um2k1dy" path="res://resources/guests/duchex_mute.tres" id="2_i14o5"]
[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"]
@@ -11,13 +10,11 @@ size = Vector2(128, 128)
[node name="Seat" type="Area2D" unique_id=1604639021]
script = ExtResource("1_pceab")
guest = ExtResource("2_i14o5")
[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]
visible = false
texture = ExtResource("4_wnjs1")
[node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=1054126207]

View File

@@ -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

View File

@@ -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)