Compare commits
36 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3e8dc34646 | ||
|
|
83df3047f7 | ||
| 72a1418914 | |||
| e7c0782099 | |||
| 4d041be88d | |||
| 728d848e5b | |||
|
|
cd9f7c7679 | ||
|
|
7b6be434a8 | ||
| abd2feaab8 | |||
|
|
41a72709df | ||
| bd9b9a35d8 | |||
| 7903af9463 | |||
| 02ee129b42 | |||
|
|
0d261242b3 | ||
| a0475c8588 | |||
|
|
5395f971cb | ||
| 46e4ba0fbb | |||
| 3220f4937f | |||
|
|
64e79704bf | ||
|
|
ca9c7b8e50 | ||
| 064559130c | |||
| fc70d205b3 | |||
| 152ade51da | |||
|
|
3f99175dfe | ||
|
|
3141066258 | ||
| 6026a32429 | |||
| 3ac654af4f | |||
|
|
5af462e78d | ||
|
|
2c4e9d90f3 | ||
|
|
bebb7b467b | ||
| 172ce12e79 | |||
|
|
6156666665 | ||
|
|
6c6e1b3289 | ||
|
|
3981646279 | ||
|
|
0f5f1d466f | ||
|
|
3521732cd2 |
118 changed files with 3440 additions and 291 deletions
BIN
assets/card_base/Illustrated BG.png
(Stored with Git LFS)
Normal file
BIN
assets/card_base/Illustrated BG.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/card_base/Illustrated BG.png.import
Normal file
34
assets/card_base/Illustrated BG.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dft4fbgoecbp4"
|
||||
path="res://.godot/imported/Illustrated BG.png-181034664aa2e590183e18ee7ca1bfaa.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/card_base/Illustrated BG.png"
|
||||
dest_files=["res://.godot/imported/Illustrated BG.png-181034664aa2e590183e18ee7ca1bfaa.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/card_base/Monster-InnerFill.png
(Stored with Git LFS)
Normal file
BIN
assets/card_base/Monster-InnerFill.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/card_base/Monster-InnerFill.png.import
Normal file
34
assets/card_base/Monster-InnerFill.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://c2qyx2k50v2vv"
|
||||
path="res://.godot/imported/Monster-InnerFill.png-93b412d347601958a4d2176fe728b492.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/card_base/Monster-InnerFill.png"
|
||||
dest_files=["res://.godot/imported/Monster-InnerFill.png-93b412d347601958a4d2176fe728b492.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/card_base/Pip.png
(Stored with Git LFS)
Normal file
BIN
assets/card_base/Pip.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/card_base/Pip.png.import
Normal file
34
assets/card_base/Pip.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cjmxetjq82rl2"
|
||||
path="res://.godot/imported/Pip.png-de8c266f2e2c9cd5a4519b7d5df4868e.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/card_base/Pip.png"
|
||||
dest_files=["res://.godot/imported/Pip.png-de8c266f2e2c9cd5a4519b7d5df4868e.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/card_base/RPS Panel.png
(Stored with Git LFS)
Normal file
BIN
assets/card_base/RPS Panel.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/card_base/RPS Panel.png.import
Normal file
34
assets/card_base/RPS Panel.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://d0a2opcuwsko8"
|
||||
path="res://.godot/imported/RPS Panel.png-ccba378cf0e54a7db466c513ef19441b.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/card_base/RPS Panel.png"
|
||||
dest_files=["res://.godot/imported/RPS Panel.png-ccba378cf0e54a7db466c513ef19441b.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/card_base/Screenshot 2025-01-25 211435.png
(Stored with Git LFS)
Normal file
BIN
assets/card_base/Screenshot 2025-01-25 211435.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/card_base/Screenshot 2025-01-25 211435.png.import
Normal file
34
assets/card_base/Screenshot 2025-01-25 211435.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cqladcrximh6"
|
||||
path="res://.godot/imported/Screenshot 2025-01-25 211435.png-7837967bcc49e81c793d612b9d970963.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/card_base/Screenshot 2025-01-25 211435.png"
|
||||
dest_files=["res://.godot/imported/Screenshot 2025-01-25 211435.png-7837967bcc49e81c793d612b9d970963.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/card_base/Star.png
(Stored with Git LFS)
Normal file
BIN
assets/card_base/Star.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/card_base/Star.png.import
Normal file
34
assets/card_base/Star.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cqttp0i3vph37"
|
||||
path="res://.godot/imported/Star.png-b9b4017ee1202aa95ea8c6ee772a751e.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/card_base/Star.png"
|
||||
dest_files=["res://.godot/imported/Star.png-b9b4017ee1202aa95ea8c6ee772a751e.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/card_base/batu.png
(Stored with Git LFS)
Normal file
BIN
assets/card_base/batu.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/card_base/batu.png.import
Normal file
34
assets/card_base/batu.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bywa8qlwvcksd"
|
||||
path="res://.godot/imported/batu.png-45758b8e11a9ea003a7865de11dc4441.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/card_base/batu.png"
|
||||
dest_files=["res://.godot/imported/batu.png-45758b8e11a9ea003a7865de11dc4441.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/card_base/gunting.png
(Stored with Git LFS)
Normal file
BIN
assets/card_base/gunting.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/card_base/gunting.png.import
Normal file
34
assets/card_base/gunting.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://ch04c20lkis6j"
|
||||
path="res://.godot/imported/gunting.png-f8810080ad1e41ec3bcb0f8ff0d8b5f8.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/card_base/gunting.png"
|
||||
dest_files=["res://.godot/imported/gunting.png-f8810080ad1e41ec3bcb0f8ff0d8b5f8.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/card_base/illust bg 1.png
(Stored with Git LFS)
Normal file
BIN
assets/card_base/illust bg 1.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/card_base/illust bg 1.png.import
Normal file
34
assets/card_base/illust bg 1.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://6trhu2r7h6g3"
|
||||
path="res://.godot/imported/illust bg 1.png-7d6e961f3fef1ad5d8dcf698718d9c23.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/card_base/illust bg 1.png"
|
||||
dest_files=["res://.godot/imported/illust bg 1.png-7d6e961f3fef1ad5d8dcf698718d9c23.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/card_base/kertas.png
(Stored with Git LFS)
Normal file
BIN
assets/card_base/kertas.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/card_base/kertas.png.import
Normal file
34
assets/card_base/kertas.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b0pclmv0j0r12"
|
||||
path="res://.godot/imported/kertas.png-fd031884ac9417a6b135672f3fcc1d7f.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/card_base/kertas.png"
|
||||
dest_files=["res://.godot/imported/kertas.png-fd031884ac9417a6b135672f3fcc1d7f.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/monster/Goldfish 2.png
(Stored with Git LFS)
Normal file
BIN
assets/monster/Goldfish 2.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/monster/Goldfish 2.png.import
Normal file
34
assets/monster/Goldfish 2.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b0f5rg5eqyym1"
|
||||
path="res://.godot/imported/Goldfish 2.png-20495c3132cec5d0b0f2eb9e1b6f168f.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/monster/Goldfish 2.png"
|
||||
dest_files=["res://.godot/imported/Goldfish 2.png-20495c3132cec5d0b0f2eb9e1b6f168f.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/monster/axolotl 3.png
(Stored with Git LFS)
Normal file
BIN
assets/monster/axolotl 3.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/monster/axolotl 3.png.import
Normal file
34
assets/monster/axolotl 3.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://wdyu7txs2ijg"
|
||||
path="res://.godot/imported/axolotl 3.png-66300d813b5cc2dfc432414b14c1f8bc.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/monster/axolotl 3.png"
|
||||
dest_files=["res://.godot/imported/axolotl 3.png-66300d813b5cc2dfc432414b14c1f8bc.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/monster/capybara 1.png
(Stored with Git LFS)
Normal file
BIN
assets/monster/capybara 1.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/monster/capybara 1.png.import
Normal file
34
assets/monster/capybara 1.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://c72q2py2vj6j4"
|
||||
path="res://.godot/imported/capybara 1.png-98187c93d8c784ac26a4fe6cdc81e3f0.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/monster/capybara 1.png"
|
||||
dest_files=["res://.godot/imported/capybara 1.png-98187c93d8c784ac26a4fe6cdc81e3f0.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/monster/cat 3.png
(Stored with Git LFS)
Normal file
BIN
assets/monster/cat 3.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/monster/cat 3.png.import
Normal file
34
assets/monster/cat 3.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bcusdaqfhlv1b"
|
||||
path="res://.godot/imported/cat 3.png-a083e2d16032d32908b04a46259e2c6a.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/monster/cat 3.png"
|
||||
dest_files=["res://.godot/imported/cat 3.png-a083e2d16032d32908b04a46259e2c6a.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/monster/duck 1.png
(Stored with Git LFS)
Normal file
BIN
assets/monster/duck 1.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/monster/duck 1.png.import
Normal file
34
assets/monster/duck 1.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://ujke0x73f77b"
|
||||
path="res://.godot/imported/duck 1.png-e7d6d398a984b9ae6ba8f33dfe27e9dd.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/monster/duck 1.png"
|
||||
dest_files=["res://.godot/imported/duck 1.png-e7d6d398a984b9ae6ba8f33dfe27e9dd.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/monster/froggo 1.png
(Stored with Git LFS)
Normal file
BIN
assets/monster/froggo 1.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/monster/froggo 1.png.import
Normal file
34
assets/monster/froggo 1.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b8accn4e2ojau"
|
||||
path="res://.godot/imported/froggo 1.png-9f147da84c624d2073b0c92236a84741.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/monster/froggo 1.png"
|
||||
dest_files=["res://.godot/imported/froggo 1.png-9f147da84c624d2073b0c92236a84741.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/monster/jellyfish 2.png
(Stored with Git LFS)
Normal file
BIN
assets/monster/jellyfish 2.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/monster/jellyfish 2.png.import
Normal file
34
assets/monster/jellyfish 2.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cstwubbj8l8fr"
|
||||
path="res://.godot/imported/jellyfish 2.png-d36c6543a46308145decdddd5ae9a63d.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/monster/jellyfish 2.png"
|
||||
dest_files=["res://.godot/imported/jellyfish 2.png-d36c6543a46308145decdddd5ae9a63d.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/monster/penguing 2.png
(Stored with Git LFS)
Normal file
BIN
assets/monster/penguing 2.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/monster/penguing 2.png.import
Normal file
34
assets/monster/penguing 2.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://deneyvmke3qyl"
|
||||
path="res://.godot/imported/penguing 2.png-80094e4bcdb64d08cfd28547f5dd45c7.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/monster/penguing 2.png"
|
||||
dest_files=["res://.godot/imported/penguing 2.png-80094e4bcdb64d08cfd28547f5dd45c7.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/monster/rabbit 1.png
(Stored with Git LFS)
Normal file
BIN
assets/monster/rabbit 1.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/monster/rabbit 1.png.import
Normal file
34
assets/monster/rabbit 1.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cu0ivvtvryq64"
|
||||
path="res://.godot/imported/rabbit 1.png-53666927d04c30fffb92370a7482b673.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/monster/rabbit 1.png"
|
||||
dest_files=["res://.godot/imported/rabbit 1.png-53666927d04c30fffb92370a7482b673.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/monster/whale 2.png
(Stored with Git LFS)
Normal file
BIN
assets/monster/whale 2.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/monster/whale 2.png.import
Normal file
34
assets/monster/whale 2.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dw8cnu3lfblig"
|
||||
path="res://.godot/imported/whale 2.png-8dca9b32eca20cb2feb31734e55de3f6.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/monster/whale 2.png"
|
||||
dest_files=["res://.godot/imported/whale 2.png-8dca9b32eca20cb2feb31734e55de3f6.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/support/Invisibility.png
(Stored with Git LFS)
Normal file
BIN
assets/support/Invisibility.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/support/Invisibility.png.import
Normal file
34
assets/support/Invisibility.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b8hkgi1r8wpri"
|
||||
path="res://.godot/imported/Invisibility.png-b1f5b6e24b6db1d63402e75c2d90b9f4.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/support/Invisibility.png"
|
||||
dest_files=["res://.godot/imported/Invisibility.png-b1f5b6e24b6db1d63402e75c2d90b9f4.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/support/absorb.png
(Stored with Git LFS)
Normal file
BIN
assets/support/absorb.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/support/absorb.png.import
Normal file
34
assets/support/absorb.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cv5hjphfixv3o"
|
||||
path="res://.godot/imported/absorb.png-e8458d89a69818053d3209e7228c83cd.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/support/absorb.png"
|
||||
dest_files=["res://.godot/imported/absorb.png-e8458d89a69818053d3209e7228c83cd.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/support/all out attack.png
(Stored with Git LFS)
Normal file
BIN
assets/support/all out attack.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/support/all out attack.png.import
Normal file
34
assets/support/all out attack.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bpmr8pa8cq3w0"
|
||||
path="res://.godot/imported/all out attack.png-2872fd363fbff1bf0b089ac317139b0e.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/support/all out attack.png"
|
||||
dest_files=["res://.godot/imported/all out attack.png-2872fd363fbff1bf0b089ac317139b0e.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/support/energy booster.png
(Stored with Git LFS)
Normal file
BIN
assets/support/energy booster.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/support/energy booster.png.import
Normal file
34
assets/support/energy booster.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cd1mxacc3gfcy"
|
||||
path="res://.godot/imported/energy booster.png-f846d83c962a9e077788e0d0ed5252dd.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/support/energy booster.png"
|
||||
dest_files=["res://.godot/imported/energy booster.png-f846d83c962a9e077788e0d0ed5252dd.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/support/insurance.png
(Stored with Git LFS)
Normal file
BIN
assets/support/insurance.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/support/insurance.png.import
Normal file
34
assets/support/insurance.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bwo6dfe1kpxhe"
|
||||
path="res://.godot/imported/insurance.png-fa2ae7ef8a239dc0e4a4bd2c8f0b477b.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/support/insurance.png"
|
||||
dest_files=["res://.godot/imported/insurance.png-fa2ae7ef8a239dc0e4a4bd2c8f0b477b.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/support/lifesteal.png
(Stored with Git LFS)
Normal file
BIN
assets/support/lifesteal.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/support/lifesteal.png.import
Normal file
34
assets/support/lifesteal.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bni2wr2vrg0fe"
|
||||
path="res://.godot/imported/lifesteal.png-1fcf74a2a74d8a4381ce6310ccb999d8.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/support/lifesteal.png"
|
||||
dest_files=["res://.godot/imported/lifesteal.png-1fcf74a2a74d8a4381ce6310ccb999d8.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/support/potion.png
(Stored with Git LFS)
Normal file
BIN
assets/support/potion.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/support/potion.png.import
Normal file
34
assets/support/potion.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://48hblv72emyr"
|
||||
path="res://.godot/imported/potion.png-1339ae9737d6625a795e518c852db261.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/support/potion.png"
|
||||
dest_files=["res://.godot/imported/potion.png-1339ae9737d6625a795e518c852db261.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/support/reflection.png
(Stored with Git LFS)
Normal file
BIN
assets/support/reflection.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/support/reflection.png.import
Normal file
34
assets/support/reflection.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b3uq5b2x2oacn"
|
||||
path="res://.godot/imported/reflection.png-2ae705bc1d7282dacca1272db53a447a.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/support/reflection.png"
|
||||
dest_files=["res://.godot/imported/reflection.png-2ae705bc1d7282dacca1272db53a447a.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/support/sword mastery.png
(Stored with Git LFS)
Normal file
BIN
assets/support/sword mastery.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/support/sword mastery.png.import
Normal file
34
assets/support/sword mastery.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://ha5p3vpqn5jv"
|
||||
path="res://.godot/imported/sword mastery.png-67026928e9b242f46437e6cfb6d95bee.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/support/sword mastery.png"
|
||||
dest_files=["res://.godot/imported/sword mastery.png-67026928e9b242f46437e6cfb6d95bee.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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/support/tanker.png
(Stored with Git LFS)
Normal file
BIN
assets/support/tanker.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
assets/support/tanker.png.import
Normal file
34
assets/support/tanker.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://hiswkj2stt4l"
|
||||
path="res://.godot/imported/tanker.png-de127e279370081587c7a5243fff4d1c.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/support/tanker.png"
|
||||
dest_files=["res://.godot/imported/tanker.png-de127e279370081587c7a5243fff4d1c.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
[gd_resource type="Theme" load_steps=2 format=3 uid="uid://cj3vs5hq2mcbp"]
|
||||
[gd_resource type="Theme" load_steps=2 format=3 uid="uid://is34t82g4jg"]
|
||||
|
||||
[ext_resource type="FontFile" uid="uid://ncoq4i61plvt" path="res://assets/Bohemian Soul.otf" id="1_yowck"]
|
||||
|
||||
|
|
|
|||
15
data/cards/monster/axoluna.tres
Normal file
15
data/cards/monster/axoluna.tres
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
[gd_resource type="Resource" script_class="MonsterCard" load_steps=3 format=3 uid="uid://di76avwc0gn8e"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://wdyu7txs2ijg" path="res://assets/monster/axolotl 3.png" id="1_j0l6n"]
|
||||
[ext_resource type="Script" path="res://tcg/card/monster_card.gd" id="1_s0p53"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_s0p53")
|
||||
rock = 20
|
||||
paper = 30
|
||||
scissors = 50
|
||||
energy_cost = 1
|
||||
base_health = 120
|
||||
name = "Axoluna"
|
||||
description = "Cute wanderer of the tank, Axoluna"
|
||||
icon = ExtResource("1_j0l6n")
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
[gd_resource type="Resource" script_class="MonsterCard" load_steps=2 format=3 uid="uid://cs7q8i7bvohmj"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/monster_card.gd" id="1_v65bb"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_v65bb")
|
||||
rock = 100
|
||||
paper = 100
|
||||
scissors = 100
|
||||
energy_cost = 3
|
||||
base_health = 170
|
||||
15
data/cards/monster/bunnaut.tres
Normal file
15
data/cards/monster/bunnaut.tres
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
[gd_resource type="Resource" script_class="MonsterCard" load_steps=3 format=3 uid="uid://tgju8eodyuk1"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/monster_card.gd" id="1_3jfyg"]
|
||||
[ext_resource type="Texture2D" uid="uid://cu0ivvtvryq64" path="res://assets/monster/rabbit 1.png" id="1_xibsw"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_3jfyg")
|
||||
rock = 10
|
||||
paper = 30
|
||||
scissors = 70
|
||||
energy_cost = 1
|
||||
base_health = 50
|
||||
name = "Bunnaut"
|
||||
description = "Run faster than tortoise."
|
||||
icon = ExtResource("1_xibsw")
|
||||
15
data/cards/monster/capytain.tres
Normal file
15
data/cards/monster/capytain.tres
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
[gd_resource type="Resource" script_class="MonsterCard" load_steps=3 format=3 uid="uid://cs7q8i7bvohmj"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://c72q2py2vj6j4" path="res://assets/monster/capybara 1.png" id="1_mulam"]
|
||||
[ext_resource type="Script" path="res://tcg/card/monster_card.gd" id="1_n3oql"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_n3oql")
|
||||
rock = 100
|
||||
paper = 40
|
||||
scissors = 80
|
||||
energy_cost = 3
|
||||
base_health = 170
|
||||
name = "Capytain"
|
||||
description = "A big, hungry capybara"
|
||||
icon = ExtResource("1_mulam")
|
||||
15
data/cards/monster/cattogato.tres
Normal file
15
data/cards/monster/cattogato.tres
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
[gd_resource type="Resource" script_class="MonsterCard" load_steps=3 format=3 uid="uid://bmst884k0myvd"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/monster_card.gd" id="1_hblhq"]
|
||||
[ext_resource type="Texture2D" uid="uid://bcusdaqfhlv1b" path="res://assets/monster/cat 3.png" id="1_xles7"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_hblhq")
|
||||
rock = 10
|
||||
paper = 10
|
||||
scissors = 200
|
||||
energy_cost = 3
|
||||
base_health = 80
|
||||
name = "Cattogato"
|
||||
description = "Lovely cat wandering in the space."
|
||||
icon = ExtResource("1_xles7")
|
||||
15
data/cards/monster/froguvo.tres
Normal file
15
data/cards/monster/froguvo.tres
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
[gd_resource type="Resource" script_class="MonsterCard" load_steps=3 format=3 uid="uid://bt1ngixrq4sve"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/monster_card.gd" id="1_ayfld"]
|
||||
[ext_resource type="Texture2D" uid="uid://b8accn4e2ojau" path="res://assets/monster/froggo 1.png" id="1_vlu3d"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_ayfld")
|
||||
rock = 20
|
||||
paper = 30
|
||||
scissors = 50
|
||||
energy_cost = 1
|
||||
base_health = 80
|
||||
name = "Froguvo"
|
||||
description = "Ribbit in space."
|
||||
icon = ExtResource("1_vlu3d")
|
||||
15
data/cards/monster/gilli.tres
Normal file
15
data/cards/monster/gilli.tres
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
[gd_resource type="Resource" script_class="MonsterCard" load_steps=3 format=3 uid="uid://myxgsyerrdla"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/monster_card.gd" id="1_1j36c"]
|
||||
[ext_resource type="Texture2D" uid="uid://b0f5rg5eqyym1" path="res://assets/monster/Goldfish 2.png" id="1_62dnj"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_1j36c")
|
||||
rock = 40
|
||||
paper = 10
|
||||
scissors = 10
|
||||
energy_cost = 1
|
||||
base_health = 120
|
||||
name = "Gilli"
|
||||
description = "There is a huge monster looking at me everyday."
|
||||
icon = ExtResource("1_62dnj")
|
||||
15
data/cards/monster/jellova.tres
Normal file
15
data/cards/monster/jellova.tres
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
[gd_resource type="Resource" script_class="MonsterCard" load_steps=3 format=3 uid="uid://425ipxdapg8o"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://cstwubbj8l8fr" path="res://assets/monster/jellyfish 2.png" id="1_t6381"]
|
||||
[ext_resource type="Script" path="res://tcg/card/monster_card.gd" id="1_yvmeg"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_yvmeg")
|
||||
rock = 40
|
||||
paper = 60
|
||||
scissors = 50
|
||||
energy_cost = 2
|
||||
base_health = 110
|
||||
name = "Jellova"
|
||||
description = "I'm gonna whip you till' you .. nevermind."
|
||||
icon = ExtResource("1_t6381")
|
||||
15
data/cards/monster/orcava.tres
Normal file
15
data/cards/monster/orcava.tres
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
[gd_resource type="Resource" script_class="MonsterCard" load_steps=3 format=3 uid="uid://cakkx0o8mifmn"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dw8cnu3lfblig" path="res://assets/monster/whale 2.png" id="1_4dsvt"]
|
||||
[ext_resource type="Script" path="res://tcg/card/monster_card.gd" id="1_xcdwy"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_xcdwy")
|
||||
rock = 30
|
||||
paper = 30
|
||||
scissors = 30
|
||||
energy_cost = 2
|
||||
base_health = 200
|
||||
name = "Orcava"
|
||||
description = "Human try to communicate with me. I simply block them."
|
||||
icon = ExtResource("1_4dsvt")
|
||||
15
data/cards/monster/prankie.tres
Normal file
15
data/cards/monster/prankie.tres
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
[gd_resource type="Resource" script_class="MonsterCard" load_steps=3 format=3 uid="uid://shri5ne51s74"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/monster_card.gd" id="1_70s4q"]
|
||||
[ext_resource type="Texture2D" uid="uid://deneyvmke3qyl" path="res://assets/monster/penguing 2.png" id="1_75ppb"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_70s4q")
|
||||
rock = 60
|
||||
paper = 60
|
||||
scissors = 10
|
||||
energy_cost = 2
|
||||
base_health = 100
|
||||
name = "Prankie"
|
||||
description = "I'm not pranking anyone. Yet."
|
||||
icon = ExtResource("1_75ppb")
|
||||
15
data/cards/monster/quackle.tres
Normal file
15
data/cards/monster/quackle.tres
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
[gd_resource type="Resource" script_class="MonsterCard" load_steps=3 format=3 uid="uid://dnf3gpji5prlr"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://ujke0x73f77b" path="res://assets/monster/duck 1.png" id="1_4f7pv"]
|
||||
[ext_resource type="Script" path="res://tcg/card/monster_card.gd" id="1_a8rjn"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_a8rjn")
|
||||
rock = 50
|
||||
paper = 20
|
||||
scissors = 40
|
||||
energy_cost = 1
|
||||
base_health = 70
|
||||
name = "Quackle"
|
||||
description = "Quack! Quack! No one notice me."
|
||||
icon = ExtResource("1_4f7pv")
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
[gd_resource type="Resource" script_class="MonsterCard" load_steps=2 format=3 uid="uid://di76avwc0gn8e"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/monster_card.gd" id="1_j4601"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_j4601")
|
||||
rock = 50
|
||||
paper = 50
|
||||
scissors = 50
|
||||
energy_cost = 1
|
||||
base_health = 120
|
||||
14
data/cards/support/absorb.tres
Normal file
14
data/cards/support/absorb.tres
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
[gd_resource type="Resource" script_class="ImplementedSupportCard" load_steps=4 format=3 uid="uid://be01tdq1fxlct"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_mhxdy"]
|
||||
[ext_resource type="Script" path="res://tcg/card/implemented_support_card.gd" id="2_f6hay"]
|
||||
[ext_resource type="Texture2D" uid="uid://cv5hjphfixv3o" path="res://assets/support/absorb.png" id="2_i2lgf"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_f6hay")
|
||||
scope = "turn"
|
||||
type = "red"
|
||||
effects = Array[ExtResource("1_mhxdy")]([])
|
||||
name = "Absorb"
|
||||
description = "Enemy damage converted to heal your Active Monster Field HP during this turn."
|
||||
icon = ExtResource("2_i2lgf")
|
||||
14
data/cards/support/all_out_attack.tres
Normal file
14
data/cards/support/all_out_attack.tres
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
[gd_resource type="Resource" script_class="ImplementedSupportCard" load_steps=4 format=3 uid="uid://dgxcvdo6x6kst"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_fd50n"]
|
||||
[ext_resource type="Script" path="res://tcg/card/implemented_support_card.gd" id="2_61mgn"]
|
||||
[ext_resource type="Texture2D" uid="uid://bpmr8pa8cq3w0" path="res://assets/support/all out attack.png" id="2_a1iip"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_61mgn")
|
||||
scope = "turn"
|
||||
type = "green"
|
||||
effects = Array[ExtResource("1_fd50n")]([null])
|
||||
name = "All-Out Attack"
|
||||
description = "Combine all Rock Paper Scissor during this turn, and got additional damage from the lowest Rock Paper Scissor you got."
|
||||
icon = ExtResource("2_a1iip")
|
||||
12
data/cards/support/attack_mode.tres
Normal file
12
data/cards/support/attack_mode.tres
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[gd_resource type="Resource" script_class="SupportCard" load_steps=3 format=3 uid="uid://dcimexx4twoe2"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_jl6i7"]
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card.gd" id="2_p06c1"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_p06c1")
|
||||
type = "green"
|
||||
priority = 0
|
||||
effects = Array[ExtResource("1_jl6i7")]([null])
|
||||
name = "Attack Mode"
|
||||
description = "If you have Prankie in your Active Monster Field, set all Rock Paper Scissor to 100 permanently."
|
||||
12
data/cards/support/caller.tres
Normal file
12
data/cards/support/caller.tres
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[gd_resource type="Resource" script_class="SupportCard" load_steps=3 format=3 uid="uid://5n2o4m7xqd13"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_w4l0x"]
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card.gd" id="2_n7fiv"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_n7fiv")
|
||||
type = "green"
|
||||
priority = 0
|
||||
effects = Array[ExtResource("1_w4l0x")]([null])
|
||||
name = "Caller"
|
||||
description = "Get 1 monster of your choice to your hand. Shuffle it afterwards."
|
||||
12
data/cards/support/cash_back.tres
Normal file
12
data/cards/support/cash_back.tres
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[gd_resource type="Resource" script_class="SupportCard" load_steps=3 format=3 uid="uid://bk6myqvoklhqp"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_7f5cd"]
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card.gd" id="2_prilx"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_prilx")
|
||||
type = "red"
|
||||
priority = 0
|
||||
effects = Array[ExtResource("1_7f5cd")]([null])
|
||||
name = "Cash Back"
|
||||
description = "If your monster died during this turn, Refund all the energy being used by the monster sent to graveyard."
|
||||
12
data/cards/support/catcher.tres
Normal file
12
data/cards/support/catcher.tres
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[gd_resource type="Resource" script_class="SupportCard" load_steps=3 format=3 uid="uid://ca0fengr2xjps"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_r7m0a"]
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card.gd" id="2_g1u6x"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_g1u6x")
|
||||
type = "green"
|
||||
priority = 0
|
||||
effects = Array[ExtResource("1_r7m0a")]([null])
|
||||
name = "Catcher"
|
||||
description = "For one turn, swap your Active Enemy card with your Active Monster card. If the card you previously used died during this turn, you can keep the enemy monster card."
|
||||
14
data/cards/support/energy_booster.tres
Normal file
14
data/cards/support/energy_booster.tres
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
[gd_resource type="Resource" script_class="ImplementedSupportCard" load_steps=4 format=3 uid="uid://c0grh1y65e0f3"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_pkc1x"]
|
||||
[ext_resource type="Script" path="res://tcg/card/implemented_support_card.gd" id="2_iq88n"]
|
||||
[ext_resource type="Texture2D" uid="uid://cd1mxacc3gfcy" path="res://assets/support/energy booster.png" id="2_lxctl"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_iq88n")
|
||||
scope = "turn"
|
||||
type = "green"
|
||||
effects = Array[ExtResource("1_pkc1x")]([null])
|
||||
name = "Energy Booster"
|
||||
description = "Add 1 additional Energy."
|
||||
icon = ExtResource("2_lxctl")
|
||||
14
data/cards/support/insurance.tres
Normal file
14
data/cards/support/insurance.tres
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
[gd_resource type="Resource" script_class="ImplementedSupportCard" load_steps=4 format=3 uid="uid://dfocg5yfh22e8"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_gtyqr"]
|
||||
[ext_resource type="Script" path="res://tcg/card/implemented_support_card.gd" id="2_3ixor"]
|
||||
[ext_resource type="Texture2D" uid="uid://bwo6dfe1kpxhe" path="res://assets/support/insurance.png" id="2_f7jjv"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_3ixor")
|
||||
scope = "turn"
|
||||
type = "red"
|
||||
effects = Array[ExtResource("1_gtyqr")]([null])
|
||||
name = "Insurance"
|
||||
description = "If your monster supposed to be dead in this turn, keep it alive at 10 HP."
|
||||
icon = ExtResource("2_f7jjv")
|
||||
14
data/cards/support/invisibility.tres
Normal file
14
data/cards/support/invisibility.tres
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
[gd_resource type="Resource" script_class="ImplementedSupportCard" load_steps=4 format=3 uid="uid://by4yg81uqti3u"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_5tnpm"]
|
||||
[ext_resource type="Script" path="res://tcg/card/implemented_support_card.gd" id="2_6c2xo"]
|
||||
[ext_resource type="Texture2D" uid="uid://b8hkgi1r8wpri" path="res://assets/support/Invisibility.png" id="2_6occh"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_6c2xo")
|
||||
scope = "turn"
|
||||
type = "green"
|
||||
effects = Array[ExtResource("1_5tnpm")]([null])
|
||||
name = "Invisibility"
|
||||
description = "Ignore any damage to your monster in this turn."
|
||||
icon = ExtResource("2_6occh")
|
||||
14
data/cards/support/lifesteal.tres
Normal file
14
data/cards/support/lifesteal.tres
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
[gd_resource type="Resource" script_class="ImplementedSupportCard" load_steps=4 format=3 uid="uid://bcrlaam8uq6xt"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_b33y4"]
|
||||
[ext_resource type="Texture2D" uid="uid://bni2wr2vrg0fe" path="res://assets/support/lifesteal.png" id="2_arrkb"]
|
||||
[ext_resource type="Script" path="res://tcg/card/implemented_support_card.gd" id="2_khaf1"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_khaf1")
|
||||
scope = "turn"
|
||||
type = "green"
|
||||
effects = Array[ExtResource("1_b33y4")]([null])
|
||||
name = "Lifesteal"
|
||||
description = "During this turn your attack also heals your HP."
|
||||
icon = ExtResource("2_arrkb")
|
||||
13
data/cards/support/negate.tres
Normal file
13
data/cards/support/negate.tres
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
[gd_resource type="Resource" script_class="SimpleSupportCard" load_steps=3 format=3 uid="uid://cl0jcer7o04uc"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_awvxv"]
|
||||
[ext_resource type="Script" path="res://tcg/card/implemented_support_card.gd" id="2_tr5ug"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_tr5ug")
|
||||
scope = "turn"
|
||||
magnitude = 0
|
||||
type = "red"
|
||||
effects = Array[ExtResource("1_awvxv")]([null])
|
||||
name = "Negate"
|
||||
description = "Cancel 1 of the Support Card played by your opponent. This card will always be played last."
|
||||
12
data/cards/support/paper.tres
Normal file
12
data/cards/support/paper.tres
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[gd_resource type="Resource" script_class="SupportCard" load_steps=3 format=3 uid="uid://crn3qovkygo6l"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_gqbio"]
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card.gd" id="2_rr70q"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_rr70q")
|
||||
type = "green"
|
||||
priority = 0
|
||||
effects = Array[ExtResource("1_gqbio")]([null])
|
||||
name = "Force Paper"
|
||||
description = "Forcing enemy to pick Paper during this turn."
|
||||
|
|
@ -1,9 +1,9 @@
|
|||
[gd_resource type="Resource" script_class="SupportCard" load_steps=6 format=3 uid="uid://4eod3m0vc5a8"]
|
||||
[gd_resource type="Resource" script_class="ImplementedSupportCard" load_steps=6 format=3 uid="uid://4eod3m0vc5a8"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_ujm0o"]
|
||||
[ext_resource type="Resource" uid="uid://cvu0rtt5nggf" path="res://data/support_effects/heal.tres" id="2_k1cnl"]
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card.gd" id="3_6r4k4"]
|
||||
[ext_resource type="Texture2D" uid="uid://rh3aswb0p7ri" path="res://assets/energy.png" id="3_kyx3v"]
|
||||
[ext_resource type="Script" path="res://tcg/card/implemented_support_card.gd" id="3_at5nt"]
|
||||
[ext_resource type="Texture2D" uid="uid://48hblv72emyr" path="res://assets/support/potion.png" id="3_hk8kx"]
|
||||
|
||||
[sub_resource type="Resource" id="Resource_88lmk"]
|
||||
script = ExtResource("1_ujm0o")
|
||||
|
|
@ -11,10 +11,10 @@ magnitude = 30
|
|||
effect = ExtResource("2_k1cnl")
|
||||
|
||||
[resource]
|
||||
script = ExtResource("3_6r4k4")
|
||||
script = ExtResource("3_at5nt")
|
||||
scope = "turn"
|
||||
type = "green"
|
||||
priority = 0
|
||||
effects = Array[ExtResource("1_ujm0o")]([SubResource("Resource_88lmk")])
|
||||
name = "Potion"
|
||||
description = "Heal 30 HP"
|
||||
icon = ExtResource("3_kyx3v")
|
||||
icon = ExtResource("3_hk8kx")
|
||||
|
|
|
|||
14
data/cards/support/reflection.tres
Normal file
14
data/cards/support/reflection.tres
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
[gd_resource type="Resource" script_class="ImplementedSupportCard" load_steps=4 format=3 uid="uid://c1gsrru1wa6ao"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_mk2or"]
|
||||
[ext_resource type="Script" path="res://tcg/card/implemented_support_card.gd" id="2_igbok"]
|
||||
[ext_resource type="Texture2D" uid="uid://b3uq5b2x2oacn" path="res://assets/support/reflection.png" id="2_jrr8g"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_igbok")
|
||||
scope = "turn"
|
||||
type = "red"
|
||||
effects = Array[ExtResource("1_mk2or")]([null])
|
||||
name = "Reflection"
|
||||
description = "Enemy got the same amount of damage as our monster in this turn."
|
||||
icon = ExtResource("2_jrr8g")
|
||||
12
data/cards/support/retreat.tres
Normal file
12
data/cards/support/retreat.tres
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[gd_resource type="Resource" script_class="SupportCard" load_steps=3 format=3 uid="uid://cljmcpwa44j6b"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_2w2ve"]
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card.gd" id="2_r3faa"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_r3faa")
|
||||
type = "green"
|
||||
priority = 0
|
||||
effects = Array[ExtResource("1_2w2ve")]([null])
|
||||
name = "Retreat"
|
||||
description = "Swap your monster in Active Field with the one in your hand. The energy cost for summoning decreased by 1."
|
||||
12
data/cards/support/reviver.tres
Normal file
12
data/cards/support/reviver.tres
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[gd_resource type="Resource" script_class="SupportCard" load_steps=3 format=3 uid="uid://c3o6lxj0m6yod"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_y5oux"]
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card.gd" id="2_7m5wu"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_7m5wu")
|
||||
type = "red"
|
||||
priority = 0
|
||||
effects = Array[ExtResource("1_y5oux")]([null])
|
||||
name = "Reviver"
|
||||
description = "Revive 1 Monster of your choice from your graveyard, and move it into your hand."
|
||||
12
data/cards/support/rock.tres
Normal file
12
data/cards/support/rock.tres
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[gd_resource type="Resource" script_class="SupportCard" load_steps=3 format=3 uid="uid://defdobjmiloth"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_hx76y"]
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card.gd" id="2_oinlp"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_oinlp")
|
||||
type = "green"
|
||||
priority = 0
|
||||
effects = Array[ExtResource("1_hx76y")]([null])
|
||||
name = "Force Rock"
|
||||
description = "Forcing enemy to pick Rock during this turn."
|
||||
12
data/cards/support/scissor.tres
Normal file
12
data/cards/support/scissor.tres
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[gd_resource type="Resource" script_class="SupportCard" load_steps=3 format=3 uid="uid://d304v2sfewmp5"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_q82mb"]
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card.gd" id="2_yklgt"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_yklgt")
|
||||
type = "red"
|
||||
priority = 0
|
||||
effects = Array[ExtResource("1_q82mb")]([null])
|
||||
name = "Force Scissor"
|
||||
description = "Forcing enemy to pick Scissor during this turn."
|
||||
20
data/cards/support/sword_mastery.tres
Normal file
20
data/cards/support/sword_mastery.tres
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
[gd_resource type="Resource" script_class="ImplementedSupportCard" load_steps=6 format=3 uid="uid://2xeb6keaoabo"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_y6yvj"]
|
||||
[ext_resource type="Resource" uid="uid://bs4i85slalkgd" path="res://data/support_effects/sword_mastery.tres" id="2_omhdb"]
|
||||
[ext_resource type="Script" path="res://tcg/card/implemented_support_card.gd" id="3_37rh4"]
|
||||
[ext_resource type="Texture2D" uid="uid://ha5p3vpqn5jv" path="res://assets/support/sword mastery.png" id="3_rrvpt"]
|
||||
|
||||
[sub_resource type="Resource" id="Resource_wwv02"]
|
||||
script = ExtResource("1_y6yvj")
|
||||
magnitude = 20
|
||||
effect = ExtResource("2_omhdb")
|
||||
|
||||
[resource]
|
||||
script = ExtResource("3_37rh4")
|
||||
scope = "monster"
|
||||
type = "green"
|
||||
effects = Array[ExtResource("1_y6yvj")]([SubResource("Resource_wwv02")])
|
||||
name = "Sword Mastery"
|
||||
description = "Permanently add 20 damage for all Rock Paper Scissor to 1 Active Monster."
|
||||
icon = ExtResource("3_rrvpt")
|
||||
14
data/cards/support/tanker.tres
Normal file
14
data/cards/support/tanker.tres
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
[gd_resource type="Resource" script_class="ImplementedSupportCard" load_steps=4 format=3 uid="uid://dsmrqyxt8mdp5"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect_instance.gd" id="1_1fvcb"]
|
||||
[ext_resource type="Script" path="res://tcg/card/implemented_support_card.gd" id="2_d0adk"]
|
||||
[ext_resource type="Texture2D" uid="uid://hiswkj2stt4l" path="res://assets/support/tanker.png" id="2_hqv06"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_d0adk")
|
||||
scope = "turn"
|
||||
type = "red"
|
||||
effects = Array[ExtResource("1_1fvcb")]([null])
|
||||
name = "Tanker"
|
||||
description = "Add your HP with your selected (Rock Paper Scissor) during this turn, and reduce to max HP if current HP higher than max HP."
|
||||
icon = ExtResource("2_hqv06")
|
||||
6
data/support_effects/sword_mastery.tres
Normal file
6
data/support_effects/sword_mastery.tres
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
[gd_resource type="Resource" script_class="SupportCardEffect" load_steps=2 format=3 uid="uid://bs4i85slalkgd"]
|
||||
|
||||
[ext_resource type="Script" path="res://tcg/card/support_card_effect.gd" id="1_43nry"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_43nry")
|
||||
99
demo_game.gd
99
demo_game.gd
|
|
@ -1,62 +1,135 @@
|
|||
extends Control
|
||||
class_name DemoGame
|
||||
|
||||
signal own_played_card(card: Card)
|
||||
signal opponent_played_card(card: Card)
|
||||
signal own_played_rts(move: String)
|
||||
signal opponent_played_rts(move: String)
|
||||
|
||||
@export var player_1_deck: Array[Card]
|
||||
@export var player_2_deck: Array[Card]
|
||||
@onready var match_manager = $MatchManager
|
||||
|
||||
@onready var match_manager: MatchManager = $MatchManager
|
||||
@onready var own_side = $Own
|
||||
@onready var opponent_side = $Opponent
|
||||
@onready var start_game_btn = $StartGameButton
|
||||
@onready var win_lose_tie_label: Label = $"Win-Lose-Tie"
|
||||
|
||||
var id_to_card: Dictionary = {}
|
||||
|
||||
var player_action_queue: Dictionary
|
||||
var player_1_action: Action:
|
||||
get:
|
||||
return player_action_queue.get(MatchManager.PLAYER_1_ID)
|
||||
return player_action_queue.get(own_side.player_id)
|
||||
set(value):
|
||||
player_action_queue[MatchManager.PLAYER_1_ID] = value
|
||||
player_action_queue[own_side.player_id] = value
|
||||
var player_2_action: Action:
|
||||
get:
|
||||
return player_action_queue.get(MatchManager.PLAYER_2_ID)
|
||||
return player_action_queue.get(opponent_side.player_id)
|
||||
set(value):
|
||||
player_action_queue[MatchManager.PLAYER_2_ID] = value
|
||||
player_action_queue[opponent_side.player_id] = value
|
||||
|
||||
var id
|
||||
var signal_connected := false
|
||||
|
||||
func _ready() -> void:
|
||||
_update_phase_info(Match.Phase.PREGAME)
|
||||
|
||||
func init(player_id: int) -> void:
|
||||
id = player_id
|
||||
|
||||
own_side.player_id = player_id
|
||||
opponent_side.player_id = MatchManager.PLAYER_2_ID if player_id == MatchManager.PLAYER_1_ID else MatchManager.PLAYER_1_ID
|
||||
|
||||
id_to_card.clear()
|
||||
|
||||
var cards = player_1_deck.duplicate()
|
||||
cards.append_array(player_2_deck)
|
||||
for card in cards:
|
||||
if card.id not in id_to_card:
|
||||
id_to_card[card.id] = card
|
||||
|
||||
print(match_manager.phase)
|
||||
match_manager.init({
|
||||
MatchManager.PLAYER_1_ID: player_1_deck,
|
||||
MatchManager.PLAYER_2_ID: player_2_deck
|
||||
})
|
||||
own_side.attach(match_manager)
|
||||
opponent_side.attach(match_manager)
|
||||
match_manager.state_transitioned.connect(_on_match_manager_state_transitioned)
|
||||
}, own_side.player_id, opponent_side.player_id)
|
||||
own_side.attach(match_manager, true)
|
||||
opponent_side.attach(match_manager, false)
|
||||
|
||||
if !signal_connected:
|
||||
match_manager.state_transitioned.connect(_on_match_manager_state_transitioned)
|
||||
signal_connected = true
|
||||
|
||||
var transition_history: Array[PhaseTransition] = []
|
||||
func _on_match_manager_state_transitioned(transition: PhaseTransition):
|
||||
start_game_btn.visible = match_manager.phase == Match.Phase.PREGAME
|
||||
transition_history.append(transition)
|
||||
_update_phase_info(transition.to)
|
||||
if transition.to == Match.Phase.END:
|
||||
var game_ended_event: EventGameEnded = transition.events.filter(func (it): return it is EventGameEnded)[0]
|
||||
win_lose_tie_label.text = "TIE" if game_ended_event.winner_player_id == -1 else "YOU WON!" if game_ended_event.winner_player_id == id else "YOU LOST!"
|
||||
win_lose_tie_label.visible = true
|
||||
print("Phase: ", Match.phase_to_str(transition.from), " -> ", Match.phase_to_str(transition.to))
|
||||
|
||||
func _on_start_game_button_button_up() -> void:
|
||||
#match_manager.resolve({})
|
||||
pass
|
||||
|
||||
func rpc_start_game() -> void:
|
||||
match_manager.resolve({})
|
||||
|
||||
func _on_own_play_card(card: Card) -> void:
|
||||
player_1_action = ActionPlayCard.new(card)
|
||||
if card:
|
||||
player_1_action = ActionPlayCard.new(card)
|
||||
own_played_card.emit(card)
|
||||
else:
|
||||
player_1_action = ActionSkipCard.new()
|
||||
own_played_card.emit(null)
|
||||
|
||||
print(id, " _on_own_play_card", player_1_action, player_2_action)
|
||||
|
||||
if player_2_action:
|
||||
match_manager.resolve(player_action_queue)
|
||||
player_action_queue.clear()
|
||||
|
||||
func _on_opponent_play_card(card: Card) -> void:
|
||||
player_2_action = ActionPlayCard.new(card)
|
||||
func rpc_opponent_play_card(id: String) -> void:
|
||||
if !id.is_empty():
|
||||
var card = id_to_card[id]
|
||||
player_2_action = ActionPlayCard.new(card)
|
||||
else:
|
||||
player_2_action = ActionSkipCard.new()
|
||||
|
||||
print(self.id , " rpc_opponent_play_card", player_1_action, player_2_action)
|
||||
|
||||
if player_1_action:
|
||||
match_manager.resolve(player_action_queue)
|
||||
player_action_queue.clear()
|
||||
|
||||
func _on_own_rps_move(move: String) -> void:
|
||||
player_1_action = ActionRPSMove.new(move)
|
||||
own_played_rts.emit(move)
|
||||
|
||||
print(id, " _on_own_rps_move", player_1_action, player_2_action, move)
|
||||
|
||||
if player_2_action:
|
||||
match_manager.resolve(player_action_queue)
|
||||
player_action_queue.clear()
|
||||
|
||||
func _on_opponent_rps_move(move: String) -> void:
|
||||
func rpc_opponent_rps_move(move: String) -> void:
|
||||
player_2_action = ActionRPSMove.new(move)
|
||||
|
||||
print(id, " rpc_opponent_rps_move", player_1_action, player_2_action, move)
|
||||
|
||||
if player_1_action:
|
||||
match_manager.resolve(player_action_queue)
|
||||
player_action_queue.clear()
|
||||
|
||||
func _update_phase_info(phase: Match.Phase):
|
||||
var phaseHeaders: Container = get_node("%PhaseInfo/PhaseHeader")
|
||||
for child: Label in phaseHeaders.get_children():
|
||||
child.modulate = Color.DIM_GRAY
|
||||
var target = phaseHeaders.get_node(Match.phase_to_str(phase))
|
||||
phaseHeaders.visible = target != null
|
||||
if target:
|
||||
target.modulate = Color.WHITE
|
||||
|
|
|
|||
391
demo_game.tscn
391
demo_game.tscn
|
|
@ -1,12 +1,28 @@
|
|||
[gd_scene load_steps=8 format=3 uid="uid://bgc0u117jqyr1"]
|
||||
[gd_scene load_steps=24 format=3 uid="uid://bgc0u117jqyr1"]
|
||||
|
||||
[ext_resource type="Script" path="res://demo_game.gd" id="1_jn16u"]
|
||||
[ext_resource type="Script" path="res://player_side.gd" id="2_w4tnt"]
|
||||
[ext_resource type="Script" path="res://tcg/card/card.gd" id="2_xuft0"]
|
||||
[ext_resource type="PackedScene" uid="uid://cikstg43mudkn" path="res://tcg/match/match_manager.tscn" id="3_3yhrl"]
|
||||
[ext_resource type="Resource" uid="uid://cs7q8i7bvohmj" path="res://data/cards/monster/baraga.tres" id="3_we1tk"]
|
||||
[ext_resource type="Resource" uid="uid://cs7q8i7bvohmj" path="res://data/cards/monster/capytain.tres" id="3_we1tk"]
|
||||
[ext_resource type="Resource" uid="uid://4eod3m0vc5a8" path="res://data/cards/support/potion.tres" id="4_kkhfk"]
|
||||
[ext_resource type="Resource" uid="uid://di76avwc0gn8e" path="res://data/cards/monster/taiman.tres" id="5_3cm5x"]
|
||||
[ext_resource type="Resource" uid="uid://deo8mj887rfx1" path="res://data/cards/monster/axoluna.tres" id="5_3cm5x"]
|
||||
[ext_resource type="Resource" uid="uid://bcrlaam8uq6xt" path="res://data/cards/support/lifesteal.tres" id="6_potm8"]
|
||||
[ext_resource type="PackedScene" uid="uid://bhrelvt51cbp2" path="res://ui/card_template/monster_card.tscn" id="7_4ah45"]
|
||||
[ext_resource type="Resource" uid="uid://dgxcvdo6x6kst" path="res://data/cards/support/all_out_attack.tres" id="7_nvv8k"]
|
||||
[ext_resource type="PackedScene" uid="uid://b60vuykleugjn" path="res://ui/card_template/skip_card.tscn" id="7_skjyk"]
|
||||
[ext_resource type="PackedScene" uid="uid://dg5amjm1gqi06" path="res://ui/card_template/support_card_green.tscn" id="8_dytl5"]
|
||||
[ext_resource type="Resource" uid="uid://be01tdq1fxlct" path="res://data/cards/support/absorb.tres" id="8_ewr4v"]
|
||||
[ext_resource type="PackedScene" uid="uid://cds50kwwhlgam" path="res://ui/card_template/support_card_red.tscn" id="9_cabcc"]
|
||||
[ext_resource type="Resource" uid="uid://dfocg5yfh22e8" path="res://data/cards/support/insurance.tres" id="9_ga5hf"]
|
||||
[ext_resource type="Resource" uid="uid://c0grh1y65e0f3" path="res://data/cards/support/energy_booster.tres" id="10_3rg8q"]
|
||||
[ext_resource type="Resource" uid="uid://2xeb6keaoabo" path="res://data/cards/support/sword_mastery.tres" id="11_seakd"]
|
||||
[ext_resource type="Resource" uid="uid://bmst884k0myvd" path="res://data/cards/monster/cattogato.tres" id="12_xqqfn"]
|
||||
[ext_resource type="Texture2D" uid="uid://6trhu2r7h6g3" path="res://assets/card_base/illust bg 1.png" id="13_bdgfp"]
|
||||
[ext_resource type="Texture2D" uid="uid://b0pclmv0j0r12" path="res://assets/card_base/kertas.png" id="18_gwpy8"]
|
||||
[ext_resource type="Theme" uid="uid://is34t82g4jg" path="res://cards.tres" id="19_3iovu"]
|
||||
[ext_resource type="Texture2D" uid="uid://ch04c20lkis6j" path="res://assets/card_base/gunting.png" id="19_clnw6"]
|
||||
[ext_resource type="Texture2D" uid="uid://bywa8qlwvcksd" path="res://assets/card_base/batu.png" id="20_672ya"]
|
||||
|
||||
[node name="DemoGame" type="Control"]
|
||||
layout_mode = 3
|
||||
|
|
@ -16,134 +32,256 @@ anchor_bottom = 1.0
|
|||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
script = ExtResource("1_jn16u")
|
||||
player_1_deck = Array[ExtResource("2_xuft0")]([ExtResource("3_we1tk"), ExtResource("4_kkhfk"), ExtResource("4_kkhfk")])
|
||||
player_2_deck = Array[ExtResource("2_xuft0")]([ExtResource("5_3cm5x"), ExtResource("4_kkhfk"), ExtResource("4_kkhfk")])
|
||||
player_1_deck = Array[ExtResource("2_xuft0")]([ExtResource("3_we1tk"), ExtResource("4_kkhfk"), ExtResource("5_3cm5x"), ExtResource("6_potm8"), ExtResource("7_nvv8k"), ExtResource("8_ewr4v"), ExtResource("9_ga5hf"), ExtResource("10_3rg8q"), ExtResource("11_seakd")])
|
||||
player_2_deck = Array[ExtResource("2_xuft0")]([ExtResource("12_xqqfn"), ExtResource("4_kkhfk"), ExtResource("6_potm8"), ExtResource("7_nvv8k"), ExtResource("8_ewr4v"), ExtResource("9_ga5hf"), ExtResource("10_3rg8q"), ExtResource("11_seakd"), ExtResource("5_3cm5x")])
|
||||
|
||||
[node name="Own" type="VBoxContainer" parent="." node_paths=PackedStringArray("deck", "monster_name_label", "monster_health_label", "incoming_damage_label", "energy_label")]
|
||||
[node name="TextureRect" type="TextureRect" parent="."]
|
||||
layout_mode = 0
|
||||
offset_right = 1804.0
|
||||
offset_bottom = 1224.0
|
||||
scale = Vector2(1.1, 1.1)
|
||||
texture = ExtResource("13_bdgfp")
|
||||
|
||||
[node name="Own" type="Control" parent="." node_paths=PackedStringArray("deck", "energy_label", "rps_button_container")]
|
||||
layout_mode = 1
|
||||
anchors_preset = 12
|
||||
anchor_top = 1.0
|
||||
anchor_top = 0.5
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_top = -131.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
alignment = 2
|
||||
grow_vertical = 2
|
||||
script = ExtResource("2_w4tnt")
|
||||
deck = NodePath("Hand")
|
||||
monster_name_label = NodePath("Monster/VBoxContainer/NameLabel")
|
||||
monster_health_label = NodePath("Monster/VBoxContainer/HealthLabel")
|
||||
incoming_damage_label = NodePath("Monster/VBoxContainer/IncomingDamageLabel")
|
||||
energy_label = NodePath("HBoxContainer/EnergyLabel")
|
||||
energy_label = NodePath("EnergyLabel")
|
||||
skip_card_prefab = ExtResource("7_skjyk")
|
||||
support_red_card_prefab = ExtResource("9_cabcc")
|
||||
support_green_card_prefab = ExtResource("8_dytl5")
|
||||
monster_card_prefab = ExtResource("7_4ah45")
|
||||
rps_button_container = NodePath("HBoxContainer")
|
||||
rps_grayed_color = Color(0.439216, 0.439216, 0.439216, 1)
|
||||
|
||||
[node name="Monster" type="HBoxContainer" parent="Own"]
|
||||
custom_minimum_size = Vector2(0, 128)
|
||||
layout_mode = 2
|
||||
[node name="MonsterCard" parent="Own" instance=ExtResource("7_4ah45")]
|
||||
custom_minimum_size = Vector2(220, 330)
|
||||
layout_mode = 1
|
||||
anchors_preset = 5
|
||||
anchor_left = 0.5
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 0.0
|
||||
offset_left = -110.0
|
||||
offset_top = 20.0
|
||||
offset_right = 110.0
|
||||
offset_bottom = 350.0
|
||||
grow_vertical = 1
|
||||
pivot_offset = Vector2(110, 0)
|
||||
size_flags_horizontal = 4
|
||||
alignment = 1
|
||||
size_flags_vertical = 4
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="Own/Monster"]
|
||||
layout_mode = 2
|
||||
[node name="Support1GreenCard" parent="Own" instance=ExtResource("8_dytl5")]
|
||||
layout_mode = 1
|
||||
anchors_preset = 5
|
||||
anchor_left = 0.5
|
||||
anchor_right = 0.5
|
||||
offset_left = -310.0
|
||||
offset_top = 75.0
|
||||
offset_right = -90.0
|
||||
offset_bottom = 395.0
|
||||
grow_horizontal = 2
|
||||
pivot_offset = Vector2(110, 0)
|
||||
|
||||
[node name="NameLabel" type="Label" parent="Own/Monster/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
text = "Name:"
|
||||
[node name="Support2GreenCard" parent="Own" instance=ExtResource("8_dytl5")]
|
||||
layout_mode = 1
|
||||
anchors_preset = 5
|
||||
anchor_left = 0.5
|
||||
anchor_right = 0.5
|
||||
offset_left = 90.0
|
||||
offset_top = 75.0
|
||||
offset_right = 310.0
|
||||
offset_bottom = 395.0
|
||||
grow_horizontal = 2
|
||||
pivot_offset = Vector2(110, 0)
|
||||
|
||||
[node name="HealthLabel" type="Label" parent="Own/Monster/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
text = "Health:"
|
||||
[node name="Support2RedCard" parent="Own" instance=ExtResource("9_cabcc")]
|
||||
layout_mode = 1
|
||||
anchors_preset = 5
|
||||
anchor_left = 0.5
|
||||
anchor_right = 0.5
|
||||
offset_left = 90.0
|
||||
offset_top = 75.0
|
||||
offset_right = 310.0
|
||||
offset_bottom = 395.0
|
||||
grow_horizontal = 2
|
||||
pivot_offset = Vector2(110, 0)
|
||||
|
||||
[node name="IncomingDamageLabel" type="Label" parent="Own/Monster/VBoxContainer"]
|
||||
custom_minimum_size = Vector2(128, 0)
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
text = "Incoming Damage:"
|
||||
vertical_alignment = 2
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="Own"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="EnergyLabel" type="Label" parent="Own/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
[node name="EnergyLabel" type="Label" parent="Own"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 2
|
||||
anchor_top = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_top = -90.0
|
||||
offset_right = 1152.0
|
||||
offset_bottom = -67.0
|
||||
grow_vertical = 0
|
||||
text = "Energy:"
|
||||
|
||||
[node name="Hand" type="HBoxContainer" parent="Own"]
|
||||
layout_mode = 2
|
||||
layout_mode = 1
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -446.0
|
||||
offset_top = -370.0
|
||||
offset_right = 446.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
pivot_offset = Vector2(0, 150)
|
||||
alignment = 1
|
||||
|
||||
[node name="Button" type="Button" parent="Own/Hand"]
|
||||
[node name="SkipCard" parent="Own/Hand" instance=ExtResource("7_skjyk")]
|
||||
layout_mode = 2
|
||||
text = "CARD_1"
|
||||
|
||||
[node name="Button2" type="Button" parent="Own/Hand"]
|
||||
[node name="MonsterCard" parent="Own/Hand" instance=ExtResource("7_4ah45")]
|
||||
layout_mode = 2
|
||||
text = "CARD_2"
|
||||
|
||||
[node name="Button3" type="Button" parent="Own/Hand"]
|
||||
[node name="CardBase" parent="Own/Hand" instance=ExtResource("8_dytl5")]
|
||||
layout_mode = 2
|
||||
text = "CARD_3"
|
||||
|
||||
[node name="Opponent" type="VBoxContainer" parent="." node_paths=PackedStringArray("deck", "monster_name_label", "monster_health_label", "incoming_damage_label", "energy_label")]
|
||||
[node name="CardBase2" parent="Own/Hand" instance=ExtResource("9_cabcc")]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="IncomingDamageLabel" type="Label" parent="Own"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 10
|
||||
anchor_right = 1.0
|
||||
offset_bottom = 190.0
|
||||
anchors_preset = 5
|
||||
anchor_left = 0.5
|
||||
anchor_right = 0.5
|
||||
offset_left = 84.0
|
||||
offset_top = 24.0
|
||||
offset_right = 251.0
|
||||
offset_bottom = 47.0
|
||||
grow_horizontal = 2
|
||||
text = "HP +0"
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="Own"]
|
||||
visible = false
|
||||
layout_mode = 0
|
||||
offset_left = 665.0
|
||||
offset_top = 299.0
|
||||
offset_right = 1326.0
|
||||
offset_bottom = 548.0
|
||||
|
||||
[node name="KertasButton" type="TextureButton" parent="Own/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
texture_normal = ExtResource("18_gwpy8")
|
||||
|
||||
[node name="GuntingButton" type="TextureButton" parent="Own/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
texture_normal = ExtResource("19_clnw6")
|
||||
|
||||
[node name="BatuButton" type="TextureButton" parent="Own/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
texture_normal = ExtResource("20_672ya")
|
||||
|
||||
[node name="Opponent" type="Control" parent="." node_paths=PackedStringArray("deck", "energy_label")]
|
||||
layout_mode = 1
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 0.5
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
script = ExtResource("2_w4tnt")
|
||||
player_id = 1
|
||||
deck = NodePath("Hand")
|
||||
monster_name_label = NodePath("Monster/VBoxContainer/NameLabel")
|
||||
monster_health_label = NodePath("Monster/VBoxContainer/HealthLabel")
|
||||
incoming_damage_label = NodePath("Monster/VBoxContainer/IncomingDamageLabel")
|
||||
energy_label = NodePath("EnergyLabel")
|
||||
|
||||
[node name="MonsterCard" parent="Opponent" instance=ExtResource("7_4ah45")]
|
||||
custom_minimum_size = Vector2(220, 330)
|
||||
layout_mode = 1
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
offset_left = -110.0
|
||||
offset_top = -350.0
|
||||
offset_right = 110.0
|
||||
offset_bottom = -20.0
|
||||
grow_vertical = 0
|
||||
pivot_offset = Vector2(110, 330)
|
||||
size_flags_horizontal = 4
|
||||
size_flags_vertical = 4
|
||||
|
||||
[node name="Support1GreenCard" parent="Opponent" instance=ExtResource("8_dytl5")]
|
||||
layout_mode = 1
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -310.0
|
||||
offset_top = -465.0
|
||||
offset_right = -90.0
|
||||
offset_bottom = -145.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
pivot_offset = Vector2(110, 320)
|
||||
|
||||
[node name="Support2GreenCard" parent="Opponent" instance=ExtResource("8_dytl5")]
|
||||
layout_mode = 1
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
offset_left = 90.0
|
||||
offset_top = -465.0
|
||||
offset_right = 310.0
|
||||
offset_bottom = -145.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
pivot_offset = Vector2(110, 320)
|
||||
|
||||
[node name="Support2RedCard" parent="Opponent" instance=ExtResource("9_cabcc")]
|
||||
layout_mode = 1
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
offset_left = 90.0
|
||||
offset_top = -465.0
|
||||
offset_right = 310.0
|
||||
offset_bottom = -145.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
pivot_offset = Vector2(110, 320)
|
||||
|
||||
[node name="Hand" type="HBoxContainer" parent="Opponent"]
|
||||
layout_mode = 2
|
||||
layout_mode = 1
|
||||
anchors_preset = 10
|
||||
anchor_right = 1.0
|
||||
offset_bottom = 31.0
|
||||
grow_horizontal = 2
|
||||
alignment = 1
|
||||
|
||||
[node name="Button" type="Button" parent="Opponent/Hand"]
|
||||
layout_mode = 2
|
||||
text = "CARD_1"
|
||||
|
||||
[node name="Button2" type="Button" parent="Opponent/Hand"]
|
||||
layout_mode = 2
|
||||
text = "CARD_2"
|
||||
|
||||
[node name="Button3" type="Button" parent="Opponent/Hand"]
|
||||
layout_mode = 2
|
||||
text = "CARD_3"
|
||||
|
||||
[node name="EnergyLabel" type="Label" parent="Opponent"]
|
||||
layout_mode = 2
|
||||
offset_top = 35.0
|
||||
offset_right = 1152.0
|
||||
offset_bottom = 58.0
|
||||
text = "Energy:"
|
||||
|
||||
[node name="Monster" type="HBoxContainer" parent="Opponent"]
|
||||
custom_minimum_size = Vector2(0, 128)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 4
|
||||
alignment = 1
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="Opponent/Monster"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="NameLabel" type="Label" parent="Opponent/Monster/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
text = "Name: "
|
||||
|
||||
[node name="HealthLabel" type="Label" parent="Opponent/Monster/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
text = "Health:"
|
||||
|
||||
[node name="IncomingDamageLabel" type="Label" parent="Opponent/Monster/VBoxContainer"]
|
||||
custom_minimum_size = Vector2(128, 0)
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
text = "Incoming Damage:"
|
||||
vertical_alignment = 2
|
||||
[node name="IncomingDamageLabel" type="Label" parent="Opponent"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
offset_left = 84.0
|
||||
offset_top = -52.0
|
||||
offset_right = 251.0
|
||||
offset_bottom = -29.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
text = "HP +0"
|
||||
|
||||
[node name="StartGameButton" type="Button" parent="."]
|
||||
layout_mode = 1
|
||||
|
|
@ -162,8 +300,75 @@ text = "Start Game"
|
|||
|
||||
[node name="MatchManager" parent="." instance=ExtResource("3_3yhrl")]
|
||||
|
||||
[node name="PhaseInfo" type="VBoxContainer" parent="."]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 1
|
||||
anchors_preset = 8
|
||||
anchor_left = 0.5
|
||||
anchor_top = 0.5
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = 347.0
|
||||
offset_top = -102.0
|
||||
offset_right = 864.0
|
||||
offset_bottom = 106.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="PhaseHeader" type="VBoxContainer" parent="PhaseInfo"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = 24
|
||||
alignment = 2
|
||||
|
||||
[node name="Summon" type="Label" parent="PhaseInfo/PhaseHeader"]
|
||||
layout_mode = 2
|
||||
theme = ExtResource("19_3iovu")
|
||||
theme_override_font_sizes/font_size = 24
|
||||
text = "Summon"
|
||||
|
||||
[node name="Support 1" type="Label" parent="PhaseInfo/PhaseHeader"]
|
||||
layout_mode = 2
|
||||
theme = ExtResource("19_3iovu")
|
||||
theme_override_font_sizes/font_size = 24
|
||||
text = "Support (1)"
|
||||
|
||||
[node name="RPS" type="Label" parent="PhaseInfo/PhaseHeader"]
|
||||
layout_mode = 2
|
||||
theme = ExtResource("19_3iovu")
|
||||
theme_override_font_sizes/font_size = 24
|
||||
text = "Rock, Paper, Scissors"
|
||||
|
||||
[node name="Support 2" type="Label" parent="PhaseInfo/PhaseHeader"]
|
||||
layout_mode = 2
|
||||
theme = ExtResource("19_3iovu")
|
||||
theme_override_font_sizes/font_size = 24
|
||||
text = "Support (2)"
|
||||
|
||||
[node name="Win-Lose-Tie" type="Label" parent="."]
|
||||
visible = false
|
||||
layout_mode = 1
|
||||
anchors_preset = 8
|
||||
anchor_left = 0.5
|
||||
anchor_top = 0.5
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = -365.0
|
||||
offset_top = -215.0
|
||||
offset_right = 365.0
|
||||
offset_bottom = 215.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme = ExtResource("19_3iovu")
|
||||
theme_override_font_sizes/font_size = 52
|
||||
text = "YOU WON!"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[connection signal="play_card" from="Own" to="." method="_on_own_play_card"]
|
||||
[connection signal="rps_move" from="Own" to="." method="_on_own_rps_move"]
|
||||
[connection signal="button_down" from="Own/HBoxContainer/KertasButton" to="Own" method="_on_kertas_button_button_down"]
|
||||
[connection signal="button_down" from="Own/HBoxContainer/GuntingButton" to="Own" method="_on_gunting_button_button_down"]
|
||||
[connection signal="button_down" from="Own/HBoxContainer/BatuButton" to="Own" method="_on_batu_button_button_down"]
|
||||
[connection signal="play_card" from="Opponent" to="." method="_on_opponent_play_card"]
|
||||
[connection signal="rps_move" from="Opponent" to="." method="_on_opponent_rps_move"]
|
||||
[connection signal="button_up" from="StartGameButton" to="." method="_on_start_game_button_button_up"]
|
||||
|
|
|
|||
|
|
@ -130,3 +130,211 @@ Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorActi
|
|||
ssh_remote_deploy/cleanup_script="Stop-ScheduledTask -TaskName godot_remote_debug -ErrorAction:SilentlyContinue
|
||||
Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorAction:SilentlyContinue
|
||||
Remove-Item -Recurse -Force '{temp_dir}'"
|
||||
|
||||
[preset.2]
|
||||
|
||||
name="Android"
|
||||
platform="Android"
|
||||
runnable=true
|
||||
advanced_options=false
|
||||
dedicated_server=false
|
||||
custom_features=""
|
||||
export_filter="all_resources"
|
||||
include_filter=""
|
||||
exclude_filter=""
|
||||
export_path=""
|
||||
encryption_include_filters=""
|
||||
encryption_exclude_filters=""
|
||||
encrypt_pck=false
|
||||
encrypt_directory=false
|
||||
script_export_mode=2
|
||||
|
||||
[preset.2.options]
|
||||
|
||||
custom_template/debug=""
|
||||
custom_template/release=""
|
||||
gradle_build/use_gradle_build=false
|
||||
gradle_build/gradle_build_directory=""
|
||||
gradle_build/android_source_template=""
|
||||
gradle_build/compress_native_libraries=false
|
||||
gradle_build/export_format=0
|
||||
gradle_build/min_sdk=""
|
||||
gradle_build/target_sdk=""
|
||||
architectures/armeabi-v7a=false
|
||||
architectures/arm64-v8a=true
|
||||
architectures/x86=false
|
||||
architectures/x86_64=false
|
||||
version/code=1
|
||||
version/name=""
|
||||
package/unique_name="com.example.$genname"
|
||||
package/name=""
|
||||
package/signed=true
|
||||
package/app_category=2
|
||||
package/retain_data_on_uninstall=false
|
||||
package/exclude_from_recents=false
|
||||
package/show_in_android_tv=false
|
||||
package/show_in_app_library=true
|
||||
package/show_as_launcher_app=false
|
||||
launcher_icons/main_192x192=""
|
||||
launcher_icons/adaptive_foreground_432x432=""
|
||||
launcher_icons/adaptive_background_432x432=""
|
||||
graphics/opengl_debug=false
|
||||
xr_features/xr_mode=0
|
||||
screen/immersive_mode=true
|
||||
screen/support_small=true
|
||||
screen/support_normal=true
|
||||
screen/support_large=true
|
||||
screen/support_xlarge=true
|
||||
user_data_backup/allow=false
|
||||
command_line/extra_args=""
|
||||
apk_expansion/enable=false
|
||||
apk_expansion/SALT=""
|
||||
apk_expansion/public_key=""
|
||||
permissions/custom_permissions=PackedStringArray()
|
||||
permissions/access_checkin_properties=false
|
||||
permissions/access_coarse_location=false
|
||||
permissions/access_fine_location=false
|
||||
permissions/access_location_extra_commands=false
|
||||
permissions/access_mock_location=false
|
||||
permissions/access_network_state=false
|
||||
permissions/access_surface_flinger=false
|
||||
permissions/access_wifi_state=false
|
||||
permissions/account_manager=false
|
||||
permissions/add_voicemail=false
|
||||
permissions/authenticate_accounts=false
|
||||
permissions/battery_stats=false
|
||||
permissions/bind_accessibility_service=false
|
||||
permissions/bind_appwidget=false
|
||||
permissions/bind_device_admin=false
|
||||
permissions/bind_input_method=false
|
||||
permissions/bind_nfc_service=false
|
||||
permissions/bind_notification_listener_service=false
|
||||
permissions/bind_print_service=false
|
||||
permissions/bind_remoteviews=false
|
||||
permissions/bind_text_service=false
|
||||
permissions/bind_vpn_service=false
|
||||
permissions/bind_wallpaper=false
|
||||
permissions/bluetooth=false
|
||||
permissions/bluetooth_admin=false
|
||||
permissions/bluetooth_privileged=false
|
||||
permissions/brick=false
|
||||
permissions/broadcast_package_removed=false
|
||||
permissions/broadcast_sms=false
|
||||
permissions/broadcast_sticky=false
|
||||
permissions/broadcast_wap_push=false
|
||||
permissions/call_phone=false
|
||||
permissions/call_privileged=false
|
||||
permissions/camera=false
|
||||
permissions/capture_audio_output=false
|
||||
permissions/capture_secure_video_output=false
|
||||
permissions/capture_video_output=false
|
||||
permissions/change_component_enabled_state=false
|
||||
permissions/change_configuration=false
|
||||
permissions/change_network_state=false
|
||||
permissions/change_wifi_multicast_state=false
|
||||
permissions/change_wifi_state=false
|
||||
permissions/clear_app_cache=false
|
||||
permissions/clear_app_user_data=false
|
||||
permissions/control_location_updates=false
|
||||
permissions/delete_cache_files=false
|
||||
permissions/delete_packages=false
|
||||
permissions/device_power=false
|
||||
permissions/diagnostic=false
|
||||
permissions/disable_keyguard=false
|
||||
permissions/dump=false
|
||||
permissions/expand_status_bar=false
|
||||
permissions/factory_test=false
|
||||
permissions/flashlight=false
|
||||
permissions/force_back=false
|
||||
permissions/get_accounts=false
|
||||
permissions/get_package_size=false
|
||||
permissions/get_tasks=false
|
||||
permissions/get_top_activity_info=false
|
||||
permissions/global_search=false
|
||||
permissions/hardware_test=false
|
||||
permissions/inject_events=false
|
||||
permissions/install_location_provider=false
|
||||
permissions/install_packages=false
|
||||
permissions/install_shortcut=false
|
||||
permissions/internal_system_window=false
|
||||
permissions/internet=false
|
||||
permissions/kill_background_processes=false
|
||||
permissions/location_hardware=false
|
||||
permissions/manage_accounts=false
|
||||
permissions/manage_app_tokens=false
|
||||
permissions/manage_documents=false
|
||||
permissions/manage_external_storage=false
|
||||
permissions/master_clear=false
|
||||
permissions/media_content_control=false
|
||||
permissions/modify_audio_settings=false
|
||||
permissions/modify_phone_state=false
|
||||
permissions/mount_format_filesystems=false
|
||||
permissions/mount_unmount_filesystems=false
|
||||
permissions/nfc=false
|
||||
permissions/persistent_activity=false
|
||||
permissions/post_notifications=false
|
||||
permissions/process_outgoing_calls=false
|
||||
permissions/read_calendar=false
|
||||
permissions/read_call_log=false
|
||||
permissions/read_contacts=false
|
||||
permissions/read_external_storage=false
|
||||
permissions/read_frame_buffer=false
|
||||
permissions/read_history_bookmarks=false
|
||||
permissions/read_input_state=false
|
||||
permissions/read_logs=false
|
||||
permissions/read_phone_state=false
|
||||
permissions/read_profile=false
|
||||
permissions/read_sms=false
|
||||
permissions/read_social_stream=false
|
||||
permissions/read_sync_settings=false
|
||||
permissions/read_sync_stats=false
|
||||
permissions/read_user_dictionary=false
|
||||
permissions/reboot=false
|
||||
permissions/receive_boot_completed=false
|
||||
permissions/receive_mms=false
|
||||
permissions/receive_sms=false
|
||||
permissions/receive_wap_push=false
|
||||
permissions/record_audio=false
|
||||
permissions/reorder_tasks=false
|
||||
permissions/restart_packages=false
|
||||
permissions/send_respond_via_message=false
|
||||
permissions/send_sms=false
|
||||
permissions/set_activity_watcher=false
|
||||
permissions/set_alarm=false
|
||||
permissions/set_always_finish=false
|
||||
permissions/set_animation_scale=false
|
||||
permissions/set_debug_app=false
|
||||
permissions/set_orientation=false
|
||||
permissions/set_pointer_speed=false
|
||||
permissions/set_preferred_applications=false
|
||||
permissions/set_process_limit=false
|
||||
permissions/set_time=false
|
||||
permissions/set_time_zone=false
|
||||
permissions/set_wallpaper=false
|
||||
permissions/set_wallpaper_hints=false
|
||||
permissions/signal_persistent_processes=false
|
||||
permissions/status_bar=false
|
||||
permissions/subscribed_feeds_read=false
|
||||
permissions/subscribed_feeds_write=false
|
||||
permissions/system_alert_window=false
|
||||
permissions/transmit_ir=false
|
||||
permissions/uninstall_shortcut=false
|
||||
permissions/update_device_stats=false
|
||||
permissions/use_credentials=false
|
||||
permissions/use_sip=false
|
||||
permissions/vibrate=false
|
||||
permissions/wake_lock=false
|
||||
permissions/write_apn_settings=false
|
||||
permissions/write_calendar=false
|
||||
permissions/write_call_log=false
|
||||
permissions/write_contacts=false
|
||||
permissions/write_external_storage=false
|
||||
permissions/write_gservices=false
|
||||
permissions/write_history_bookmarks=false
|
||||
permissions/write_profile=false
|
||||
permissions/write_secure_settings=false
|
||||
permissions/write_settings=false
|
||||
permissions/write_sms=false
|
||||
permissions/write_social_stream=false
|
||||
permissions/write_sync_settings=false
|
||||
permissions/write_user_dictionary=false
|
||||
|
|
|
|||
BIN
icon.svg
(Stored with Git LFS)
BIN
icon.svg
(Stored with Git LFS)
Binary file not shown.
|
Before Width: | Height: | Size: 994 B After Width: | Height: | Size: 128 B |
224
main.gd
224
main.gd
|
|
@ -1,76 +1,204 @@
|
|||
extends Node
|
||||
class_name MainNode
|
||||
|
||||
const PORT = 25565
|
||||
const PORT_RANGE := 10
|
||||
const MAX_CONNECTIONS = 20
|
||||
|
||||
var counter = 0
|
||||
|
||||
@onready var before_connect_container = get_node("BeforeConnect") as Container
|
||||
@onready var host_text_edit = get_node("%HostTextEdit") as TextEdit
|
||||
@onready var connect_button = get_node("%ConnectButton") as Button
|
||||
@onready var host_button = get_node("%HostButton") as Button
|
||||
@onready var server_discovery = get_node("%ServerDiscovery") as ServerDiscovery
|
||||
|
||||
@onready var after_connect_container = get_node("%AfterConnect") as Container
|
||||
@onready var counter_label = get_node("%CounterLabel") as Label
|
||||
@onready var decrement_button = get_node("%DecrementButton") as Button
|
||||
@onready var increment_button = get_node("%IncrementButton") as Button
|
||||
@onready var after_connect_container = get_node("%AfterConnect") as Node
|
||||
@onready var disconnect_button = get_node("%DisconnectButton") as Button
|
||||
|
||||
@onready var demo_game = get_node("AfterConnect/DemoGame") as DemoGame
|
||||
@onready var start_game_button = (get_node("AfterConnect/DemoGame") as DemoGame).start_game_btn
|
||||
|
||||
|
||||
var active_port: int
|
||||
var server_buttons: Dictionary = Dictionary()
|
||||
var base_seed: int
|
||||
|
||||
func _clean_room():
|
||||
# this is if someone left the room and we will just clean the game room again
|
||||
# should only called on host
|
||||
# need to clean for server
|
||||
pass
|
||||
|
||||
func _on_start_game_clicked():
|
||||
if !multiplayer.multiplayer_peer:
|
||||
return
|
||||
if !multiplayer.is_server():
|
||||
return
|
||||
if (multiplayer.get_peers().size() == 0):
|
||||
return
|
||||
# do start game here, should only run on host
|
||||
_start_game.rpc()
|
||||
pass
|
||||
|
||||
func _ready() -> void:
|
||||
if OS.has_feature("dedicated_server"):
|
||||
print("Starting dedicated server")
|
||||
var peer = ENetMultiplayerPeer.new()
|
||||
var err = peer.create_server(PORT, MAX_CONNECTIONS)
|
||||
host_button.button_up.connect(_on_host_pressed)
|
||||
host_button.text = "Host (%s)" % server_discovery.id
|
||||
|
||||
start_game_button.button_up.connect(_on_start_game_clicked)
|
||||
|
||||
print("Attach client")
|
||||
multiplayer.peer_connected.connect(_on_player_connected)
|
||||
multiplayer.peer_disconnected.connect(_on_player_disconnected)
|
||||
multiplayer.connected_to_server.connect(_on_connected_ok)
|
||||
#multiplayer.connection_failed.connect(_on_connected_fail)
|
||||
multiplayer.server_disconnected.connect(_on_server_disconnected)
|
||||
|
||||
disconnect_button.button_up.connect(_on_disconnect_clicked)
|
||||
connect_button.get_parent().remove_child(connect_button)
|
||||
|
||||
server_discovery.server_added.connect(_on_server_added)
|
||||
server_discovery.server_removed.connect(_on_server_removed)
|
||||
|
||||
demo_game.own_played_card.connect(func (card): _on_own_played_card.rpc(card.id if card else ""))
|
||||
demo_game.own_played_rts.connect(func (move): _on_own_played_rts.rpc(move))
|
||||
|
||||
@rpc("any_peer", "call_remote", "reliable")
|
||||
func _on_own_played_card(card_id: String):
|
||||
demo_game.rpc_opponent_play_card(card_id)
|
||||
|
||||
@rpc("any_peer", "call_remote", "reliable")
|
||||
func _on_own_played_rts(move: String):
|
||||
demo_game.rpc_opponent_rps_move(move)
|
||||
|
||||
@rpc("authority", "call_local", "reliable")
|
||||
func _sync_seed(seed: int):
|
||||
seed(seed)
|
||||
|
||||
@rpc("authority", "call_local", "reliable")
|
||||
func _start_game():
|
||||
if multiplayer.is_server():
|
||||
demo_game.init(MatchManager.PLAYER_1_ID)
|
||||
else:
|
||||
demo_game.init(MatchManager.PLAYER_2_ID)
|
||||
|
||||
demo_game.rpc_start_game()
|
||||
|
||||
func _on_disconnect_clicked():
|
||||
if (multiplayer.is_server()):
|
||||
server_discovery.disable_server()
|
||||
for peer_id in multiplayer.get_peers():
|
||||
multiplayer.disconnect_peer(peer_id)
|
||||
|
||||
multiplayer.multiplayer_peer = null
|
||||
|
||||
$BeforeConnect.visible = true
|
||||
$AfterConnect.visible = false
|
||||
|
||||
func _on_server_added(id, ip, port):
|
||||
print("%s | Server added %s %s" % [server_discovery.id, id, ip])
|
||||
|
||||
var button = connect_button.duplicate()
|
||||
before_connect_container.add_child(button)
|
||||
|
||||
var key = "%s|%s" % [id,ip]
|
||||
server_buttons[key] = button
|
||||
|
||||
button.text = "%s\nConnect\n%s:%d" % [id, ip, port]
|
||||
for conn in button.button_down.get_connections():
|
||||
button.button_down.disconnect(conn)
|
||||
|
||||
var _on_button_downed = func():
|
||||
_do_connect(ip, port)
|
||||
button.button_down.connect(_on_button_downed)
|
||||
|
||||
func _on_server_removed(id, ip):
|
||||
print("%s | Server removed %s %s" % [server_discovery.id, id, ip])
|
||||
|
||||
var key = "%s|%s" % [id,ip]
|
||||
var button = server_buttons[key]
|
||||
button.queue_free()
|
||||
server_buttons.erase(key)
|
||||
|
||||
func _do_connect(ip: String, port: int):
|
||||
var peer = ENetMultiplayerPeer.new()
|
||||
print("%s Connecting to %s:%d" % [server_discovery.id, ip, port])
|
||||
var err = peer.create_client(ip, port)
|
||||
print(err)
|
||||
multiplayer.multiplayer_peer = peer
|
||||
|
||||
func _on_host_pressed():
|
||||
print("%s | Starting dedicated server" % server_discovery.id)
|
||||
var peer = ENetMultiplayerPeer.new()
|
||||
for offset in range(PORT_RANGE):
|
||||
if not is_port_available(PORT + offset):
|
||||
continue
|
||||
|
||||
active_port = PORT + offset
|
||||
var err = peer.create_server(active_port, MAX_CONNECTIONS)
|
||||
if err:
|
||||
print(err)
|
||||
multiplayer.multiplayer_peer = peer
|
||||
multiplayer.peer_connected.connect(_on_player_connected)
|
||||
else:
|
||||
print("Game starting")
|
||||
#multiplayer.peer_disconnected.connect(_on_player_disconnected)
|
||||
multiplayer.connected_to_server.connect(_on_connected_ok)
|
||||
#multiplayer.connection_failed.connect(_on_connected_fail)
|
||||
#multiplayer.server_disconnected.connect(_on_server_disconnected)
|
||||
break
|
||||
|
||||
increment_button.button_up.connect(func(): _increment.rpc())
|
||||
decrement_button.button_up.connect(func(): _decrement.rpc())
|
||||
connect_button.button_up.connect(_on_connect_pressed)
|
||||
|
||||
@rpc("any_peer", "call_local")
|
||||
func _increment():
|
||||
counter += 1
|
||||
counter_label.text = str(counter)
|
||||
|
||||
@rpc("any_peer", "call_local")
|
||||
func _decrement():
|
||||
counter -= 1
|
||||
counter_label.text = str(counter)
|
||||
|
||||
@rpc("authority", "call_remote")
|
||||
func _set_counter(value: int):
|
||||
counter = value
|
||||
counter_label.text = str(counter)
|
||||
|
||||
func _on_connect_pressed():
|
||||
var peer = ENetMultiplayerPeer.new()
|
||||
var parsed: PackedStringArray = host_text_edit.text.split(":")
|
||||
print("Connecting to ", parsed[0])
|
||||
peer.create_client(parsed[0] if not parsed[0].is_empty() else "localhost", int(parsed[1]) if parsed.size() > 1 else PORT)
|
||||
multiplayer.multiplayer_peer = peer
|
||||
|
||||
_on_connected_ok()
|
||||
|
||||
start_game_button.disabled = true
|
||||
start_game_button.text = "Start Game (Not enough player)"
|
||||
|
||||
base_seed = randi()
|
||||
_sync_seed.rpc(base_seed)
|
||||
|
||||
server_discovery.enable_server(active_port)
|
||||
|
||||
func is_port_available(port: int) -> bool:
|
||||
var udp_peer = PacketPeerUDP.new()
|
||||
|
||||
var error = udp_peer.bind(port)
|
||||
|
||||
if error == OK:
|
||||
udp_peer.close()
|
||||
return true
|
||||
else:
|
||||
return false
|
||||
|
||||
func _on_player_connected(id: int):
|
||||
if multiplayer.get_unique_id() == 1:
|
||||
_set_counter.rpc_id(id, counter)
|
||||
|
||||
func _on_player_disconnected():
|
||||
pass
|
||||
_sync_seed.rpc(base_seed)
|
||||
|
||||
if (multiplayer.get_peers().size() > 0):
|
||||
start_game_button.disabled = false
|
||||
start_game_button.text = "Start Game"
|
||||
server_discovery.disable_server()
|
||||
|
||||
func _on_player_disconnected(id):
|
||||
print("%s | _on_player_disconnected %s" % [server_discovery.id, id])
|
||||
|
||||
if multiplayer.get_unique_id() == id:
|
||||
$BeforeConnect.visible = true
|
||||
$AfterConnect.visible = false
|
||||
|
||||
if (id != 1 and multiplayer.get_unique_id() == 1):
|
||||
_clean_room()
|
||||
start_game_button.disabled = true
|
||||
start_game_button.text = "Start Game (Not enough player)"
|
||||
server_discovery.enable_server(active_port)
|
||||
|
||||
func _on_connected_ok():
|
||||
$AfterConnect.visible = true
|
||||
$BeforeConnect.visible = false
|
||||
counter_label.text = str(counter)
|
||||
|
||||
if (multiplayer.is_server()):
|
||||
disconnect_button.text = "Disconnect (Host)"
|
||||
start_game_button.visible = true
|
||||
else:
|
||||
disconnect_button.text = "Disconnect"
|
||||
start_game_button.visible = false
|
||||
|
||||
func _on_connected_fail():
|
||||
pass
|
||||
|
||||
func _on_server_disconnected():
|
||||
pass
|
||||
print("%s | _on_server_disconnected" % [server_discovery.id])
|
||||
$AfterConnect.visible = false
|
||||
$BeforeConnect.visible = true
|
||||
|
||||
|
|
|
|||
64
main.tscn
64
main.tscn
|
|
@ -1,6 +1,8 @@
|
|||
[gd_scene load_steps=2 format=3 uid="uid://c7gn46af6whf8"]
|
||||
[gd_scene load_steps=4 format=3 uid="uid://c7gn46af6whf8"]
|
||||
|
||||
[ext_resource type="Script" path="res://main.gd" id="1_e0ud3"]
|
||||
[ext_resource type="Script" path="res://server_discovery.gd" id="2_hed18"]
|
||||
[ext_resource type="PackedScene" uid="uid://bgc0u117jqyr1" path="res://demo_game.tscn" id="3_2ln6b"]
|
||||
|
||||
[node name="Main" type="Control"]
|
||||
layout_mode = 3
|
||||
|
|
@ -27,11 +29,11 @@ grow_horizontal = 2
|
|||
grow_vertical = 2
|
||||
alignment = 1
|
||||
|
||||
[node name="HostTextEdit" type="TextEdit" parent="BeforeConnect"]
|
||||
[node name="HostButton" type="Button" parent="BeforeConnect"]
|
||||
unique_name_in_owner = true
|
||||
custom_minimum_size = Vector2(0, 64)
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
placeholder_text = "192.168.*.*"
|
||||
text = "Host"
|
||||
|
||||
[node name="ConnectButton" type="Button" parent="BeforeConnect"]
|
||||
unique_name_in_owner = true
|
||||
|
|
@ -39,42 +41,34 @@ custom_minimum_size = Vector2(0, 64)
|
|||
layout_mode = 2
|
||||
text = "Connect"
|
||||
|
||||
[node name="AfterConnect" type="VBoxContainer" parent="."]
|
||||
[node name="DiscoveryTimer" type="Timer" parent="BeforeConnect"]
|
||||
unique_name_in_owner = true
|
||||
|
||||
[node name="ServerDiscovery" type="Node" parent="BeforeConnect"]
|
||||
unique_name_in_owner = true
|
||||
script = ExtResource("2_hed18")
|
||||
|
||||
[node name="AfterConnect" type="Control" parent="."]
|
||||
unique_name_in_owner = true
|
||||
visible = false
|
||||
layout_mode = 1
|
||||
anchors_preset = 8
|
||||
anchor_left = 0.5
|
||||
anchor_top = 0.5
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = -187.5
|
||||
offset_top = -88.5
|
||||
offset_right = 187.5
|
||||
offset_bottom = 88.5
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="CounterLabel" type="Label" parent="AfterConnect"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
theme_override_font_sizes/font_size = 64
|
||||
text = "1"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
[node name="DemoGame" parent="AfterConnect" instance=ExtResource("3_2ln6b")]
|
||||
layout_mode = 1
|
||||
|
||||
[node name="Actions" type="HBoxContainer" parent="AfterConnect"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="DecrementButton" type="Button" parent="AfterConnect/Actions"]
|
||||
[node name="DisconnectButton" type="Button" parent="AfterConnect"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "-"
|
||||
|
||||
[node name="IncrementButton" type="Button" parent="AfterConnect/Actions"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "+"
|
||||
layout_mode = 1
|
||||
anchors_preset = 1
|
||||
anchor_left = 1.0
|
||||
anchor_right = 1.0
|
||||
offset_left = -186.0
|
||||
offset_bottom = 31.0
|
||||
grow_horizontal = 0
|
||||
size_flags_horizontal = 8
|
||||
text = "Disconnect"
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue