Compare commits
7 Commits
4a21701a35
...
main
Author | SHA1 | Date | |
---|---|---|---|
3c5c8f1a44 | |||
64befd8ec7 | |||
20cde0a778 | |||
c6763afd62 | |||
6f4f465e37 | |||
400415f8a5 | |||
c44a730b59 |
15
3dtree.tscn
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
[gd_scene load_steps=4 format=3 uid="uid://406wnf58lo7h"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://bvyx8hxvka7vu" path="res://tree_test.glb" id="1_pscrb"]
|
||||||
|
[ext_resource type="Material" uid="uid://cqwo7la40rbkn" path="res://foliage/foliage.material" id="2_kkjgf"]
|
||||||
|
|
||||||
|
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_us4dp"]
|
||||||
|
albedo_color = Color(0.326727, 0.157357, 0.00483305, 1)
|
||||||
|
|
||||||
|
[node name="tree_test" instance=ExtResource("1_pscrb")]
|
||||||
|
|
||||||
|
[node name="Cube" parent="." index="0"]
|
||||||
|
surface_material_override/0 = SubResource("StandardMaterial3D_us4dp")
|
||||||
|
|
||||||
|
[node name="Cube_001" parent="." index="1"]
|
||||||
|
surface_material_override/0 = ExtResource("2_kkjgf")
|
BIN
Assets/Fonts/OpenType (.otf)/Kaph-Italic.otf
Normal file
35
Assets/Fonts/OpenType (.otf)/Kaph-Italic.otf.import
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="font_data_dynamic"
|
||||||
|
type="FontFile"
|
||||||
|
uid="uid://batrfsos6x38m"
|
||||||
|
path="res://.godot/imported/Kaph-Italic.otf-b932c8d71aaa63b737342951ee078e8c.fontdata"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Fonts/OpenType (.otf)/Kaph-Italic.otf"
|
||||||
|
dest_files=["res://.godot/imported/Kaph-Italic.otf-b932c8d71aaa63b737342951ee078e8c.fontdata"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
Rendering=null
|
||||||
|
antialiasing=1
|
||||||
|
generate_mipmaps=false
|
||||||
|
disable_embedded_bitmaps=true
|
||||||
|
multichannel_signed_distance_field=false
|
||||||
|
msdf_pixel_range=8
|
||||||
|
msdf_size=48
|
||||||
|
allow_system_fallback=true
|
||||||
|
force_autohinter=false
|
||||||
|
hinting=1
|
||||||
|
subpixel_positioning=4
|
||||||
|
keep_rounding_remainders=true
|
||||||
|
oversampling=0.0
|
||||||
|
Fallbacks=null
|
||||||
|
fallbacks=[]
|
||||||
|
Compress=null
|
||||||
|
compress=true
|
||||||
|
preload=[]
|
||||||
|
language_support={}
|
||||||
|
script_support={}
|
||||||
|
opentype_features={}
|
BIN
Assets/Fonts/OpenType (.otf)/Kaph-Regular.otf
Normal file
35
Assets/Fonts/OpenType (.otf)/Kaph-Regular.otf.import
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="font_data_dynamic"
|
||||||
|
type="FontFile"
|
||||||
|
uid="uid://c3hwdjscf2hnk"
|
||||||
|
path="res://.godot/imported/Kaph-Regular.otf-c770fc91b9eb1ce8db6944bab31619b9.fontdata"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Fonts/OpenType (.otf)/Kaph-Regular.otf"
|
||||||
|
dest_files=["res://.godot/imported/Kaph-Regular.otf-c770fc91b9eb1ce8db6944bab31619b9.fontdata"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
Rendering=null
|
||||||
|
antialiasing=1
|
||||||
|
generate_mipmaps=false
|
||||||
|
disable_embedded_bitmaps=true
|
||||||
|
multichannel_signed_distance_field=false
|
||||||
|
msdf_pixel_range=8
|
||||||
|
msdf_size=48
|
||||||
|
allow_system_fallback=true
|
||||||
|
force_autohinter=false
|
||||||
|
hinting=1
|
||||||
|
subpixel_positioning=4
|
||||||
|
keep_rounding_remainders=true
|
||||||
|
oversampling=0.0
|
||||||
|
Fallbacks=null
|
||||||
|
fallbacks=[]
|
||||||
|
Compress=null
|
||||||
|
compress=true
|
||||||
|
preload=[]
|
||||||
|
language_support={}
|
||||||
|
script_support={}
|
||||||
|
opentype_features={}
|
BIN
Assets/Fonts/TrueType (.ttf)/Kaph-Italic.ttf
Normal file
35
Assets/Fonts/TrueType (.ttf)/Kaph-Italic.ttf.import
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="font_data_dynamic"
|
||||||
|
type="FontFile"
|
||||||
|
uid="uid://cx86thi8mw004"
|
||||||
|
path="res://.godot/imported/Kaph-Italic.ttf-31eaeaf877ae291841853cd19c804cff.fontdata"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Fonts/TrueType (.ttf)/Kaph-Italic.ttf"
|
||||||
|
dest_files=["res://.godot/imported/Kaph-Italic.ttf-31eaeaf877ae291841853cd19c804cff.fontdata"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
Rendering=null
|
||||||
|
antialiasing=1
|
||||||
|
generate_mipmaps=false
|
||||||
|
disable_embedded_bitmaps=true
|
||||||
|
multichannel_signed_distance_field=false
|
||||||
|
msdf_pixel_range=8
|
||||||
|
msdf_size=48
|
||||||
|
allow_system_fallback=true
|
||||||
|
force_autohinter=false
|
||||||
|
hinting=1
|
||||||
|
subpixel_positioning=4
|
||||||
|
keep_rounding_remainders=true
|
||||||
|
oversampling=0.0
|
||||||
|
Fallbacks=null
|
||||||
|
fallbacks=[]
|
||||||
|
Compress=null
|
||||||
|
compress=true
|
||||||
|
preload=[]
|
||||||
|
language_support={}
|
||||||
|
script_support={}
|
||||||
|
opentype_features={}
|
BIN
Assets/Fonts/TrueType (.ttf)/Kaph-Regular.ttf
Normal file
35
Assets/Fonts/TrueType (.ttf)/Kaph-Regular.ttf.import
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="font_data_dynamic"
|
||||||
|
type="FontFile"
|
||||||
|
uid="uid://nplrjxvauux5"
|
||||||
|
path="res://.godot/imported/Kaph-Regular.ttf-3e4a3d814747db553ebe53d1dc381d87.fontdata"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Fonts/TrueType (.ttf)/Kaph-Regular.ttf"
|
||||||
|
dest_files=["res://.godot/imported/Kaph-Regular.ttf-3e4a3d814747db553ebe53d1dc381d87.fontdata"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
Rendering=null
|
||||||
|
antialiasing=1
|
||||||
|
generate_mipmaps=false
|
||||||
|
disable_embedded_bitmaps=true
|
||||||
|
multichannel_signed_distance_field=false
|
||||||
|
msdf_pixel_range=8
|
||||||
|
msdf_size=48
|
||||||
|
allow_system_fallback=true
|
||||||
|
force_autohinter=false
|
||||||
|
hinting=1
|
||||||
|
subpixel_positioning=4
|
||||||
|
keep_rounding_remainders=true
|
||||||
|
oversampling=0.0
|
||||||
|
Fallbacks=null
|
||||||
|
fallbacks=[]
|
||||||
|
Compress=null
|
||||||
|
compress=true
|
||||||
|
preload=[]
|
||||||
|
language_support={}
|
||||||
|
script_support={}
|
||||||
|
opentype_features={}
|
BIN
Assets/Fonts/Web Open Font Format (.woff)/Kaph-Italic.woff
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="font_data_dynamic"
|
||||||
|
type="FontFile"
|
||||||
|
uid="uid://ybhk4hblpvu2"
|
||||||
|
path="res://.godot/imported/Kaph-Italic.woff-408cfefde00325f89e26cdd96bcff524.fontdata"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Fonts/Web Open Font Format (.woff)/Kaph-Italic.woff"
|
||||||
|
dest_files=["res://.godot/imported/Kaph-Italic.woff-408cfefde00325f89e26cdd96bcff524.fontdata"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
Rendering=null
|
||||||
|
antialiasing=1
|
||||||
|
generate_mipmaps=false
|
||||||
|
disable_embedded_bitmaps=true
|
||||||
|
multichannel_signed_distance_field=false
|
||||||
|
msdf_pixel_range=8
|
||||||
|
msdf_size=48
|
||||||
|
allow_system_fallback=true
|
||||||
|
force_autohinter=false
|
||||||
|
hinting=1
|
||||||
|
subpixel_positioning=4
|
||||||
|
keep_rounding_remainders=true
|
||||||
|
oversampling=0.0
|
||||||
|
Fallbacks=null
|
||||||
|
fallbacks=[]
|
||||||
|
Compress=null
|
||||||
|
compress=true
|
||||||
|
preload=[]
|
||||||
|
language_support={}
|
||||||
|
script_support={}
|
||||||
|
opentype_features={}
|
BIN
Assets/Fonts/Web Open Font Format (.woff)/Kaph-Italic.woff2
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="font_data_dynamic"
|
||||||
|
type="FontFile"
|
||||||
|
uid="uid://e2e3jmoyo8p6"
|
||||||
|
path="res://.godot/imported/Kaph-Italic.woff2-00d7afb1c8d47f57b914cef10b8f58d1.fontdata"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Fonts/Web Open Font Format (.woff)/Kaph-Italic.woff2"
|
||||||
|
dest_files=["res://.godot/imported/Kaph-Italic.woff2-00d7afb1c8d47f57b914cef10b8f58d1.fontdata"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
Rendering=null
|
||||||
|
antialiasing=1
|
||||||
|
generate_mipmaps=false
|
||||||
|
disable_embedded_bitmaps=true
|
||||||
|
multichannel_signed_distance_field=false
|
||||||
|
msdf_pixel_range=8
|
||||||
|
msdf_size=48
|
||||||
|
allow_system_fallback=true
|
||||||
|
force_autohinter=false
|
||||||
|
hinting=1
|
||||||
|
subpixel_positioning=4
|
||||||
|
keep_rounding_remainders=true
|
||||||
|
oversampling=0.0
|
||||||
|
Fallbacks=null
|
||||||
|
fallbacks=[]
|
||||||
|
Compress=null
|
||||||
|
compress=true
|
||||||
|
preload=[]
|
||||||
|
language_support={}
|
||||||
|
script_support={}
|
||||||
|
opentype_features={}
|
BIN
Assets/Fonts/Web Open Font Format (.woff)/Kaph-Regular.woff
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="font_data_dynamic"
|
||||||
|
type="FontFile"
|
||||||
|
uid="uid://cnikb22cx5s51"
|
||||||
|
path="res://.godot/imported/Kaph-Regular.woff-fc271f9b94e07fbf896c6ad9c61a5014.fontdata"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Fonts/Web Open Font Format (.woff)/Kaph-Regular.woff"
|
||||||
|
dest_files=["res://.godot/imported/Kaph-Regular.woff-fc271f9b94e07fbf896c6ad9c61a5014.fontdata"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
Rendering=null
|
||||||
|
antialiasing=1
|
||||||
|
generate_mipmaps=false
|
||||||
|
disable_embedded_bitmaps=true
|
||||||
|
multichannel_signed_distance_field=false
|
||||||
|
msdf_pixel_range=8
|
||||||
|
msdf_size=48
|
||||||
|
allow_system_fallback=true
|
||||||
|
force_autohinter=false
|
||||||
|
hinting=1
|
||||||
|
subpixel_positioning=4
|
||||||
|
keep_rounding_remainders=true
|
||||||
|
oversampling=0.0
|
||||||
|
Fallbacks=null
|
||||||
|
fallbacks=[]
|
||||||
|
Compress=null
|
||||||
|
compress=true
|
||||||
|
preload=[]
|
||||||
|
language_support={}
|
||||||
|
script_support={}
|
||||||
|
opentype_features={}
|
BIN
Assets/Fonts/Web Open Font Format (.woff)/Kaph-Regular.woff2
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="font_data_dynamic"
|
||||||
|
type="FontFile"
|
||||||
|
uid="uid://dskkuioa22v7a"
|
||||||
|
path="res://.godot/imported/Kaph-Regular.woff2-79e390799d1d1d3f7ecd9fa77b6726a8.fontdata"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Fonts/Web Open Font Format (.woff)/Kaph-Regular.woff2"
|
||||||
|
dest_files=["res://.godot/imported/Kaph-Regular.woff2-79e390799d1d1d3f7ecd9fa77b6726a8.fontdata"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
Rendering=null
|
||||||
|
antialiasing=1
|
||||||
|
generate_mipmaps=false
|
||||||
|
disable_embedded_bitmaps=true
|
||||||
|
multichannel_signed_distance_field=false
|
||||||
|
msdf_pixel_range=8
|
||||||
|
msdf_size=48
|
||||||
|
allow_system_fallback=true
|
||||||
|
force_autohinter=false
|
||||||
|
hinting=1
|
||||||
|
subpixel_positioning=4
|
||||||
|
keep_rounding_remainders=true
|
||||||
|
oversampling=0.0
|
||||||
|
Fallbacks=null
|
||||||
|
fallbacks=[]
|
||||||
|
Compress=null
|
||||||
|
compress=true
|
||||||
|
preload=[]
|
||||||
|
language_support={}
|
||||||
|
script_support={}
|
||||||
|
opentype_features={}
|
BIN
Assets/TextureAtlases/puppyfruit.png
Normal file
After ![]() (image error) Size: 228 KiB |
8
XeluController&KeyPrompts/Others/Wii/Wii_1.png.import → Assets/TextureAtlases/puppyfruit.png.import
@ -2,16 +2,16 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://i4ls0ikg5j1n"
|
uid="uid://6frn8lcwwehv"
|
||||||
path="res://.godot/imported/Wii_1.png-dd049b4cdf931ece103a262eefc0c13a.ctex"
|
path="res://.godot/imported/puppyfruit.png-4202c2b53b1e609128620576392b70df.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://XeluController&KeyPrompts/Others/Wii/Wii_1.png"
|
source_file="res://Assets/TextureAtlases/puppyfruit.png"
|
||||||
dest_files=["res://.godot/imported/Wii_1.png-dd049b4cdf931ece103a262eefc0c13a.ctex"]
|
dest_files=["res://.godot/imported/puppyfruit.png-4202c2b53b1e609128620576392b70df.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
BIN
Assets/Textures/bracket_b_vertical.png
Normal file
After ![]() (image error) Size: 260 B |
@ -2,16 +2,16 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://cuqfsr204gxn8"
|
uid="uid://broy365egmulr"
|
||||||
path="res://.godot/imported/Luna_LB.png-42d343970348c7d636d3675795d56263.ctex"
|
path="res://.godot/imported/bracket_b_vertical.png-315545aada90ad95c2805a4864e6e856.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://XeluController&KeyPrompts/Others/Amazon Luna/Luna_LB.png"
|
source_file="res://Assets/Textures/bracket_b_vertical.png"
|
||||||
dest_files=["res://.godot/imported/Luna_LB.png-42d343970348c7d636d3675795d56263.ctex"]
|
dest_files=["res://.godot/imported/bracket_b_vertical.png-315545aada90ad95c2805a4864e6e856.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
BIN
Assets/Textures/bridge_map.png
Normal file
After ![]() (image error) Size: 1.3 MiB |
35
Assets/Textures/bridge_map.png.import
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://dqrfgw65d0sq8"
|
||||||
|
path.s3tc="res://.godot/imported/bridge_map.png-c72524a9194bfb29ec0afa9089c51f6d.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Textures/bridge_map.png"
|
||||||
|
dest_files=["res://.godot/imported/bridge_map.png-c72524a9194bfb29ec0afa9089c51f6d.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
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=0
|
BIN
Assets/Textures/bridge_map.png.kra
Normal file
BIN
Assets/Textures/crosshair159.png
Normal file
After ![]() (image error) Size: 482 B |
@ -2,16 +2,16 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://2v3sc50kir27"
|
uid="uid://bs2mskoyvyehv"
|
||||||
path="res://.godot/imported/Wii_2.png-e142711e6b8cdb75d801339e85ea1fc3.ctex"
|
path="res://.godot/imported/crosshair159.png-1ca12955e39d6730ad57a007ee3592c9.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://XeluController&KeyPrompts/Others/Wii/Wii_2.png"
|
source_file="res://Assets/Textures/crosshair159.png"
|
||||||
dest_files=["res://.godot/imported/Wii_2.png-e142711e6b8cdb75d801339e85ea1fc3.ctex"]
|
dest_files=["res://.godot/imported/crosshair159.png-1ca12955e39d6730ad57a007ee3592c9.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
BIN
Assets/Textures/cursor_none.png
Normal file
After ![]() (image error) Size: 409 B |
@ -2,16 +2,16 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://bmaodu0s0vawf"
|
uid="uid://bc2pqfjucp6c3"
|
||||||
path="res://.godot/imported/PS5_L1.png-d0a582e9abb3c86d4a67b6ae378efc4b.ctex"
|
path="res://.godot/imported/cursor_none.png-8ef0d513f5b0742e2a06563125975c2c.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://XeluController&KeyPrompts/PS5/PS5_L1.png"
|
source_file="res://Assets/Textures/cursor_none.png"
|
||||||
dest_files=["res://.godot/imported/PS5_L1.png-d0a582e9abb3c86d4a67b6ae378efc4b.ctex"]
|
dest_files=["res://.godot/imported/cursor_none.png-8ef0d513f5b0742e2a06563125975c2c.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
Before ![]() (image error) Size: 2.1 KiB After ![]() (image error) Size: 3.2 KiB ![]() ![]() |
Before ![]() (image error) Size: 1.1 KiB After ![]() (image error) Size: 1.7 KiB ![]() ![]() |
BIN
Assets/Textures/energy_bar_bg2.png
Normal file
After ![]() (image error) Size: 905 B |
8
XeluController&KeyPrompts/Others/Ouya/Ouya_A.png.import → Assets/Textures/energy_bar_bg2.png.import
@ -2,16 +2,16 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://dr4j3818dn22s"
|
uid="uid://0ru2mv88fn4i"
|
||||||
path="res://.godot/imported/Ouya_A.png-d8654cd3b5c0e3404fe33b5205ebe49b.ctex"
|
path="res://.godot/imported/energy_bar_bg2.png-4fa638f691860d1c3297be47b7732390.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://XeluController&KeyPrompts/Others/Ouya/Ouya_A.png"
|
source_file="res://Assets/Textures/energy_bar_bg2.png"
|
||||||
dest_files=["res://.godot/imported/Ouya_A.png-d8654cd3b5c0e3404fe33b5205ebe49b.ctex"]
|
dest_files=["res://.godot/imported/energy_bar_bg2.png-4fa638f691860d1c3297be47b7732390.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
BIN
Assets/Textures/energy_bar_bg3.png
Normal file
After ![]() (image error) Size: 914 B |
8
XeluController&KeyPrompts/Others/Ouya/Ouya_U.png.import → Assets/Textures/energy_bar_bg3.png.import
@ -2,16 +2,16 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://c4efie5gwboy7"
|
uid="uid://c0kwkv021p7gl"
|
||||||
path="res://.godot/imported/Ouya_U.png-ac242332cbda7ce28ebf3926ed59b68a.ctex"
|
path="res://.godot/imported/energy_bar_bg3.png-a0e1a418885324d3b559a2593ef99013.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://XeluController&KeyPrompts/Others/Ouya/Ouya_U.png"
|
source_file="res://Assets/Textures/energy_bar_bg3.png"
|
||||||
dest_files=["res://.godot/imported/Ouya_U.png-ac242332cbda7ce28ebf3926ed59b68a.ctex"]
|
dest_files=["res://.godot/imported/energy_bar_bg3.png-a0e1a418885324d3b559a2593ef99013.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
Before ![]() (image error) Size: 8.5 KiB After ![]() (image error) Size: 7.5 KiB ![]() ![]() |
BIN
Assets/Textures/flair_disabled_cross.png
Normal file
After ![]() (image error) Size: 514 B |
34
Assets/Textures/flair_disabled_cross.png.import
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://djosixf2hc571"
|
||||||
|
path="res://.godot/imported/flair_disabled_cross.png-40ec3651e457381d8ef418b0ddfed86f.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Textures/flair_disabled_cross.png"
|
||||||
|
dest_files=["res://.godot/imported/flair_disabled_cross.png-40ec3651e457381d8ef418b0ddfed86f.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/Textures/hand_small_point.png
Normal file
After ![]() (image error) Size: 673 B |
@ -2,16 +2,16 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://cuamimpkdl8jq"
|
uid="uid://0x80ptif1diq"
|
||||||
path="res://.godot/imported/Luna_A.png-93db3f2756934bd8f064b80faedf6978.ctex"
|
path="res://.godot/imported/hand_small_point.png-dd650890c01dd4526b4ed41c883582ff.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://XeluController&KeyPrompts/Others/Amazon Luna/Luna_A.png"
|
source_file="res://Assets/Textures/hand_small_point.png"
|
||||||
dest_files=["res://.godot/imported/Luna_A.png-93db3f2756934bd8f064b80faedf6978.ctex"]
|
dest_files=["res://.godot/imported/hand_small_point.png-dd650890c01dd4526b4ed41c883582ff.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
@ -3,25 +3,26 @@
|
|||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://cb66pspr16scy"
|
uid="uid://cb66pspr16scy"
|
||||||
path="res://.godot/imported/leapfrog_2.png-6ca968bda2f2a97809552ed0bab21743.ctex"
|
path.s3tc="res://.godot/imported/leapfrog_2.png-6ca968bda2f2a97809552ed0bab21743.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Assets/Textures/leapfrog_2.png"
|
source_file="res://Assets/Textures/leapfrog_2.png"
|
||||||
dest_files=["res://.godot/imported/leapfrog_2.png-6ca968bda2f2a97809552ed0bab21743.ctex"]
|
dest_files=["res://.godot/imported/leapfrog_2.png-6ca968bda2f2a97809552ed0bab21743.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
compress/mode=0
|
compress/mode=2
|
||||||
compress/high_quality=false
|
compress/high_quality=false
|
||||||
compress/lossy_quality=0.7
|
compress/lossy_quality=0.7
|
||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=0
|
roughness/mode=0
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
@ -31,4 +32,4 @@ process/normal_map_invert_y=false
|
|||||||
process/hdr_as_srgb=false
|
process/hdr_as_srgb=false
|
||||||
process/hdr_clamp_exposure=false
|
process/hdr_clamp_exposure=false
|
||||||
process/size_limit=0
|
process/size_limit=0
|
||||||
detect_3d/compress_to=1
|
detect_3d/compress_to=0
|
||||||
|
BIN
Assets/Textures/prototype.png
Normal file
After ![]() (image error) Size: 16 KiB |
35
Assets/Textures/prototype.png.import
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://cwykwcaxbrxdi"
|
||||||
|
path.s3tc="res://.godot/imported/prototype.png-2678c44321b389387a13e51fcac78d61.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Textures/prototype.png"
|
||||||
|
dest_files=["res://.godot/imported/prototype.png-2678c44321b389387a13e51fcac78d61.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
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=0
|
BIN
Assets/Textures/tile.png
Normal file
After ![]() (image error) Size: 2.1 KiB |
35
Assets/Textures/tile.png.import
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://ds4ccfym5ej7w"
|
||||||
|
path.s3tc="res://.godot/imported/tile.png-f2c836729428dd06f567f8db05c6afb6.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Textures/tile.png"
|
||||||
|
dest_files=["res://.godot/imported/tile.png-f2c836729428dd06f567f8db05c6afb6.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
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=0
|
BIN
Assets/Textures/tile.png~
Normal file
After ![]() (image error) Size: 3.3 KiB |
@ -1,5 +1,6 @@
|
|||||||
[gd_resource type="Resource" script_class="HeroClass" load_steps=10 format=3 uid="uid://b5pc3frhx467q"]
|
[gd_resource type="Resource" script_class="HeroClass" load_steps=11 format=3 uid="uid://b5pc3frhx467q"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://dq8v5e11rvyi6" path="res://Classes/Engineer/plan.tscn" id="1_2m5d7"]
|
||||||
[ext_resource type="Script" uid="uid://d40isem6w5d8" path="res://Scripts/Resources/card.gd" id="1_t4fvj"]
|
[ext_resource type="Script" uid="uid://d40isem6w5d8" path="res://Scripts/Resources/card.gd" id="1_t4fvj"]
|
||||||
[ext_resource type="Resource" uid="uid://deer0awg4d18o" path="res://Cards/assault.tres" id="2_62g46"]
|
[ext_resource type="Resource" uid="uid://deer0awg4d18o" path="res://Cards/assault.tres" id="2_62g46"]
|
||||||
[ext_resource type="Resource" uid="uid://ckm88acryitl4" path="res://Cards/sniper.tres" id="3_eml7q"]
|
[ext_resource type="Resource" uid="uid://ckm88acryitl4" path="res://Cards/sniper.tres" id="3_eml7q"]
|
||||||
@ -18,3 +19,4 @@ hand_texture = ExtResource("6_a8dvt")
|
|||||||
deck = Array[ExtResource("1_t4fvj")]([ExtResource("2_62g46"), ExtResource("2_62g46"), ExtResource("3_eml7q"), ExtResource("4_ovvb2"), ExtResource("5_vqkxt")])
|
deck = Array[ExtResource("1_t4fvj")]([ExtResource("2_62g46"), ExtResource("2_62g46"), ExtResource("3_eml7q"), ExtResource("4_ovvb2"), ExtResource("5_vqkxt")])
|
||||||
faction = 1
|
faction = 1
|
||||||
podium = ExtResource("7_nyup7")
|
podium = ExtResource("7_nyup7")
|
||||||
|
card_item = ExtResource("1_2m5d7")
|
||||||
|
@ -4,12 +4,12 @@ importer="scene"
|
|||||||
importer_version=1
|
importer_version=1
|
||||||
type="PackedScene"
|
type="PackedScene"
|
||||||
uid="uid://bycbnjk8snesp"
|
uid="uid://bycbnjk8snesp"
|
||||||
path="res://.godot/imported/plan.glb-2c2d7728d6bf7c4f7aa3b51315acac6d.scn"
|
path="res://.godot/imported/plan.glb-1550a2307197fee30ac7089f8e7db254.scn"
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://plan.glb"
|
source_file="res://Classes/Engineer/plan.glb"
|
||||||
dest_files=["res://.godot/imported/plan.glb-2c2d7728d6bf7c4f7aa3b51315acac6d.scn"]
|
dest_files=["res://.godot/imported/plan.glb-1550a2307197fee30ac7089f8e7db254.scn"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
@ -1,6 +1,6 @@
|
|||||||
[gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://dlftx7c32euh0"]
|
[gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://dlftx7c32euh0"]
|
||||||
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dds48gjgiyjp6" path="res://plan_plan_tex.png" id="1_jpetr"]
|
[ext_resource type="Texture2D" uid="uid://dds48gjgiyjp6" path="res://Classes/Engineer/plan_plan_tex.png" id="1_jpetr"]
|
||||||
|
|
||||||
[resource]
|
[resource]
|
||||||
albedo_texture = ExtResource("1_jpetr")
|
albedo_texture = ExtResource("1_jpetr")
|
Before ![]() (image error) Size: 80 KiB After ![]() (image error) Size: 80 KiB ![]() ![]() |
@ -3,7 +3,7 @@
|
|||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://dds48gjgiyjp6"
|
uid="uid://dds48gjgiyjp6"
|
||||||
path.s3tc="res://.godot/imported/plan_plan_tex.png-901144cd225dba1a169b1b1548c880b8.s3tc.ctex"
|
path.s3tc="res://.godot/imported/plan_plan_tex.png-e4a279734396ed977f4f903ec94343a1.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc"],
|
"imported_formats": ["s3tc_bptc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
@ -14,8 +14,8 @@ generator_parameters={
|
|||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://plan_plan_tex.png"
|
source_file="res://Classes/Engineer/plan_plan_tex.png"
|
||||||
dest_files=["res://.godot/imported/plan_plan_tex.png-901144cd225dba1a169b1b1548c880b8.s3tc.ctex"]
|
dest_files=["res://.godot/imported/plan_plan_tex.png-e4a279734396ed977f4f903ec94343a1.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
@ -18,36 +18,39 @@ radius = 3.0
|
|||||||
height = 1.0
|
height = 1.0
|
||||||
sides = 32
|
sides = 32
|
||||||
|
|
||||||
[node name="CharacterSprite" type="Sprite3D" parent="Base"]
|
|
||||||
transform = Transform3D(1.6895, 0, -2.47903, 0, 3, 0, 2.47903, 0, 1.6895, -0.0459526, 1.91885, -0.305444)
|
|
||||||
modulate = Color(0.517184, 0.517184, 0.517184, 1)
|
|
||||||
billboard = 2
|
|
||||||
texture_filter = 0
|
|
||||||
texture = ExtResource("2_4b5pd")
|
|
||||||
|
|
||||||
[node name="Node3D" parent="Base" instance=ExtResource("3_pmyku")]
|
[node name="Node3D" parent="Base" instance=ExtResource("3_pmyku")]
|
||||||
transform = Transform3D(0.563166, 0, -0.826344, 0, 1, 0, 0.826344, 0, 0.563166, -1.32611, 0.5, -0.864711)
|
transform = Transform3D(0.563166, 0, -0.826344, 0, 1, 0, 0.826344, 0, 0.563166, -1.32611, 0.5, -0.864711)
|
||||||
|
|
||||||
[node name="Assaultmod" type="MeshInstance3D" parent="Base"]
|
|
||||||
transform = Transform3D(-0.155908, 0.191531, -0.37018, -7.29442e-09, 0.395231, 0.204492, 0.416795, 0.0716447, -0.138472, 1.08392, 0.959456, -1.22038)
|
|
||||||
mesh = ExtResource("4_1jafm")
|
|
||||||
skeleton = NodePath("../../..")
|
|
||||||
|
|
||||||
[node name="Snipermodel" type="MeshInstance3D" parent="Base"]
|
|
||||||
transform = Transform3D(0.410348, 0.0352013, 0.0823131, 0.0231825, 0.331215, -0.257215, -0.0864702, 0.255847, 0.32166, -1.09654, 0.957512, 0.64087)
|
|
||||||
mesh = ExtResource("5_851y4")
|
|
||||||
skeleton = NodePath("../../..")
|
|
||||||
|
|
||||||
[node name="Gattlemesh" type="MeshInstance3D" parent="Base"]
|
|
||||||
transform = Transform3D(0.11298, -0.0560454, 0.277704, 2.63199e-09, 0.298972, 0.0603377, -0.283303, -0.0223507, 0.110748, 0.976316, 0.901463, 0.843925)
|
|
||||||
mesh = ExtResource("6_iftlf")
|
|
||||||
skeleton = NodePath("../../..")
|
|
||||||
|
|
||||||
[node name="SpotLight3D" type="SpotLight3D" parent="Base"]
|
[node name="SpotLight3D" type="SpotLight3D" parent="Base"]
|
||||||
transform = Transform3D(0.563166, 0.826344, 3.61207e-08, 1.35728e-16, -4.37114e-08, 1, 0.826344, -0.563166, -2.46168e-08, -0.0459526, 4, -0.305444)
|
transform = Transform3D(0.563166, 0.826344, 3.61207e-08, 1.35728e-16, -4.37114e-08, 1, 0.826344, -0.563166, -2.46168e-08, -0.0459526, 4, -0.305444)
|
||||||
spot_range = 10.0
|
spot_range = 10.0
|
||||||
spot_attenuation = 0.39
|
spot_attenuation = 0.39
|
||||||
|
|
||||||
[node name="Tower2" parent="Base" instance=ExtResource("7_pmyku")]
|
[node name="Content" type="Node3D" parent="Base"]
|
||||||
|
visible = false
|
||||||
|
|
||||||
|
[node name="CharacterSprite" type="Sprite3D" parent="Base/Content"]
|
||||||
|
transform = Transform3D(1.6895, 0, -2.47903, 0, 3, 0, 2.47903, 0, 1.6895, -0.0459526, 1.91885, -0.305444)
|
||||||
|
modulate = Color(0.517184, 0.517184, 0.517184, 1)
|
||||||
|
billboard = 2
|
||||||
|
texture_filter = 0
|
||||||
|
texture = ExtResource("2_4b5pd")
|
||||||
|
|
||||||
|
[node name="Assaultmod" type="MeshInstance3D" parent="Base/Content"]
|
||||||
|
transform = Transform3D(-0.155908, 0.191531, -0.37018, -7.29442e-09, 0.395231, 0.204492, 0.416795, 0.0716447, -0.138472, 1.08392, 0.959456, -1.22038)
|
||||||
|
mesh = ExtResource("4_1jafm")
|
||||||
|
skeleton = NodePath("../../../..")
|
||||||
|
|
||||||
|
[node name="Snipermodel" type="MeshInstance3D" parent="Base/Content"]
|
||||||
|
transform = Transform3D(0.410348, 0.0352013, 0.0823131, 0.0231825, 0.331215, -0.257215, -0.0864702, 0.255847, 0.32166, -1.09654, 0.957512, 0.64087)
|
||||||
|
mesh = ExtResource("5_851y4")
|
||||||
|
skeleton = NodePath("../../../..")
|
||||||
|
|
||||||
|
[node name="Gattlemesh" type="MeshInstance3D" parent="Base/Content"]
|
||||||
|
transform = Transform3D(0.11298, -0.0560454, 0.277704, 2.63199e-09, 0.298972, 0.0603377, -0.283303, -0.0223507, 0.110748, 0.976316, 0.901463, 0.843925)
|
||||||
|
mesh = ExtResource("6_iftlf")
|
||||||
|
skeleton = NodePath("../../../..")
|
||||||
|
|
||||||
|
[node name="Tower2" parent="Base/Content" instance=ExtResource("7_pmyku")]
|
||||||
transform = Transform3D(0.563166, 0, -0.826344, 0, 1, 0, 0.826344, 0, 0.563166, 2.31578, 1.01612, -0.162108)
|
transform = Transform3D(0.563166, 0, -0.826344, 0, 1, 0, 0.826344, 0, 0.563166, 2.31578, 1.01612, -0.162108)
|
||||||
stats = ExtResource("8_1jafm")
|
stats = ExtResource("8_1jafm")
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
[gd_resource type="Resource" script_class="HeroClass" load_steps=10 format=3 uid="uid://dxonpv8qbyrjy"]
|
[gd_resource type="Resource" script_class="HeroClass" load_steps=11 format=3 uid="uid://dxonpv8qbyrjy"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://bfxgtf1v1okat" path="res://Classes/Mage/scroll.tscn" id="1_6eh1f"]
|
||||||
[ext_resource type="Script" uid="uid://dcwtg2gev3uia" path="res://Scripts/Resources/hero_class.gd" id="1_aeu85"]
|
[ext_resource type="Script" uid="uid://dcwtg2gev3uia" path="res://Scripts/Resources/hero_class.gd" id="1_aeu85"]
|
||||||
[ext_resource type="Script" uid="uid://d40isem6w5d8" path="res://Scripts/Resources/card.gd" id="1_gq5ju"]
|
[ext_resource type="Script" uid="uid://d40isem6w5d8" path="res://Scripts/Resources/card.gd" id="1_gq5ju"]
|
||||||
[ext_resource type="Resource" uid="uid://deer0awg4d18o" path="res://Cards/assault.tres" id="2_3yr5a"]
|
[ext_resource type="Resource" uid="uid://deer0awg4d18o" path="res://Cards/assault.tres" id="2_3yr5a"]
|
||||||
@ -18,3 +19,4 @@ hand_texture = ExtResource("4_srskc")
|
|||||||
deck = Array[ExtResource("1_gq5ju")]([ExtResource("2_3yr5a"), ExtResource("2_3yr5a"), ExtResource("3_wyb0n"), ExtResource("3_sh7d1"), ExtResource("5_k7b5b")])
|
deck = Array[ExtResource("1_gq5ju")]([ExtResource("2_3yr5a"), ExtResource("2_3yr5a"), ExtResource("3_wyb0n"), ExtResource("3_sh7d1"), ExtResource("5_k7b5b")])
|
||||||
faction = 2
|
faction = 2
|
||||||
podium = ExtResource("7_aglom")
|
podium = ExtResource("7_aglom")
|
||||||
|
card_item = ExtResource("1_6eh1f")
|
||||||
|
9
Classes/Mage/mouse_hover_material2.tres
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
[gd_resource type="StandardMaterial3D" format=3 uid="uid://0273wjmwcpa5"]
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
resource_local_to_scene = true
|
||||||
|
cull_mode = 1
|
||||||
|
shading_mode = 0
|
||||||
|
albedo_color = Color(0.751102, 0.459619, 0.112211, 1)
|
||||||
|
grow = true
|
||||||
|
grow_amount = 0.02
|
@ -20,41 +20,45 @@ radius = 3.0
|
|||||||
height = 1.0
|
height = 1.0
|
||||||
sides = 32
|
sides = 32
|
||||||
|
|
||||||
[node name="Sprite3D" type="Sprite3D" parent="Base"]
|
|
||||||
transform = Transform3D(3, 0, 0, 0, 3, 0, 0, 0, 3, 0, 1.91885, 0)
|
|
||||||
modulate = Color(0.446777, 0.446777, 0.446777, 1)
|
|
||||||
billboard = 2
|
|
||||||
texture_filter = 0
|
|
||||||
texture = ExtResource("2_skplt")
|
|
||||||
|
|
||||||
[node name="Node3D" parent="Base" instance=ExtResource("3_m1210")]
|
[node name="Node3D" parent="Base" instance=ExtResource("3_m1210")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.21433, 0.5, -1.47375)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.21433, 0.5, -1.47375)
|
||||||
|
|
||||||
[node name="Assaultmod" type="MeshInstance3D" parent="Base"]
|
|
||||||
transform = Transform3D(-0.216168, 0.271014, 0.279012, 0.174778, 0.352842, -0.207317, -0.347489, 0.00887582, -0.277844, 1.62687, 1.06376, -1.0274)
|
|
||||||
mesh = ExtResource("4_5wuy8")
|
|
||||||
skeleton = NodePath("../../..")
|
|
||||||
|
|
||||||
[node name="Snipermodel" type="MeshInstance3D" parent="Base"]
|
|
||||||
transform = Transform3D(0.332265, 0.0519786, -0.251592, -8.9882e-09, 0.411314, 0.0849769, 0.256905, -0.0672257, 0.325393, 0.500198, 0.978789, 1.90895)
|
|
||||||
mesh = ExtResource("5_tnndn")
|
|
||||||
skeleton = NodePath("../../..")
|
|
||||||
|
|
||||||
[node name="Magetowermesh" type="MeshInstance3D" parent="Base"]
|
|
||||||
transform = Transform3D(0.432921, 0, 0.719847, 0, 0.84, 0, -0.719847, 0, 0.432921, -1.62727, 0.5, -0.00850296)
|
|
||||||
mesh = ExtResource("6_67jsi")
|
|
||||||
|
|
||||||
[node name="OmniLight3D" type="OmniLight3D" parent="Base/Magetowermesh"]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3.38274, 0)
|
|
||||||
light_color = Color(0.697081, 0.170704, 0.131545, 1)
|
|
||||||
light_energy = 3.586
|
|
||||||
omni_range = 1.824
|
|
||||||
|
|
||||||
[node name="SpotLight3D2" type="SpotLight3D" parent="Base"]
|
[node name="SpotLight3D2" type="SpotLight3D" parent="Base"]
|
||||||
transform = Transform3D(-4.37114e-08, 1, 4.37114e-08, 0, -4.37114e-08, 1, 1, 4.37114e-08, 1.91069e-15, 0, 4, 0)
|
transform = Transform3D(-4.37114e-08, 1, 4.37114e-08, 0, -4.37114e-08, 1, 1, 4.37114e-08, 1.91069e-15, 0, 4, 0)
|
||||||
spot_range = 10.0
|
spot_range = 10.0
|
||||||
spot_attenuation = 0.39
|
spot_attenuation = 0.39
|
||||||
|
|
||||||
[node name="Tower" parent="Base" instance=ExtResource("7_3ilqd")]
|
[node name="Content" type="Node3D" parent="Base"]
|
||||||
|
visible = false
|
||||||
|
|
||||||
|
[node name="Sprite3D" type="Sprite3D" parent="Base/Content"]
|
||||||
|
transform = Transform3D(3, 0, 0, 0, 3, 0, 0, 0, 3, 0, 1.91885, 0)
|
||||||
|
modulate = Color(0.446777, 0.446777, 0.446777, 1)
|
||||||
|
billboard = 2
|
||||||
|
texture_filter = 0
|
||||||
|
texture = ExtResource("2_skplt")
|
||||||
|
|
||||||
|
[node name="Assaultmod" type="MeshInstance3D" parent="Base/Content"]
|
||||||
|
transform = Transform3D(-0.216168, 0.271014, 0.279012, 0.174778, 0.352842, -0.207317, -0.347489, 0.00887582, -0.277844, 1.62687, 1.06376, -1.0274)
|
||||||
|
mesh = ExtResource("4_5wuy8")
|
||||||
|
skeleton = NodePath("../../../..")
|
||||||
|
|
||||||
|
[node name="Snipermodel" type="MeshInstance3D" parent="Base/Content"]
|
||||||
|
transform = Transform3D(0.332265, 0.0519786, -0.251592, -8.9882e-09, 0.411314, 0.0849769, 0.256905, -0.0672257, 0.325393, 0.500198, 0.978789, 1.90895)
|
||||||
|
mesh = ExtResource("5_tnndn")
|
||||||
|
skeleton = NodePath("../../../..")
|
||||||
|
|
||||||
|
[node name="Magetowermesh" type="MeshInstance3D" parent="Base/Content"]
|
||||||
|
transform = Transform3D(0.432921, 0, 0.719847, 0, 0.84, 0, -0.719847, 0, 0.432921, -1.62727, 0.5, -0.0085029)
|
||||||
|
mesh = ExtResource("6_67jsi")
|
||||||
|
skeleton = NodePath("../..")
|
||||||
|
|
||||||
|
[node name="OmniLight3D" type="OmniLight3D" parent="Base/Content/Magetowermesh"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3.38274, 0)
|
||||||
|
light_color = Color(0.697081, 0.170704, 0.131545, 1)
|
||||||
|
light_energy = 3.586
|
||||||
|
omni_range = 1.824
|
||||||
|
|
||||||
|
[node name="Tower" parent="Base/Content" instance=ExtResource("7_3ilqd")]
|
||||||
transform = Transform3D(-0.642788, 0, -0.766044, 0, 1, 0, 0.766044, 0, -0.642788, 0.228261, 1.16271, -1.45948)
|
transform = Transform3D(-0.642788, 0, -0.766044, 0, 1, 0, 0.766044, 0, -0.642788, 0.228261, 1.16271, -1.45948)
|
||||||
stats = ExtResource("8_2wywa")
|
stats = ExtResource("8_2wywa")
|
||||||
|
109
Classes/Mage/scroll.tscn
Normal file
BIN
Classes/Mage/scroll2.glb
Normal file
37
Classes/Mage/scroll2.glb.import
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="scene"
|
||||||
|
importer_version=1
|
||||||
|
type="PackedScene"
|
||||||
|
uid="uid://chg7jricce3j2"
|
||||||
|
path="res://.godot/imported/scroll2.glb-6b5967f06d00f195f8bc4925f70159e4.scn"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Classes/Mage/scroll2.glb"
|
||||||
|
dest_files=["res://.godot/imported/scroll2.glb-6b5967f06d00f195f8bc4925f70159e4.scn"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
nodes/root_type=""
|
||||||
|
nodes/root_name=""
|
||||||
|
nodes/apply_root_scale=true
|
||||||
|
nodes/root_scale=1.0
|
||||||
|
nodes/import_as_skeleton_bones=false
|
||||||
|
nodes/use_node_type_suffixes=true
|
||||||
|
meshes/ensure_tangents=true
|
||||||
|
meshes/generate_lods=true
|
||||||
|
meshes/create_shadow_meshes=true
|
||||||
|
meshes/light_baking=1
|
||||||
|
meshes/lightmap_texel_size=0.2
|
||||||
|
meshes/force_disable_compression=false
|
||||||
|
skins/use_named_skins=true
|
||||||
|
animation/import=true
|
||||||
|
animation/fps=30
|
||||||
|
animation/trimming=false
|
||||||
|
animation/remove_immutable_tracks=true
|
||||||
|
animation/import_rest_as_RESET=false
|
||||||
|
import_script/path=""
|
||||||
|
_subresources={}
|
||||||
|
gltf/naming_version=1
|
||||||
|
gltf/embedded_image_handling=1
|
BIN
Classes/Mage/scroll2_paper.png
Normal file
After ![]() (image error) Size: 1.5 MiB |
38
Classes/Mage/scroll2_paper.png.import
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://b0sl2tvwle1m7"
|
||||||
|
path.s3tc="res://.godot/imported/scroll2_paper.png-729535889b5d0fe9dcd7ec73b98d3019.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "619c35ba3f70be465132fb35a0fd6eb8"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Classes/Mage/scroll2_paper.png"
|
||||||
|
dest_files=["res://.godot/imported/scroll2_paper.png-729535889b5d0fe9dcd7ec73b98d3019.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
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=0
|
@ -18,34 +18,35 @@ radius = 3.0
|
|||||||
height = 1.0
|
height = 1.0
|
||||||
sides = 32
|
sides = 32
|
||||||
|
|
||||||
[node name="Sprite3D" type="Sprite3D" parent="Base"]
|
[node name="Node3D" parent="Base" instance=ExtResource("3_il1ej")]
|
||||||
transform = Transform3D(3, 0, 0, 0, 3, 0, 0, 0, 3, 0, 1.91885, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.18309, 0.5, 0.742893)
|
||||||
|
|
||||||
|
[node name="Content" type="Node3D" parent="Base"]
|
||||||
visible = false
|
visible = false
|
||||||
|
|
||||||
|
[node name="Sprite3D" type="Sprite3D" parent="Base/Content"]
|
||||||
|
transform = Transform3D(3, 0, 5.96046e-08, 0, 3, 0, -5.96046e-08, 0, 3, 0, 1.91885, 0)
|
||||||
modulate = Color(0.517184, 0.517184, 0.517184, 1)
|
modulate = Color(0.517184, 0.517184, 0.517184, 1)
|
||||||
billboard = 2
|
billboard = 2
|
||||||
texture_filter = 0
|
texture_filter = 0
|
||||||
texture = ExtResource("2_05uii")
|
texture = ExtResource("2_05uii")
|
||||||
|
|
||||||
[node name="Node3D" parent="Base" instance=ExtResource("3_il1ej")]
|
[node name="Assaultmod" type="MeshInstance3D" parent="Base/Content"]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.18309, 0.5, 0.742893)
|
|
||||||
|
|
||||||
[node name="Assaultmod" type="MeshInstance3D" parent="Base"]
|
|
||||||
transform = Transform3D(0.256614, 0.167067, -0.322898, -7.90479e-16, 0.395231, 0.204492, 0.363558, -0.117923, 0.227914, -0.119748, 0.959456, -1.44893)
|
transform = Transform3D(0.256614, 0.167067, -0.322898, -7.90479e-16, 0.395231, 0.204492, 0.363558, -0.117923, 0.227914, -0.119748, 0.959456, -1.44893)
|
||||||
mesh = ExtResource("4_mrig3")
|
mesh = ExtResource("4_mrig3")
|
||||||
skeleton = NodePath("../../..")
|
skeleton = NodePath("../../../..")
|
||||||
|
|
||||||
[node name="Snipermodel" type="MeshInstance3D" parent="Base"]
|
[node name="Snipermodel" type="MeshInstance3D" parent="Base/Content"]
|
||||||
transform = Transform3D(0.15964, 0.231242, 0.312158, 0.0231825, 0.331215, -0.257215, -0.387786, 0.114996, 0.113129, 0.190324, 0.957512, 1.40108)
|
transform = Transform3D(0.15964, 0.231242, 0.312158, 0.0231825, 0.331215, -0.257215, -0.387786, 0.114996, 0.113129, 0.190324, 0.957512, 1.40108)
|
||||||
mesh = ExtResource("5_yj8b1")
|
mesh = ExtResource("5_yj8b1")
|
||||||
skeleton = NodePath("../../..")
|
skeleton = NodePath("../../../..")
|
||||||
|
|
||||||
[node name="Gattlemesh" type="MeshInstance3D" parent="Base"]
|
[node name="Gattlemesh" type="MeshInstance3D" parent="Base/Content"]
|
||||||
transform = Transform3D(-0.170479, -0.0500322, 0.247909, 0, 0.298972, 0.0603377, -0.252907, 0.0337256, -0.16711, 1.52548, 0.901463, -0.197461)
|
transform = Transform3D(-0.170479, -0.0500322, 0.247909, 0, 0.298972, 0.0603377, -0.252907, 0.0337256, -0.16711, 1.52548, 0.901463, -0.197461)
|
||||||
mesh = ExtResource("6_jr17d")
|
mesh = ExtResource("6_jr17d")
|
||||||
skeleton = NodePath("../../..")
|
skeleton = NodePath("../../../..")
|
||||||
|
|
||||||
[node name="SpotLight3D" type="SpotLight3D" parent="Base"]
|
[node name="SpotLight3D" type="SpotLight3D" parent="Base/Content"]
|
||||||
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 4, 0)
|
transform = Transform3D(1, -2.98023e-08, -1.77636e-15, 0, -4.37114e-08, 1, -2.98023e-08, -1, -4.37114e-08, 0, 4, 0)
|
||||||
visible = false
|
|
||||||
spot_range = 10.0
|
spot_range = 10.0
|
||||||
spot_attenuation = 0.39
|
spot_attenuation = 0.39
|
||||||
|
@ -18,40 +18,41 @@ radius = 3.0
|
|||||||
height = 1.0
|
height = 1.0
|
||||||
sides = 32
|
sides = 32
|
||||||
|
|
||||||
[node name="Sprite3D" type="Sprite3D" parent="Base"]
|
[node name="Node3D" parent="Base" instance=ExtResource("3_brui3")]
|
||||||
transform = Transform3D(3, 0, 0, 0, 3, 0, 0, 0, 3, 0, 1.91885, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.21433, 0.5, -1.47375)
|
||||||
|
|
||||||
|
[node name="Content" type="Node3D" parent="Base"]
|
||||||
visible = false
|
visible = false
|
||||||
|
|
||||||
|
[node name="Sprite3D" type="Sprite3D" parent="Base/Content"]
|
||||||
|
transform = Transform3D(3, 0, 2.38419e-07, 0, 3, 0, -2.38419e-07, 0, 3, 0, 1.91885, 0)
|
||||||
modulate = Color(0.446777, 0.446777, 0.446777, 1)
|
modulate = Color(0.446777, 0.446777, 0.446777, 1)
|
||||||
billboard = 2
|
billboard = 2
|
||||||
texture_filter = 0
|
texture_filter = 0
|
||||||
texture = ExtResource("2_e7ajb")
|
texture = ExtResource("2_e7ajb")
|
||||||
|
|
||||||
[node name="Node3D" parent="Base" instance=ExtResource("3_brui3")]
|
[node name="Assaultmod" type="MeshInstance3D" parent="Base/Content"]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.21433, 0.5, -1.47375)
|
|
||||||
|
|
||||||
[node name="Assaultmod" type="MeshInstance3D" parent="Base"]
|
|
||||||
transform = Transform3D(-0.216168, 0.271014, 0.279012, 0.174778, 0.352842, -0.207317, -0.347489, 0.00887582, -0.277844, 1.62687, 1.06376, -1.0274)
|
transform = Transform3D(-0.216168, 0.271014, 0.279012, 0.174778, 0.352842, -0.207317, -0.347489, 0.00887582, -0.277844, 1.62687, 1.06376, -1.0274)
|
||||||
mesh = ExtResource("4_6igfd")
|
mesh = ExtResource("4_6igfd")
|
||||||
skeleton = NodePath("../../..")
|
skeleton = NodePath("../../../..")
|
||||||
|
|
||||||
[node name="Snipermodel" type="MeshInstance3D" parent="Base"]
|
[node name="Snipermodel" type="MeshInstance3D" parent="Base/Content"]
|
||||||
transform = Transform3D(0.332265, 0.0519786, -0.251592, -8.9882e-09, 0.411314, 0.0849769, 0.256905, -0.0672257, 0.325393, 0.500198, 0.978789, 1.90895)
|
transform = Transform3D(0.332265, 0.0519786, -0.251592, -8.9882e-09, 0.411314, 0.0849769, 0.256905, -0.0672257, 0.325393, 0.500198, 0.978789, 1.90895)
|
||||||
mesh = ExtResource("5_2o81e")
|
mesh = ExtResource("5_2o81e")
|
||||||
skeleton = NodePath("../../..")
|
skeleton = NodePath("../../../..")
|
||||||
|
|
||||||
[node name="Magetowermesh" type="MeshInstance3D" parent="Base"]
|
[node name="Magetowermesh" type="MeshInstance3D" parent="Base/Content"]
|
||||||
transform = Transform3D(0.432921, 0, 0.719847, 0, 0.84, 0, -0.719847, 0, 0.432921, -1.62727, 0.5, -0.00850296)
|
transform = Transform3D(0.432921, 0, 0.719847, 0, 0.84, 0, -0.719847, 0, 0.432921, -1.62727, 0.5, -0.00850284)
|
||||||
mesh = ExtResource("6_qcqfx")
|
mesh = ExtResource("6_qcqfx")
|
||||||
|
skeleton = NodePath("../..")
|
||||||
|
|
||||||
[node name="OmniLight3D" type="OmniLight3D" parent="Base/Magetowermesh"]
|
[node name="OmniLight3D" type="OmniLight3D" parent="Base/Content/Magetowermesh"]
|
||||||
transform = Transform3D(1.19048, 0, 0, 0, 1.19048, 0, 0, 0, 1.19048, 0, 3.38274, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3.38274, 0)
|
||||||
visible = false
|
|
||||||
light_color = Color(0.697081, 0.170704, 0.131545, 1)
|
light_color = Color(0.697081, 0.170704, 0.131545, 1)
|
||||||
light_energy = 3.586
|
light_energy = 3.586
|
||||||
omni_range = 1.824
|
omni_range = 1.824
|
||||||
|
|
||||||
[node name="SpotLight3D2" type="SpotLight3D" parent="Base"]
|
[node name="SpotLight3D2" type="SpotLight3D" parent="Base/Content"]
|
||||||
transform = Transform3D(-4.37114e-08, 1, 4.37114e-08, 0, -4.37114e-08, 1, 1, 4.37114e-08, 1.91069e-15, 0, 4, 0)
|
transform = Transform3D(-2.98023e-08, 1, 4.37114e-08, 0, -4.37114e-08, 1, 1, 2.98023e-08, 1.77636e-15, 0, 4, 0)
|
||||||
visible = false
|
|
||||||
spot_range = 10.0
|
spot_range = 10.0
|
||||||
spot_attenuation = 0.39
|
spot_attenuation = 0.39
|
||||||
|
31
Enemies/Crystalisk/airenemy2.tres
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
[gd_resource type="Resource" script_class="Enemy" load_steps=6 format=3 uid="uid://bffhb5krs5elm"]
|
||||||
|
|
||||||
|
[ext_resource type="Texture2D" uid="uid://b1lwaxw62yp3p" path="res://Assets/Textures/dead_spike.png" id="1_skyfd"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://duywsy7jmh4u" path="res://Assets/Textures/spike.png" id="2_idym2"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://cveiaa0y66gln" path="res://Enemies/Crystalisk/crystal_enemy.tscn" id="3_7w5fm"]
|
||||||
|
[ext_resource type="Script" uid="uid://cbwxa2a4hfcy4" path="res://Scripts/Resources/enemy.gd" id="4_x2l2n"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://sybn6bjbj5fh" path="res://Assets/TextureAtlases/spike.tres" id="5_okcvf"]
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
script = ExtResource("4_x2l2n")
|
||||||
|
title = "Crystalisk"
|
||||||
|
target_type = 2
|
||||||
|
scene = ExtResource("3_7w5fm")
|
||||||
|
icon = ExtResource("2_idym2")
|
||||||
|
death_sprite = ExtResource("1_skyfd")
|
||||||
|
sprite = ExtResource("5_okcvf")
|
||||||
|
spawn_power = 6
|
||||||
|
health = 120
|
||||||
|
penalty = 7
|
||||||
|
movement_speed = 1.0
|
||||||
|
spawn_cooldown = 1.0
|
||||||
|
common_group = 5
|
||||||
|
common_cost = 2
|
||||||
|
uncommon_group = 10
|
||||||
|
uncommon_cost = 3
|
||||||
|
rare_group = 18
|
||||||
|
rare_cost = 4
|
||||||
|
epic_group = 26
|
||||||
|
epic_cost = 6
|
||||||
|
legendary_group = 42
|
||||||
|
legendary_cost = 8
|
BIN
Enemies/Crystalisk/crystal_enemy.glb
Normal file
1845
Enemies/Crystalisk/crystal_enemy.glb.import
Normal file
BIN
Enemies/Crystalisk/crystal_enemy.png
Normal file
After ![]() (image error) Size: 354 B |
@ -2,16 +2,16 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://b12jovvcde2dl"
|
uid="uid://d01y8kogfuayr"
|
||||||
path="res://.godot/imported/Ouya_O.png-7f3b969ad3acb705c10f9080e209d0ca.ctex"
|
path="res://.godot/imported/crystal_enemy.png-47c4105ce5ff19d6a767c397a2a82c0d.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://XeluController&KeyPrompts/Others/Ouya/Ouya_O.png"
|
source_file="res://Enemies/Crystalisk/crystal_enemy.png"
|
||||||
dest_files=["res://.godot/imported/Ouya_O.png-7f3b969ad3acb705c10f9080e209d0ca.ctex"]
|
dest_files=["res://.godot/imported/crystal_enemy.png-47c4105ce5ff19d6a767c397a2a82c0d.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@ -21,7 +21,7 @@ compress/lossy_quality=0.7
|
|||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
compress/channel_pack=0
|
compress/channel_pack=0
|
||||||
mipmaps/generate=false
|
mipmaps/generate=true
|
||||||
mipmaps/limit=-1
|
mipmaps/limit=-1
|
||||||
roughness/mode=0
|
roughness/mode=0
|
||||||
roughness/src_normal=""
|
roughness/src_normal=""
|
||||||
@ -31,4 +31,4 @@ process/normal_map_invert_y=false
|
|||||||
process/hdr_as_srgb=false
|
process/hdr_as_srgb=false
|
||||||
process/hdr_clamp_exposure=false
|
process/hdr_clamp_exposure=false
|
||||||
process/size_limit=0
|
process/size_limit=0
|
||||||
detect_3d/compress_to=1
|
detect_3d/compress_to=0
|
58
Enemies/Crystalisk/crystal_enemy.tscn
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
[gd_scene load_steps=7 format=3 uid="uid://cveiaa0y66gln"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://bjo2q6vca5qlv" path="res://Worlds/GreenPlanet/Enemies/air_enemy.tscn" id="1_aormu"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://o6whohcbalui" path="res://Enemies/Crystalisk/crystal_enemy.glb" id="2_myjng"]
|
||||||
|
[ext_resource type="Script" uid="uid://cummt2be3r1gq" path="res://Scripts/hitbox.gd" id="3_myjng"]
|
||||||
|
|
||||||
|
[sub_resource type="ViewportTexture" id="ViewportTexture_c5uwa"]
|
||||||
|
viewport_path = NodePath("SubViewport")
|
||||||
|
|
||||||
|
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_c5uwa"]
|
||||||
|
radius = 0.332871
|
||||||
|
height = 1.415
|
||||||
|
|
||||||
|
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_d7aub"]
|
||||||
|
radius = 0.133503
|
||||||
|
height = 0.56
|
||||||
|
|
||||||
|
[node name="Dog" instance=ExtResource("1_aormu")]
|
||||||
|
|
||||||
|
[node name="Sprite3D" parent="." index="1"]
|
||||||
|
texture = SubResource("ViewportTexture_c5uwa")
|
||||||
|
|
||||||
|
[node name="crystal_enemy" parent="." index="7" instance=ExtResource("2_myjng")]
|
||||||
|
|
||||||
|
[node name="RemoteTransform3D" type="RemoteTransform3D" parent="crystal_enemy/Cube_001" index="0"]
|
||||||
|
remote_path = NodePath("../../../MiniHitbox2")
|
||||||
|
|
||||||
|
[node name="RemoteTransform3D" type="RemoteTransform3D" parent="crystal_enemy/Cube_002" index="0"]
|
||||||
|
remote_path = NodePath("../../../MiniHitbox")
|
||||||
|
|
||||||
|
[node name="AnimationPlayer" parent="crystal_enemy" index="3"]
|
||||||
|
autoplay = "Spin"
|
||||||
|
speed_scale = 2.0
|
||||||
|
|
||||||
|
[node name="MainHitbox" type="CollisionShape3D" parent="." index="8"]
|
||||||
|
shape = SubResource("CapsuleShape3D_c5uwa")
|
||||||
|
script = ExtResource("3_myjng")
|
||||||
|
metadata/_custom_type_script = "uid://cummt2be3r1gq"
|
||||||
|
|
||||||
|
[node name="MiniHitbox" type="CollisionShape3D" parent="." index="9"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.601335, 0.59523, 0)
|
||||||
|
shape = SubResource("CapsuleShape3D_d7aub")
|
||||||
|
script = ExtResource("3_myjng")
|
||||||
|
critical_zone = true
|
||||||
|
metadata/_custom_type_script = "uid://cummt2be3r1gq"
|
||||||
|
|
||||||
|
[node name="MiniHitbox2" type="CollisionShape3D" parent="." index="10"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.599804, -0.600394, 0)
|
||||||
|
shape = SubResource("CapsuleShape3D_d7aub")
|
||||||
|
script = ExtResource("3_myjng")
|
||||||
|
critical_zone = true
|
||||||
|
metadata/_custom_type_script = "uid://cummt2be3r1gq"
|
||||||
|
|
||||||
|
[connection signal="took_damage" from="MainHitbox" to="Health" method="take_damage"]
|
||||||
|
[connection signal="took_damage" from="MiniHitbox" to="Health" method="take_damage"]
|
||||||
|
[connection signal="took_damage" from="MiniHitbox2" to="Health" method="take_damage"]
|
||||||
|
|
||||||
|
[editable path="crystal_enemy"]
|
13
Enemies/Crystalisk/crystal_enemy_mat.tres
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
[gd_resource type="ShaderMaterial" load_steps=3 format=3 uid="uid://dylmoyx1tasat"]
|
||||||
|
|
||||||
|
[ext_resource type="Shader" uid="uid://c5bffujq0l70k" path="res://jitter.gdshader" id="1_4cwdh"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://d01y8kogfuayr" path="res://Enemies/Crystalisk/crystal_enemy.png" id="2_l5awy"]
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
render_priority = 0
|
||||||
|
shader = ExtResource("1_4cwdh")
|
||||||
|
shader_parameter/affine_mapping = true
|
||||||
|
shader_parameter/albedo = ExtResource("2_l5awy")
|
||||||
|
shader_parameter/alpha_scissor = 0.5
|
||||||
|
shader_parameter/jitter = 0.25
|
||||||
|
shader_parameter/resolution = Vector2i(320, 240)
|
@ -1,8 +1,9 @@
|
|||||||
[gd_resource type="Resource" script_class="Enemy" load_steps=6 format=3 uid="uid://8eba45hql7bo"]
|
[gd_resource type="Resource" script_class="Enemy" load_steps=7 format=3 uid="uid://8eba45hql7bo"]
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://cbwxa2a4hfcy4" path="res://Scripts/Resources/enemy.gd" id="1_ivs7a"]
|
[ext_resource type="Script" uid="uid://cbwxa2a4hfcy4" path="res://Scripts/Resources/enemy.gd" id="1_ivs7a"]
|
||||||
[ext_resource type="Texture2D" uid="uid://cdnhe2mi5c5ln" path="res://Assets/Textures/dead_eye_dog.png" id="1_r8gpy"]
|
[ext_resource type="Texture2D" uid="uid://cdnhe2mi5c5ln" path="res://Assets/Textures/dead_eye_dog.png" id="1_r8gpy"]
|
||||||
[ext_resource type="Texture2D" uid="uid://g00wwrlxxdc5" path="res://Assets/Textures/icon_eye_dog.png" id="2_tyyee"]
|
[ext_resource type="Texture2D" uid="uid://g00wwrlxxdc5" path="res://Assets/Textures/icon_eye_dog.png" id="2_tyyee"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://bvq6tbkuv2mfp" path="res://Enemies/EyeDog/eye_dog.tscn" id="3_tyyee"]
|
||||||
[ext_resource type="Texture2D" uid="uid://dj13g1w14mekw" path="res://Assets/Textures/eye_dog.png" id="4_7ypa6"]
|
[ext_resource type="Texture2D" uid="uid://dj13g1w14mekw" path="res://Assets/Textures/eye_dog.png" id="4_7ypa6"]
|
||||||
|
|
||||||
[sub_resource type="AtlasTexture" id="AtlasTexture_n6kdu"]
|
[sub_resource type="AtlasTexture" id="AtlasTexture_n6kdu"]
|
||||||
@ -15,6 +16,7 @@ resource_local_to_scene = true
|
|||||||
script = ExtResource("1_ivs7a")
|
script = ExtResource("1_ivs7a")
|
||||||
title = "dog"
|
title = "dog"
|
||||||
target_type = 1
|
target_type = 1
|
||||||
|
scene = ExtResource("3_tyyee")
|
||||||
icon = ExtResource("2_tyyee")
|
icon = ExtResource("2_tyyee")
|
||||||
death_sprite = ExtResource("1_r8gpy")
|
death_sprite = ExtResource("1_r8gpy")
|
||||||
sprite = SubResource("AtlasTexture_n6kdu")
|
sprite = SubResource("AtlasTexture_n6kdu")
|
||||||
@ -23,13 +25,13 @@ health = 180
|
|||||||
penalty = 10
|
penalty = 10
|
||||||
movement_speed = 1.2
|
movement_speed = 1.2
|
||||||
spawn_cooldown = 1.2
|
spawn_cooldown = 1.2
|
||||||
common_group = 4
|
common_group = 8
|
||||||
common_cost = 1
|
common_cost = 1
|
||||||
uncommon_group = 6
|
uncommon_group = 12
|
||||||
uncommon_cost = 2
|
uncommon_cost = 2
|
||||||
rare_group = 8
|
rare_group = 18
|
||||||
rare_cost = 3
|
rare_cost = 3
|
||||||
epic_group = 10
|
epic_group = 26
|
||||||
epic_cost = 4
|
epic_cost = 5
|
||||||
legendary_group = 12
|
legendary_group = 34
|
||||||
legendary_cost = 5
|
legendary_cost = 6
|
100
Enemies/EyeDog/eye_dog.tscn
Normal file
@ -0,0 +1,100 @@
|
|||||||
|
[gd_scene load_steps=14 format=3 uid="uid://bvq6tbkuv2mfp"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://ejqql2660u6h" path="res://Worlds/GreenPlanet/Enemies/enemy_controller.gd" id="1_1dh2f"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://canrxnpxcugc2" path="res://Scenes/corpse.tscn" id="2_1dh2f"]
|
||||||
|
[ext_resource type="Script" uid="uid://bamhci3kawuyt" path="res://Scripts/health.gd" id="2_bckix"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://cqtew0t8sttpm" path="res://Scenes/damage_particle.tscn" id="3_wnwjl"]
|
||||||
|
[ext_resource type="Script" uid="uid://cummt2be3r1gq" path="res://Scripts/hitbox.gd" id="6_3v8fr"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://b1fn60m6xfcsq" path="res://Assets/Textures/minimap_enemy.png" id="7_bkkhh"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://hjq3nrnumklp" path="res://Scenes/health_bar.tscn" id="8_k2835"]
|
||||||
|
[ext_resource type="Script" uid="uid://b62xnsbki8axa" path="res://Scripts/EnemyAI/pathing_controller.gd" id="9_t4oco"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://dlhx6r23m5ceg" path="res://Enemies/EyeDog/eyedog.glb" id="10_h25mw"]
|
||||||
|
[ext_resource type="Script" uid="uid://cojjgevmbhwal" path="res://Scripts/status_effector.gd" id="11_kpdsm"]
|
||||||
|
|
||||||
|
[sub_resource type="SphereShape3D" id="SphereShape3D_cavbv"]
|
||||||
|
radius = 0.42
|
||||||
|
|
||||||
|
[sub_resource type="SphereShape3D" id="SphereShape3D_h25mw"]
|
||||||
|
radius = 0.151085
|
||||||
|
|
||||||
|
[sub_resource type="ViewportTexture" id="ViewportTexture_1kwxq"]
|
||||||
|
viewport_path = NodePath("SubViewport")
|
||||||
|
|
||||||
|
[node name="Node3D" type="CharacterBody3D" node_paths=PackedStringArray("status_manager", "movement_controller", "health", "d_n") groups=["Enemies"]]
|
||||||
|
collision_layer = 4
|
||||||
|
collision_mask = 0
|
||||||
|
script = ExtResource("1_1dh2f")
|
||||||
|
status_manager = NodePath("StatusEffector")
|
||||||
|
movement_controller = NodePath("PathingController")
|
||||||
|
health = NodePath("Health")
|
||||||
|
d_n = NodePath("Node3D")
|
||||||
|
corpse_scene = ExtResource("2_1dh2f")
|
||||||
|
metadata/_custom_type_script = "uid://ejqql2660u6h"
|
||||||
|
|
||||||
|
[node name="Health" type="Node" parent="."]
|
||||||
|
script = ExtResource("2_bckix")
|
||||||
|
damage_particle_scene = ExtResource("3_wnwjl")
|
||||||
|
|
||||||
|
[node name="Hitbox" type="CollisionShape3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.33811, 0.0832841)
|
||||||
|
shape = SubResource("SphereShape3D_cavbv")
|
||||||
|
script = ExtResource("6_3v8fr")
|
||||||
|
metadata/_custom_type_script = "uid://cummt2be3r1gq"
|
||||||
|
|
||||||
|
[node name="Hitbox2" type="CollisionShape3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.601201, -0.436369)
|
||||||
|
shape = SubResource("SphereShape3D_h25mw")
|
||||||
|
script = ExtResource("6_3v8fr")
|
||||||
|
critical_zone = true
|
||||||
|
metadata/_custom_type_script = "uid://cummt2be3r1gq"
|
||||||
|
|
||||||
|
[node name="HealthBar" type="Sprite3D" parent="."]
|
||||||
|
transform = Transform3D(0.2, 0, 0, 0, 0.2, 0, 0, 0, 0.2, 0, 1.20821, 0)
|
||||||
|
sorting_offset = 1.0
|
||||||
|
pixel_size = 0.02
|
||||||
|
billboard = 1
|
||||||
|
texture_filter = 0
|
||||||
|
texture = SubResource("ViewportTexture_1kwxq")
|
||||||
|
|
||||||
|
[node name="MinimapIcon" type="Sprite3D" parent="."]
|
||||||
|
transform = Transform3D(2, 0, 0, 0, -8.74228e-08, 2, 0, -2, -8.74228e-08, 0, 1.40824, 0)
|
||||||
|
layers = 4
|
||||||
|
texture_filter = 0
|
||||||
|
texture = ExtResource("7_bkkhh")
|
||||||
|
|
||||||
|
[node name="SubViewport" type="SubViewport" parent="."]
|
||||||
|
transparent_bg = true
|
||||||
|
size = Vector2i(200, 55)
|
||||||
|
render_target_update_mode = 4
|
||||||
|
|
||||||
|
[node name="HBoxContainer" type="HBoxContainer" parent="SubViewport"]
|
||||||
|
anchors_preset = 10
|
||||||
|
anchor_right = 1.0
|
||||||
|
offset_bottom = 32.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
alignment = 1
|
||||||
|
|
||||||
|
[node name="HealthBar" parent="SubViewport" instance=ExtResource("8_k2835")]
|
||||||
|
visible = false
|
||||||
|
offset_top = 36.0
|
||||||
|
offset_bottom = 236.0
|
||||||
|
|
||||||
|
[node name="PathingController" type="Node" parent="." node_paths=PackedStringArray("character")]
|
||||||
|
script = ExtResource("9_t4oco")
|
||||||
|
character = NodePath("..")
|
||||||
|
|
||||||
|
[node name="StatusEffector" type="Node" parent="." node_paths=PackedStringArray("sprite_container")]
|
||||||
|
script = ExtResource("11_kpdsm")
|
||||||
|
sprite_container = NodePath("../SubViewport/HBoxContainer")
|
||||||
|
metadata/_custom_type_script = "uid://cojjgevmbhwal"
|
||||||
|
|
||||||
|
[node name="Node3D" type="Node3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.39813, 0)
|
||||||
|
|
||||||
|
[node name="eyedog" parent="." instance=ExtResource("10_h25mw")]
|
||||||
|
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0.3764, 0)
|
||||||
|
|
||||||
|
[connection signal="health_changed" from="Health" to="SubViewport/HealthBar" method="on_health_changed"]
|
||||||
|
[connection signal="health_depleted" from="Health" to="." method="die"]
|
||||||
|
[connection signal="took_damage" from="Hitbox" to="Health" method="take_damage"]
|
||||||
|
[connection signal="took_damage" from="Hitbox2" to="Health" method="take_damage"]
|
BIN
Enemies/EyeDog/eyedog.glb
Normal file
44
Enemies/EyeDog/eyedog.glb.import
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="scene"
|
||||||
|
importer_version=1
|
||||||
|
type="PackedScene"
|
||||||
|
uid="uid://dlhx6r23m5ceg"
|
||||||
|
path="res://.godot/imported/eyedog.glb-066d1d46e7943baa72fec506b08447f4.scn"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Enemies/EyeDog/eyedog.glb"
|
||||||
|
dest_files=["res://.godot/imported/eyedog.glb-066d1d46e7943baa72fec506b08447f4.scn"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
nodes/root_type=""
|
||||||
|
nodes/root_name=""
|
||||||
|
nodes/apply_root_scale=true
|
||||||
|
nodes/root_scale=0.08
|
||||||
|
nodes/import_as_skeleton_bones=false
|
||||||
|
nodes/use_node_type_suffixes=true
|
||||||
|
meshes/ensure_tangents=true
|
||||||
|
meshes/generate_lods=true
|
||||||
|
meshes/create_shadow_meshes=true
|
||||||
|
meshes/light_baking=1
|
||||||
|
meshes/lightmap_texel_size=0.2
|
||||||
|
meshes/force_disable_compression=false
|
||||||
|
skins/use_named_skins=true
|
||||||
|
animation/import=true
|
||||||
|
animation/fps=30
|
||||||
|
animation/trimming=false
|
||||||
|
animation/remove_immutable_tracks=true
|
||||||
|
animation/import_rest_as_RESET=false
|
||||||
|
import_script/path=""
|
||||||
|
_subresources={
|
||||||
|
"materials": {
|
||||||
|
"Material": {
|
||||||
|
"use_external/enabled": true,
|
||||||
|
"use_external/path": "uid://bo82o88d7vo1x"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
gltf/naming_version=1
|
||||||
|
gltf/embedded_image_handling=1
|
BIN
Enemies/EyeDog/eyedog_eyedog_tex.png
Normal file
After ![]() (image error) Size: 4.8 KiB |
38
Enemies/EyeDog/eyedog_eyedog_tex.png.import
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://wx4d2upch81n"
|
||||||
|
path.s3tc="res://.godot/imported/eyedog_eyedog_tex.png-1f14344e8bf95fbf8ece2e5fc948c9ad.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "27dfa54e4c46b8fd6e6f12450e4ca070"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Enemies/EyeDog/eyedog_eyedog_tex.png"
|
||||||
|
dest_files=["res://.godot/imported/eyedog_eyedog_tex.png-1f14344e8bf95fbf8ece2e5fc948c9ad.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
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=0
|
13
Enemies/EyeDog/psx_model_material.tres
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
[gd_resource type="ShaderMaterial" load_steps=3 format=3 uid="uid://bo82o88d7vo1x"]
|
||||||
|
|
||||||
|
[ext_resource type="Shader" uid="uid://c5bffujq0l70k" path="res://jitter.gdshader" id="1_crvh7"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://wx4d2upch81n" path="res://Enemies/EyeDog/eyedog_eyedog_tex.png" id="2_j3hec"]
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
render_priority = 0
|
||||||
|
shader = ExtResource("1_crvh7")
|
||||||
|
shader_parameter/affine_mapping = true
|
||||||
|
shader_parameter/albedo = ExtResource("2_j3hec")
|
||||||
|
shader_parameter/alpha_scissor = 0.5
|
||||||
|
shader_parameter/jitter = 0.25
|
||||||
|
shader_parameter/resolution = Vector2i(320, 240)
|
190
PCs/PathEditTool/path_edit_tool.gd
Normal file
@ -0,0 +1,190 @@
|
|||||||
|
class_name PathEditTool extends Node3D
|
||||||
|
|
||||||
|
@export var hero: Hero
|
||||||
|
@export var inventory: Inventory
|
||||||
|
@export var ray: RayCast3D
|
||||||
|
@export var wall_preview: TowerBase
|
||||||
|
@export var progress_bar: TextureProgressBar
|
||||||
|
|
||||||
|
var enabled: bool = true
|
||||||
|
var level: Level
|
||||||
|
var point: FlowNode
|
||||||
|
var obstacle_last_point: int = -1
|
||||||
|
var valid_point: bool = false # a point is valid if the path would still be traversable overall if this point was made untraversable
|
||||||
|
var tower_preview: Tower
|
||||||
|
var ray_collider: Object
|
||||||
|
var ray_point: Vector3
|
||||||
|
var last_point: FlowNode
|
||||||
|
var last_tower_base: TowerBase
|
||||||
|
|
||||||
|
var interact_key_held: bool = false
|
||||||
|
var interacted_once: bool = false
|
||||||
|
var interact_held_time: float = 0.0
|
||||||
|
var interact_hold_time: float = 0.4
|
||||||
|
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
var c: Color = Color.GREEN
|
||||||
|
c.a = 0.8
|
||||||
|
wall_preview.set_color(c)
|
||||||
|
wall_preview.set_float(0.0)
|
||||||
|
wall_preview.toggle_collision()
|
||||||
|
|
||||||
|
|
||||||
|
func _process(delta: float) -> void:
|
||||||
|
if !enabled:
|
||||||
|
reset()
|
||||||
|
return
|
||||||
|
|
||||||
|
if interact_key_held:
|
||||||
|
if !interacted_once:
|
||||||
|
if valid_point and hero.currency >= Data.wall_cost and ray_collider and point.buildable:
|
||||||
|
interact_held_time += delta
|
||||||
|
set_progress_percent(interact_held_time / interact_hold_time)
|
||||||
|
wall_preview.set_float(interact_held_time / interact_hold_time)
|
||||||
|
if interact_held_time >= interact_hold_time:
|
||||||
|
set_progress_percent(0)
|
||||||
|
interacted_once = true
|
||||||
|
build_wall()
|
||||||
|
elif ray_collider is TowerBase:
|
||||||
|
interact_held_time += delta
|
||||||
|
set_progress_percent(interact_held_time / interact_hold_time)
|
||||||
|
if interact_held_time >= interact_hold_time:
|
||||||
|
set_progress_percent(0)
|
||||||
|
interacted_once = true
|
||||||
|
refund_wall(ray_collider)
|
||||||
|
else:
|
||||||
|
interact_held_time = 0.0
|
||||||
|
interacted_once = false
|
||||||
|
set_progress_percent(0)
|
||||||
|
wall_preview.set_float(0.0)
|
||||||
|
|
||||||
|
if !interacted_once and ray.is_colliding():
|
||||||
|
#if statement makes sure once the building animation has started then
|
||||||
|
#the position the wall builds in is already decided and moving the mouse
|
||||||
|
#around isnt going to make the resulting
|
||||||
|
#wall teleport to the new mouse location
|
||||||
|
if !interact_key_held:
|
||||||
|
wall_preview.set_visible(true)
|
||||||
|
if is_instance_valid(ray_collider) and ray_collider is TowerBase:
|
||||||
|
level.walls[ray_collider.point].set_float(1.0)
|
||||||
|
ray_collider = ray.get_collider()
|
||||||
|
ray_point = ray.get_collision_point()
|
||||||
|
|
||||||
|
if ray_collider is TowerBase:
|
||||||
|
process_looking_at_tower()
|
||||||
|
elif level:
|
||||||
|
process_looking_at_level()
|
||||||
|
elif !interact_key_held:
|
||||||
|
reset()
|
||||||
|
if !valid_point:
|
||||||
|
wall_preview.set_visible(false)
|
||||||
|
if point:
|
||||||
|
wall_preview.global_position = point.global_position
|
||||||
|
wall_preview.global_rotation = Vector3.ZERO
|
||||||
|
|
||||||
|
|
||||||
|
func reset() -> void:
|
||||||
|
if is_instance_valid(ray_collider) and ray_collider is TowerBase and level.walls.has(ray_collider.point):
|
||||||
|
level.walls[ray_collider.point].set_float(1.0)
|
||||||
|
ray_collider = null
|
||||||
|
delete_tower_preview()
|
||||||
|
wall_preview.set_visible(false)
|
||||||
|
clear_previous_point()
|
||||||
|
last_point = null
|
||||||
|
|
||||||
|
|
||||||
|
func process_looking_at_level() -> void:
|
||||||
|
if tower_preview:
|
||||||
|
delete_tower_preview()
|
||||||
|
point = level.flow_field.get_closest_buildable_point(ray_point)
|
||||||
|
if level.walls.has(point) or !point.buildable or hero.currency < Data.wall_cost:
|
||||||
|
wall_preview.set_visible(false)
|
||||||
|
valid_point = false
|
||||||
|
clear_previous_point()
|
||||||
|
last_point = point
|
||||||
|
else:
|
||||||
|
if last_point != point:
|
||||||
|
clear_previous_point()
|
||||||
|
last_point = point
|
||||||
|
if !level.walls.has(point) and level.flow_field.traversable_after_blocking_point(point):
|
||||||
|
level.flow_field.toggle_traversable(point)
|
||||||
|
wall_preview.set_float(0.0)
|
||||||
|
valid_point = true
|
||||||
|
else:
|
||||||
|
valid_point = false
|
||||||
|
|
||||||
|
|
||||||
|
func clear_previous_point() -> void:
|
||||||
|
if last_point and !level.walls.has(last_point) and !last_point.traversable:
|
||||||
|
level.flow_field.toggle_traversable(last_point)
|
||||||
|
|
||||||
|
|
||||||
|
func process_looking_at_tower() -> void:
|
||||||
|
valid_point = false
|
||||||
|
point = ray_collider.point
|
||||||
|
if last_point != point:
|
||||||
|
clear_previous_point()
|
||||||
|
|
||||||
|
if tower_preview:
|
||||||
|
delete_tower_preview()
|
||||||
|
wall_preview.set_visible(false)
|
||||||
|
ray_collider.set_color(Color.RED)
|
||||||
|
ray_collider.set_float(0.0)
|
||||||
|
if inventory.contents.size() > 0 and !ray_collider.has_card:
|
||||||
|
if ray_collider != last_tower_base or inventory.selected_item != inventory.contents.keys()[hero.inventory_selected_index]:
|
||||||
|
spawn_tower_preview()
|
||||||
|
|
||||||
|
|
||||||
|
func spawn_tower_preview() -> void:
|
||||||
|
delete_tower_preview()
|
||||||
|
last_tower_base = ray_collider
|
||||||
|
var card: Card = inventory.contents.keys()[hero.inventory_selected_index]
|
||||||
|
tower_preview = card.turret_scene.instantiate() as Tower
|
||||||
|
tower_preview.stats = card.tower_stats
|
||||||
|
tower_preview.position = Vector3.UP
|
||||||
|
tower_preview.preview_range(true)
|
||||||
|
ray_collider.add_child(tower_preview)
|
||||||
|
|
||||||
|
|
||||||
|
func delete_tower_preview() -> void:
|
||||||
|
last_tower_base = null
|
||||||
|
if is_instance_valid(tower_preview):
|
||||||
|
tower_preview.queue_free()
|
||||||
|
tower_preview = null
|
||||||
|
|
||||||
|
|
||||||
|
func interact() -> void:
|
||||||
|
if ray_collider is TowerBase:
|
||||||
|
var tower_base: TowerBase = ray_collider as TowerBase
|
||||||
|
put_card_in_tower_base(tower_base)
|
||||||
|
|
||||||
|
|
||||||
|
func build_wall() -> void:
|
||||||
|
if point and valid_point and hero.currency >= Data.wall_cost:
|
||||||
|
hero.currency -= Data.wall_cost
|
||||||
|
level.set_wall(point, multiplayer.get_unique_id())
|
||||||
|
wall_preview.visible = false
|
||||||
|
|
||||||
|
|
||||||
|
func refund_wall(wall: TowerBase) -> void:
|
||||||
|
if !is_instance_valid(wall):
|
||||||
|
return
|
||||||
|
if wall.has_card:
|
||||||
|
wall.remove_card()
|
||||||
|
level.remove_wall(wall.point)
|
||||||
|
|
||||||
|
|
||||||
|
func put_card_in_tower_base(tower_base: TowerBase) -> void:
|
||||||
|
if tower_base.has_card:
|
||||||
|
tower_base.remove_card()
|
||||||
|
elif inventory.size > 0:
|
||||||
|
var card: Card = inventory.remove_at(hero.inventory_selected_index)
|
||||||
|
if !inventory.contents.has(card):
|
||||||
|
hero.decrement_selected()
|
||||||
|
tower_base.add_card(card, multiplayer.get_unique_id())
|
||||||
|
hero.place_card_audio.play()
|
||||||
|
|
||||||
|
|
||||||
|
func set_progress_percent(value: float) -> void:
|
||||||
|
progress_bar.value = progress_bar.max_value * value
|
@ -1,26 +1,20 @@
|
|||||||
[gd_scene load_steps=5 format=3 uid="uid://dqt1ggtkpkuhs"]
|
[gd_scene load_steps=4 format=3 uid="uid://dqt1ggtkpkuhs"]
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://ckm02cx0ai624" path="res://Scripts/edit_tool.gd" id="1_yf8lt"]
|
[ext_resource type="Script" uid="uid://ckm02cx0ai624" path="res://PCs/PathEditTool/path_edit_tool.gd" id="1_l8cck"]
|
||||||
[ext_resource type="PackedScene" uid="uid://ddbbwx0yy16lh" path="res://Scenes/TowerBase/tower_base.tscn" id="2_r3632"]
|
[ext_resource type="PackedScene" uid="uid://ddbbwx0yy16lh" path="res://Scenes/TowerBase/tower_base.tscn" id="2_pjtpe"]
|
||||||
[ext_resource type="Texture2D" uid="uid://gh4yvnerf1f5" path="res://Assets/Textures/radial.png" id="3_a323w"]
|
[ext_resource type="Texture2D" uid="uid://gh4yvnerf1f5" path="res://Assets/Textures/radial.png" id="3_fs118"]
|
||||||
|
|
||||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_36ot1"]
|
[node name="PathEditTool" type="Node3D" node_paths=PackedStringArray("ray", "wall_preview", "progress_bar")]
|
||||||
transparency = 1
|
script = ExtResource("1_l8cck")
|
||||||
depth_draw_mode = 1
|
|
||||||
|
|
||||||
[node name="EditTool" type="Node3D" node_paths=PackedStringArray("ray", "wall_preview", "progress_bar")]
|
|
||||||
script = ExtResource("1_yf8lt")
|
|
||||||
ray = NodePath("RayCast3D")
|
ray = NodePath("RayCast3D")
|
||||||
wall_preview = NodePath("WallPreview")
|
wall_preview = NodePath("WallPreview")
|
||||||
build_preview_material = SubResource("StandardMaterial3D_36ot1")
|
|
||||||
progress_bar = NodePath("ProgressBar")
|
progress_bar = NodePath("ProgressBar")
|
||||||
|
|
||||||
[node name="RayCast3D" type="RayCast3D" parent="."]
|
[node name="RayCast3D" type="RayCast3D" parent="."]
|
||||||
target_position = Vector3(0, 0, -20)
|
target_position = Vector3(0, 0, -20)
|
||||||
collision_mask = 25
|
collision_mask = 25
|
||||||
|
|
||||||
[node name="WallPreview" parent="." instance=ExtResource("2_r3632")]
|
[node name="WallPreview" parent="." instance=ExtResource("2_pjtpe")]
|
||||||
visible = false
|
|
||||||
|
|
||||||
[node name="ProgressBar" type="TextureProgressBar" parent="."]
|
[node name="ProgressBar" type="TextureProgressBar" parent="."]
|
||||||
anchors_preset = 8
|
anchors_preset = 8
|
||||||
@ -38,4 +32,4 @@ scale = Vector2(0.5, 0.5)
|
|||||||
pivot_offset = Vector2(90, 90)
|
pivot_offset = Vector2(90, 90)
|
||||||
step = 0.0
|
step = 0.0
|
||||||
fill_mode = 4
|
fill_mode = 4
|
||||||
texture_progress = ExtResource("3_a323w")
|
texture_progress = ExtResource("3_fs118")
|
65
PCs/hero.gd
@ -10,7 +10,7 @@ signal ready_state_changed(state: bool)
|
|||||||
@export var left_hand: Node3D
|
@export var left_hand: Node3D
|
||||||
@export var right_hand: Node3D
|
@export var right_hand: Node3D
|
||||||
@export var right_hand_animator: AnimationPlayer
|
@export var right_hand_animator: AnimationPlayer
|
||||||
@export var edit_tool: EditTool
|
@export var edit_tool: PathEditTool
|
||||||
@export var gauntlet_sprite: Sprite3D
|
@export var gauntlet_sprite: Sprite3D
|
||||||
@export var sprite: EightDirectionSprite3D
|
@export var sprite: EightDirectionSprite3D
|
||||||
@export var hand_sprite: Sprite2D
|
@export var hand_sprite: Sprite2D
|
||||||
@ -35,6 +35,7 @@ signal ready_state_changed(state: bool)
|
|||||||
@export var swap_off_audio: AudioStreamPlayer
|
@export var swap_off_audio: AudioStreamPlayer
|
||||||
@export var swap_on_audio: AudioStreamPlayer
|
@export var swap_on_audio: AudioStreamPlayer
|
||||||
|
|
||||||
|
var game_manager: GameManager
|
||||||
var hovering_item: InteractButton = null
|
var hovering_item: InteractButton = null
|
||||||
var weapons_spawn_count: int = 0 #Used to prevent node name collisions for multiplayer
|
var weapons_spawn_count: int = 0 #Used to prevent node name collisions for multiplayer
|
||||||
var inventory_selected_index: int = 0
|
var inventory_selected_index: int = 0
|
||||||
@ -120,7 +121,7 @@ func _process(delta: float) -> void:
|
|||||||
hovering_item.disable_hover_effect()
|
hovering_item.disable_hover_effect()
|
||||||
hovering_item = null
|
hovering_item = null
|
||||||
|
|
||||||
if edit_tool.is_looking_at_tower_base:
|
if is_instance_valid(edit_tool.ray_collider) and edit_tool.ray_collider is TowerBase:
|
||||||
card_sprites[0].view_tower()
|
card_sprites[0].view_tower()
|
||||||
else:
|
else:
|
||||||
card_sprites[0].view_weapon()
|
card_sprites[0].view_weapon()
|
||||||
@ -175,7 +176,13 @@ func _process(delta: float) -> void:
|
|||||||
movement.can_sprint = false
|
movement.can_sprint = false
|
||||||
if Input.is_action_pressed("Secondary Fire"):
|
if Input.is_action_pressed("Secondary Fire"):
|
||||||
movement.can_sprint = false
|
movement.can_sprint = false
|
||||||
if Input.is_action_just_pressed("Equip In Gauntlet"):
|
if Input.is_action_just_pressed("Equip Primary Weapon"):
|
||||||
|
if equipped_weapon == 1 and weapons[0]:
|
||||||
|
swap_weapons()
|
||||||
|
if Input.is_action_just_pressed("Equip Secondary Weapon"):
|
||||||
|
if equipped_weapon == 0 and weapons[1]:
|
||||||
|
swap_weapons()
|
||||||
|
if Input.is_action_just_pressed("Swap Weapons"):
|
||||||
swap_weapons()
|
swap_weapons()
|
||||||
|
|
||||||
if movement.sprinting:
|
if movement.sprinting:
|
||||||
@ -185,10 +192,10 @@ func _process(delta: float) -> void:
|
|||||||
camera.fov = Data.graphics.hfov * (1.0 / movement.zoom_factor)
|
camera.fov = Data.graphics.hfov * (1.0 / movement.zoom_factor)
|
||||||
|
|
||||||
if Input.is_action_just_pressed("View Map"):
|
if Input.is_action_just_pressed("View Map"):
|
||||||
hud.maximise_minimap(Game.level)
|
hud.maximise_minimap()
|
||||||
#Input.mouse_mode = Input.MOUSE_MODE_VISIBLE
|
#Input.mouse_mode = Input.MOUSE_MODE_VISIBLE
|
||||||
if Input.is_action_just_released("View Map"):
|
if Input.is_action_just_released("View Map"):
|
||||||
hud.minimize_minimap(self)
|
hud.minimize_minimap()
|
||||||
#Input.mouse_mode = Input.MOUSE_MODE_CAPTURED
|
#Input.mouse_mode = Input.MOUSE_MODE_CAPTURED
|
||||||
check_left_hand_valid()
|
check_left_hand_valid()
|
||||||
|
|
||||||
@ -216,6 +223,9 @@ func _unhandled_input(event: InputEvent) -> void:
|
|||||||
if event.is_action_pressed("Pause"):
|
if event.is_action_pressed("Pause"):
|
||||||
var menu: PauseMenu = pause_menu_scene.instantiate() as PauseMenu
|
var menu: PauseMenu = pause_menu_scene.instantiate() as PauseMenu
|
||||||
pause()
|
pause()
|
||||||
|
menu.game_manager = game_manager
|
||||||
|
menu.quit_to_desktop_pressed.connect(game_manager.quit_to_desktop)
|
||||||
|
menu.quit_to_main_menu_pressed.connect(game_manager.scene_switch_main_menu)
|
||||||
menu.closed.connect(unpause)
|
menu.closed.connect(unpause)
|
||||||
hud.add_child(menu)
|
hud.add_child(menu)
|
||||||
|
|
||||||
@ -266,7 +276,6 @@ func enter_editing_mode(value: int) -> void:
|
|||||||
weapons_active = false
|
weapons_active = false
|
||||||
hud.set_wave_count(value + 1)
|
hud.set_wave_count(value + 1)
|
||||||
hud.set_energy_visible(false)
|
hud.set_energy_visible(false)
|
||||||
hud.set_offhand_energy_visible(false)
|
|
||||||
hud.grow_wave_start_label()
|
hud.grow_wave_start_label()
|
||||||
editing_mode = true
|
editing_mode = true
|
||||||
edit_tool.enabled = true
|
edit_tool.enabled = true
|
||||||
@ -282,17 +291,18 @@ func exit_editing_mode(value: int) -> void:
|
|||||||
hud.set_wave_count(value)
|
hud.set_wave_count(value)
|
||||||
#if !weapon and offhand_weapon:
|
#if !weapon and offhand_weapon:
|
||||||
# swap_weapons()
|
# swap_weapons()
|
||||||
|
var offhand_weapon: Weapon = weapons[0] if equipped_weapon == 1 else weapons[1]
|
||||||
|
if offhand_weapon:
|
||||||
|
offhand_weapon.current_energy = offhand_weapon.max_energy
|
||||||
|
#offhand_weapon.energy_changed.emit(offhand_weapon.current_energy)
|
||||||
|
if (!weapons[equipped_weapon] and offhand_weapon) or (weapons[0] and equipped_weapon == 1):
|
||||||
|
swap_weapons()
|
||||||
if weapons[equipped_weapon]:
|
if weapons[equipped_weapon]:
|
||||||
hud.set_energy_visible(true)
|
hud.set_energy_visible(true)
|
||||||
#weapon.set_visible(false)
|
#weapon.set_visible(false)
|
||||||
weapons[equipped_weapon].current_energy = weapons[equipped_weapon].max_energy
|
weapons[equipped_weapon].current_energy = weapons[equipped_weapon].max_energy
|
||||||
#this had to be commented out coz the new energy bar thinks "energy changed" is "energy used"
|
#this had to be commented out coz the new energy bar thinks "energy changed" is "energy used"
|
||||||
#weapons[equipped_weapon].energy_changed.emit(weapons[equipped_weapon].current_energy)
|
#weapons[equipped_weapon].energy_changed.emit(weapons[equipped_weapon].current_energy)
|
||||||
var offhand_weapon: Weapon = weapons[0] if equipped_weapon == 1 else weapons[1]
|
|
||||||
if offhand_weapon:
|
|
||||||
hud.set_offhand_energy_visible(true)
|
|
||||||
offhand_weapon.current_energy = offhand_weapon.max_energy
|
|
||||||
#offhand_weapon.energy_changed.emit(offhand_weapon.current_energy)
|
|
||||||
edit_tool.enabled = false
|
edit_tool.enabled = false
|
||||||
edit_tool.delete_tower_preview()
|
edit_tool.delete_tower_preview()
|
||||||
left_hand.visible = false
|
left_hand.visible = false
|
||||||
@ -355,13 +365,9 @@ func equip_weapon(slot: int = 0) -> void:
|
|||||||
if weapons[slot].stats.energy_type == Data.EnergyType.DISCRETE:
|
if weapons[slot].stats.energy_type == Data.EnergyType.DISCRETE:
|
||||||
hud.new_energy_bar.create_discrete_icons(weapons[slot].max_energy)
|
hud.new_energy_bar.create_discrete_icons(weapons[slot].max_energy)
|
||||||
else:
|
else:
|
||||||
weapons[slot].energy_spent.connect(hud.new_energy_bar2.use_energy)
|
weapons[slot].energy_recharged.connect(hud.new_energy_bar.gain_secondary_energy)
|
||||||
weapons[slot].energy_recharged.connect(hud.new_energy_bar2.gain_energy)
|
hud.new_energy_bar.secondary_max_energy = weapons[slot].max_energy
|
||||||
hud.new_energy_bar2.max_energy = weapons[slot].max_energy
|
hud.new_energy_bar.secondary_energy = weapons[slot].current_energy
|
||||||
if weapons[slot].stats.energy_type == Data.EnergyType.CONTINUOUS:
|
|
||||||
hud.new_energy_bar2.enable_progress_bar()
|
|
||||||
if weapons[slot].stats.energy_type == Data.EnergyType.DISCRETE:
|
|
||||||
hud.new_energy_bar2.create_discrete_icons(weapons[slot].max_energy)
|
|
||||||
|
|
||||||
|
|
||||||
func stow_weapon(slot: int = 0) -> void:
|
func stow_weapon(slot: int = 0) -> void:
|
||||||
@ -370,21 +376,15 @@ func stow_weapon(slot: int = 0) -> void:
|
|||||||
weapons[slot].visible = false
|
weapons[slot].visible = false
|
||||||
weapons[slot].energy_spent.disconnect(hud.new_energy_bar.use_energy)
|
weapons[slot].energy_spent.disconnect(hud.new_energy_bar.use_energy)
|
||||||
weapons[slot].energy_recharged.disconnect(hud.new_energy_bar.gain_energy)
|
weapons[slot].energy_recharged.disconnect(hud.new_energy_bar.gain_energy)
|
||||||
weapons[slot].energy_spent.connect(hud.new_energy_bar2.use_energy)
|
weapons[slot].energy_recharged.connect(hud.new_energy_bar.gain_secondary_energy)
|
||||||
weapons[slot].energy_recharged.connect(hud.new_energy_bar2.gain_energy)
|
hud.new_energy_bar.secondary_max_energy = weapons[slot].max_energy
|
||||||
hud.set_offhand_energy(weapons[slot].current_energy)
|
hud.new_energy_bar.secondary_energy = weapons[slot].current_energy
|
||||||
hud.new_energy_bar2.max_energy = weapons[slot].max_energy
|
|
||||||
if weapons[slot].stats.energy_type == Data.EnergyType.CONTINUOUS:
|
|
||||||
hud.new_energy_bar2.enable_progress_bar()
|
|
||||||
if weapons[slot].stats.energy_type == Data.EnergyType.DISCRETE:
|
|
||||||
hud.new_energy_bar2.create_discrete_icons(weapons[slot].max_energy)
|
|
||||||
|
|
||||||
|
|
||||||
func show_weapon(slot: int = 0) -> void:
|
func show_weapon(slot: int = 0) -> void:
|
||||||
weapons[slot].release_trigger()
|
weapons[slot].release_trigger()
|
||||||
weapons[slot].release_second_trigger()
|
weapons[slot].release_second_trigger()
|
||||||
weapons[slot].energy_spent.disconnect(hud.new_energy_bar2.use_energy)
|
weapons[slot].energy_recharged.disconnect(hud.new_energy_bar.gain_secondary_energy)
|
||||||
weapons[slot].energy_recharged.disconnect(hud.new_energy_bar2.gain_energy)
|
|
||||||
weapons[slot].energy_spent.connect(hud.new_energy_bar.use_energy)
|
weapons[slot].energy_spent.connect(hud.new_energy_bar.use_energy)
|
||||||
weapons[slot].energy_recharged.connect(hud.new_energy_bar.gain_energy)
|
weapons[slot].energy_recharged.connect(hud.new_energy_bar.gain_energy)
|
||||||
hud.set_weapon_energy(weapons[slot].current_energy, weapons[slot].stats.energy_type)
|
hud.set_weapon_energy(weapons[slot].current_energy, weapons[slot].stats.energy_type)
|
||||||
@ -393,6 +393,10 @@ func show_weapon(slot: int = 0) -> void:
|
|||||||
hud.new_energy_bar.enable_progress_bar()
|
hud.new_energy_bar.enable_progress_bar()
|
||||||
if weapons[slot].stats.energy_type == Data.EnergyType.DISCRETE:
|
if weapons[slot].stats.energy_type == Data.EnergyType.DISCRETE:
|
||||||
hud.new_energy_bar.create_discrete_icons(weapons[slot].max_energy)
|
hud.new_energy_bar.create_discrete_icons(weapons[slot].max_energy)
|
||||||
|
hud.new_energy_bar.use_energy(weapons[slot].max_energy - weapons[slot].current_energy, weapons[slot].stats.energy_type)
|
||||||
|
var offhand: int = 0 if equipped_weapon == 1 else 1
|
||||||
|
if !weapons[offhand]:
|
||||||
|
hud.new_energy_bar.disable_secondary_energy()
|
||||||
|
|
||||||
|
|
||||||
func swap_weapons() -> void:
|
func swap_weapons() -> void:
|
||||||
@ -401,7 +405,8 @@ func swap_weapons() -> void:
|
|||||||
weapons_active = false
|
weapons_active = false
|
||||||
swap_off_audio.play()
|
swap_off_audio.play()
|
||||||
hud.audio_guard = true
|
hud.audio_guard = true
|
||||||
stow_weapon(equipped_weapon)
|
if weapons[equipped_weapon]:
|
||||||
|
stow_weapon(equipped_weapon)
|
||||||
equipped_weapon = 0 if equipped_weapon == 1 else 1
|
equipped_weapon = 0 if equipped_weapon == 1 else 1
|
||||||
show_weapon(equipped_weapon)
|
show_weapon(equipped_weapon)
|
||||||
weapon_swap_timer.start()
|
weapon_swap_timer.start()
|
||||||
@ -422,7 +427,7 @@ func unequip_weapon(slot: int = 0) -> void:
|
|||||||
hud.new_energy_bar.blank()
|
hud.new_energy_bar.blank()
|
||||||
else:
|
else:
|
||||||
hud.swap_icon.visible = true
|
hud.swap_icon.visible = true
|
||||||
hud.new_energy_bar2.blank()
|
hud.new_energy_bar.disable_secondary_energy()
|
||||||
#gauntlet_sprite.set_visible(true)
|
#gauntlet_sprite.set_visible(true)
|
||||||
weapons[slot].queue_free()
|
weapons[slot].queue_free()
|
||||||
weapons[slot] = null
|
weapons[slot] = null
|
||||||
|
261
PCs/hero.tscn
@ -1,4 +1,4 @@
|
|||||||
[gd_scene load_steps=64 format=3 uid="uid://dxgxbtf68lcv5"]
|
[gd_scene load_steps=62 format=3 uid="uid://dxgxbtf68lcv5"]
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://1fqpoegbdm6n" path="res://PCs/hero.gd" id="1_pihpe"]
|
[ext_resource type="Script" uid="uid://1fqpoegbdm6n" path="res://PCs/hero.gd" id="1_pihpe"]
|
||||||
[ext_resource type="Resource" uid="uid://b5pc3frhx467q" path="res://Classes/Engineer/class.tres" id="2_dbyo0"]
|
[ext_resource type="Resource" uid="uid://b5pc3frhx467q" path="res://Classes/Engineer/class.tres" id="2_dbyo0"]
|
||||||
@ -7,7 +7,7 @@
|
|||||||
[ext_resource type="PackedScene" uid="uid://buvgdem68wtev" path="res://Scenes/Menus/PauseMenu/pause_menu.tscn" id="3_avnsx"]
|
[ext_resource type="PackedScene" uid="uid://buvgdem68wtev" path="res://Scenes/Menus/PauseMenu/pause_menu.tscn" id="3_avnsx"]
|
||||||
[ext_resource type="Script" uid="uid://cij76at0nbs1v" path="res://PCs/view_movement.gd" id="4_mhexa"]
|
[ext_resource type="Script" uid="uid://cij76at0nbs1v" path="res://PCs/view_movement.gd" id="4_mhexa"]
|
||||||
[ext_resource type="PackedScene" uid="uid://dixtx38u4jhd7" path="res://Scenes/UI/card_hand.tscn" id="4_mwtvp"]
|
[ext_resource type="PackedScene" uid="uid://dixtx38u4jhd7" path="res://Scenes/UI/card_hand.tscn" id="4_mwtvp"]
|
||||||
[ext_resource type="PackedScene" uid="uid://dqt1ggtkpkuhs" path="res://Scenes/gauntlet.tscn" id="5_jlxb3"]
|
[ext_resource type="PackedScene" uid="uid://dqt1ggtkpkuhs" path="res://PCs/PathEditTool/path_edit_tool.tscn" id="5_jlxb3"]
|
||||||
[ext_resource type="Script" uid="uid://do24iuot0j7d7" path="res://Scripts/inventory.gd" id="6_cf5ap"]
|
[ext_resource type="Script" uid="uid://do24iuot0j7d7" path="res://Scripts/inventory.gd" id="6_cf5ap"]
|
||||||
[ext_resource type="Texture2D" uid="uid://cjqxkraykhxxk" path="res://Classes/Engineer/red.png" id="6_yyp8i"]
|
[ext_resource type="Texture2D" uid="uid://cjqxkraykhxxk" path="res://Classes/Engineer/red.png" id="6_yyp8i"]
|
||||||
[ext_resource type="Script" uid="uid://b6kjrl7ae1mi0" path="res://PCs/hud.gd" id="8_yl6ka"]
|
[ext_resource type="Script" uid="uid://b6kjrl7ae1mi0" path="res://PCs/hud.gd" id="8_yl6ka"]
|
||||||
@ -20,15 +20,14 @@
|
|||||||
[ext_resource type="Texture2D" uid="uid://chhmkmlfrobhu" path="res://Assets/Textures/bubble.png" id="15_q3yot"]
|
[ext_resource type="Texture2D" uid="uid://chhmkmlfrobhu" path="res://Assets/Textures/bubble.png" id="15_q3yot"]
|
||||||
[ext_resource type="Texture2D" uid="uid://cqnapc8cscl7i" path="res://Assets/Textures/border.png" id="16_x1xjr"]
|
[ext_resource type="Texture2D" uid="uid://cqnapc8cscl7i" path="res://Assets/Textures/border.png" id="16_x1xjr"]
|
||||||
[ext_resource type="PackedScene" uid="uid://chnj376d3lcjd" path="res://Scenes/UI/pickup_notification.tscn" id="17_oyeww"]
|
[ext_resource type="PackedScene" uid="uid://chnj376d3lcjd" path="res://Scenes/UI/pickup_notification.tscn" id="17_oyeww"]
|
||||||
[ext_resource type="PackedScene" uid="uid://d17c77pqsi8oy" path="res://enemy_card_ui.tscn" id="18_dfkac"]
|
[ext_resource type="PackedScene" uid="uid://d17c77pqsi8oy" path="res://UI/EnemyCard/enemy_card_ui.tscn" id="18_dfkac"]
|
||||||
[ext_resource type="Texture2D" uid="uid://cvjcu3hofahr6" path="res://Assets/Textures/place_slot.png" id="18_okmpi"]
|
[ext_resource type="Texture2D" uid="uid://cvjcu3hofahr6" path="res://Assets/Textures/place_slot.png" id="18_okmpi"]
|
||||||
[ext_resource type="Script" uid="uid://b5wle8f6rv3e7" path="res://PCs/player_movement.gd" id="20_cfhw8"]
|
[ext_resource type="Script" uid="uid://b5wle8f6rv3e7" path="res://PCs/player_movement.gd" id="20_cfhw8"]
|
||||||
[ext_resource type="Shader" uid="uid://dhtylicctk3g4" path="res://UI/crosshair.gdshader" id="20_gxpgc"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://r202vo47jw1q" path="res://Assets/Textures/enemyhealth.png" id="21_apps2"]
|
|
||||||
[ext_resource type="AudioStream" uid="uid://csu2hce4bfoki" path="res://Audio/cardPlace1.ogg" id="24_8ch4w"]
|
[ext_resource type="AudioStream" uid="uid://csu2hce4bfoki" path="res://Audio/cardPlace1.ogg" id="24_8ch4w"]
|
||||||
[ext_resource type="Texture2D" uid="uid://b8woqvpwq3tsq" path="res://Assets/Textures/swap_slot.png" id="24_gr6xt"]
|
|
||||||
[ext_resource type="AudioStream" uid="uid://dxq8b77wa41os" path="res://Audio/cardPlace2.ogg" id="25_awl6m"]
|
[ext_resource type="AudioStream" uid="uid://dxq8b77wa41os" path="res://Audio/cardPlace2.ogg" id="25_awl6m"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://bs2mskoyvyehv" path="res://Assets/Textures/crosshair159.png" id="25_l7gpx"]
|
||||||
[ext_resource type="AudioStream" uid="uid://bxripx3suub1v" path="res://Audio/cardPlace3.ogg" id="26_7tm07"]
|
[ext_resource type="AudioStream" uid="uid://bxripx3suub1v" path="res://Audio/cardPlace3.ogg" id="26_7tm07"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://0x80ptif1diq" path="res://Assets/Textures/hand_small_point.png" id="26_dfkac"]
|
||||||
[ext_resource type="PackedScene" uid="uid://c2id8hjico4w8" path="res://energy_bar.tscn" id="27_14ugt"]
|
[ext_resource type="PackedScene" uid="uid://c2id8hjico4w8" path="res://energy_bar.tscn" id="27_14ugt"]
|
||||||
[ext_resource type="AudioStream" uid="uid://k1lsqkvohjpa" path="res://Audio/cardPlace4.ogg" id="27_xvxs8"]
|
[ext_resource type="AudioStream" uid="uid://k1lsqkvohjpa" path="res://Audio/cardPlace4.ogg" id="27_xvxs8"]
|
||||||
[ext_resource type="AudioStream" uid="uid://bn8lkvy5wibvo" path="res://Audio/cardSlide1.ogg" id="28_1thk8"]
|
[ext_resource type="AudioStream" uid="uid://bn8lkvy5wibvo" path="res://Audio/cardSlide1.ogg" id="28_1thk8"]
|
||||||
@ -96,21 +95,6 @@ viewport_path = NodePath("FirstPersonViewport")
|
|||||||
[sub_resource type="ViewportTexture" id="ViewportTexture_574jy"]
|
[sub_resource type="ViewportTexture" id="ViewportTexture_574jy"]
|
||||||
viewport_path = NodePath("MiniMapViewport")
|
viewport_path = NodePath("MiniMapViewport")
|
||||||
|
|
||||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_lg5jo"]
|
|
||||||
shader = ExtResource("20_gxpgc")
|
|
||||||
shader_parameter/center_enabled = true
|
|
||||||
shader_parameter/legs_enabled = true
|
|
||||||
shader_parameter/inverted = false
|
|
||||||
shader_parameter/color_id = 0
|
|
||||||
shader_parameter/color_0 = Vector4(1, 0, 0, 0.95)
|
|
||||||
shader_parameter/color_1 = Vector4(1, 0, 0, 1)
|
|
||||||
shader_parameter/color_2 = Vector4(0, 0, 1, 1)
|
|
||||||
shader_parameter/center_radius = 0.002
|
|
||||||
shader_parameter/width = 0.002
|
|
||||||
shader_parameter/len = 0.012
|
|
||||||
shader_parameter/spacing = 0.008
|
|
||||||
shader_parameter/spread = 1.0
|
|
||||||
|
|
||||||
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_tsiqi"]
|
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_tsiqi"]
|
||||||
properties/0/path = NodePath(".:position")
|
properties/0/path = NodePath(".:position")
|
||||||
properties/0/spawn = true
|
properties/0/spawn = true
|
||||||
@ -384,23 +368,20 @@ max_look_down_angle = 80.0
|
|||||||
max_look_up_angle = 80.0
|
max_look_up_angle = 80.0
|
||||||
enable_jumping = true
|
enable_jumping = true
|
||||||
|
|
||||||
[node name="HUD" type="CanvasLayer" parent="." node_paths=PackedStringArray("player", "wave_count", "lives_count", "currency_count", "minimap_outline", "crosshair", "minimap", "minimap_cam", "minimap_viewport", "fps_label", "hover_text", "enemy_sprites", "enemy_counts", "weapon_energy_bar", "offhand_energy_bar", "wave_start_label", "place_icon", "swap_icon", "place_text", "swap_text", "new_energy_bar", "new_energy_bar2")]
|
[node name="HUD" type="CanvasLayer" parent="." node_paths=PackedStringArray("player", "wave_count", "lives_count", "currency_count", "minimap_outline", "minimap", "minimap_cam", "minimap_viewport", "fps_label", "hover_text", "enemy_sprites", "enemy_counts", "wave_start_label", "place_icon", "swap_icon", "place_text", "swap_text", "new_energy_bar")]
|
||||||
script = ExtResource("8_yl6ka")
|
script = ExtResource("8_yl6ka")
|
||||||
player = NodePath("..")
|
player = NodePath("..")
|
||||||
wave_count = NodePath("WaveCount")
|
wave_count = NodePath("EnemyTracker/WaveCount")
|
||||||
lives_count = NodePath("LivesCount")
|
lives_count = NodePath("LivesBar/LivesCount")
|
||||||
currency_count = NodePath("CurrencyCount")
|
currency_count = NodePath("Minimap/CurrencyCount")
|
||||||
minimap_outline = NodePath("MinimapBorder")
|
minimap_outline = NodePath("Minimap/MinimapBorder")
|
||||||
crosshair = NodePath("Crosshair")
|
|
||||||
minimap = NodePath("Minimap")
|
minimap = NodePath("Minimap")
|
||||||
minimap_cam = NodePath("../MiniMapViewport/Camera3D")
|
minimap_cam = NodePath("../MiniMapViewport/Camera3D")
|
||||||
minimap_viewport = NodePath("../MiniMapViewport")
|
minimap_viewport = NodePath("../MiniMapViewport")
|
||||||
fps_label = NodePath("FPSCounter")
|
fps_label = NodePath("FPSCounter")
|
||||||
hover_text = NodePath("RichTextLabel2")
|
hover_text = NodePath("InteractLabel")
|
||||||
enemy_sprites = [NodePath("EnemyTracker/TextureRect"), NodePath("EnemyTracker/TextureRect2"), NodePath("EnemyTracker/TextureRect3"), NodePath("EnemyTracker/TextureRect4"), NodePath("EnemyTracker/TextureRect5")]
|
enemy_sprites = [NodePath("EnemyTracker/TextureRect"), NodePath("EnemyTracker/TextureRect2"), NodePath("EnemyTracker/TextureRect3"), NodePath("EnemyTracker/TextureRect4"), NodePath("EnemyTracker/TextureRect5")]
|
||||||
enemy_counts = [NodePath("EnemyTracker/TextureRect/Label"), NodePath("EnemyTracker/TextureRect2/Label2"), NodePath("EnemyTracker/TextureRect3/Label3"), NodePath("EnemyTracker/TextureRect4/Label4"), NodePath("EnemyTracker/TextureRect5/Label5")]
|
enemy_counts = [NodePath("EnemyTracker/TextureRect/Label"), NodePath("EnemyTracker/TextureRect2/Label2"), NodePath("EnemyTracker/TextureRect3/Label3"), NodePath("EnemyTracker/TextureRect4/Label4"), NodePath("EnemyTracker/TextureRect5/Label5")]
|
||||||
weapon_energy_bar = NodePath("PrimaryEnergyBar")
|
|
||||||
offhand_energy_bar = NodePath("OffhandEnergyBar")
|
|
||||||
pickup_notif_scene = ExtResource("17_oyeww")
|
pickup_notif_scene = ExtResource("17_oyeww")
|
||||||
wave_start_label = NodePath("RichTextLabel")
|
wave_start_label = NodePath("RichTextLabel")
|
||||||
place_icon = NodePath("PlaceIcon")
|
place_icon = NodePath("PlaceIcon")
|
||||||
@ -409,7 +390,6 @@ place_text = NodePath("PlaceIcon/RichTextLabel")
|
|||||||
swap_text = NodePath("SwapIcon/RichTextLabel")
|
swap_text = NodePath("SwapIcon/RichTextLabel")
|
||||||
enemy_card_scene = ExtResource("18_dfkac")
|
enemy_card_scene = ExtResource("18_dfkac")
|
||||||
new_energy_bar = NodePath("EnergyBar")
|
new_energy_bar = NodePath("EnergyBar")
|
||||||
new_energy_bar2 = NodePath("EnergyBar2")
|
|
||||||
|
|
||||||
[node name="FirstPersonCam" type="TextureRect" parent="HUD"]
|
[node name="FirstPersonCam" type="TextureRect" parent="HUD"]
|
||||||
anchors_preset = 15
|
anchors_preset = 15
|
||||||
@ -436,20 +416,16 @@ texture = ExtResource("18_okmpi")
|
|||||||
|
|
||||||
[node name="RichTextLabel" type="RichTextLabel" parent="HUD/PlaceIcon"]
|
[node name="RichTextLabel" type="RichTextLabel" parent="HUD/PlaceIcon"]
|
||||||
layout_mode = 1
|
layout_mode = 1
|
||||||
anchors_preset = 8
|
anchors_preset = 15
|
||||||
anchor_left = 0.5
|
anchor_right = 1.0
|
||||||
anchor_top = 0.5
|
anchor_bottom = 1.0
|
||||||
anchor_right = 0.5
|
|
||||||
anchor_bottom = 0.5
|
|
||||||
offset_left = -30.0
|
|
||||||
offset_top = -19.0
|
|
||||||
offset_right = 30.0
|
|
||||||
offset_bottom = 41.0
|
|
||||||
grow_horizontal = 2
|
grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
bbcode_enabled = true
|
bbcode_enabled = true
|
||||||
text = "#Equip In Gauntlet#"
|
text = "#Equip Primary Weapon#"
|
||||||
scroll_active = false
|
scroll_active = false
|
||||||
|
horizontal_alignment = 1
|
||||||
|
vertical_alignment = 1
|
||||||
|
|
||||||
[node name="SwapIcon" type="TextureRect" parent="HUD"]
|
[node name="SwapIcon" type="TextureRect" parent="HUD"]
|
||||||
anchors_preset = 3
|
anchors_preset = 3
|
||||||
@ -463,24 +439,20 @@ offset_right = -6.0
|
|||||||
offset_bottom = -1.0
|
offset_bottom = -1.0
|
||||||
grow_horizontal = 0
|
grow_horizontal = 0
|
||||||
grow_vertical = 0
|
grow_vertical = 0
|
||||||
texture = ExtResource("24_gr6xt")
|
texture = ExtResource("18_okmpi")
|
||||||
|
|
||||||
[node name="RichTextLabel" type="RichTextLabel" parent="HUD/SwapIcon"]
|
[node name="RichTextLabel" type="RichTextLabel" parent="HUD/SwapIcon"]
|
||||||
layout_mode = 1
|
layout_mode = 1
|
||||||
anchors_preset = 8
|
anchors_preset = 15
|
||||||
anchor_left = 0.5
|
anchor_right = 1.0
|
||||||
anchor_top = 0.5
|
anchor_bottom = 1.0
|
||||||
anchor_right = 0.5
|
|
||||||
anchor_bottom = 0.5
|
|
||||||
offset_left = -30.0
|
|
||||||
offset_top = -29.0
|
|
||||||
offset_right = 30.0
|
|
||||||
offset_bottom = 31.0
|
|
||||||
grow_horizontal = 2
|
grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
bbcode_enabled = true
|
bbcode_enabled = true
|
||||||
text = "#Secondary Fire#"
|
text = "#Equip Secondary Weapon#"
|
||||||
scroll_active = false
|
scroll_active = false
|
||||||
|
horizontal_alignment = 1
|
||||||
|
vertical_alignment = 1
|
||||||
|
|
||||||
[node name="Minimap" type="TextureRect" parent="HUD"]
|
[node name="Minimap" type="TextureRect" parent="HUD"]
|
||||||
anchors_preset = 1
|
anchors_preset = 1
|
||||||
@ -494,6 +466,35 @@ grow_horizontal = 0
|
|||||||
mouse_filter = 2
|
mouse_filter = 2
|
||||||
texture = SubResource("ViewportTexture_574jy")
|
texture = SubResource("ViewportTexture_574jy")
|
||||||
|
|
||||||
|
[node name="MinimapBorder" type="TextureRect" parent="HUD/Minimap"]
|
||||||
|
texture_filter = 1
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 1
|
||||||
|
anchor_left = 1.0
|
||||||
|
anchor_right = 1.0
|
||||||
|
offset_left = -259.0
|
||||||
|
offset_top = -3.0
|
||||||
|
offset_right = 3.0
|
||||||
|
offset_bottom = 333.0
|
||||||
|
grow_horizontal = 0
|
||||||
|
mouse_filter = 2
|
||||||
|
texture = ExtResource("16_x1xjr")
|
||||||
|
|
||||||
|
[node name="CurrencyCount" type="Label" parent="HUD/Minimap"]
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 1
|
||||||
|
anchor_left = 1.0
|
||||||
|
anchor_right = 1.0
|
||||||
|
offset_left = -61.0
|
||||||
|
offset_top = 260.0
|
||||||
|
offset_bottom = 318.0
|
||||||
|
grow_horizontal = 0
|
||||||
|
theme_override_colors/font_color = Color(0.988235, 0.909804, 0.65098, 1)
|
||||||
|
theme_override_font_sizes/font_size = 37
|
||||||
|
text = "20"
|
||||||
|
horizontal_alignment = 1
|
||||||
|
vertical_alignment = 1
|
||||||
|
|
||||||
[node name="FPSCounter" type="Label" parent="HUD"]
|
[node name="FPSCounter" type="Label" parent="HUD"]
|
||||||
anchors_preset = 1
|
anchors_preset = 1
|
||||||
anchor_left = 1.0
|
anchor_left = 1.0
|
||||||
@ -518,31 +519,17 @@ grow_vertical = 1
|
|||||||
scale = Vector2(3, 3)
|
scale = Vector2(3, 3)
|
||||||
mouse_filter = 2
|
mouse_filter = 2
|
||||||
|
|
||||||
[node name="LivesCount" type="Label" parent="HUD"]
|
[node name="LivesCount" type="Label" parent="HUD/LivesBar"]
|
||||||
offset_left = -5.0
|
layout_mode = 0
|
||||||
offset_top = 15.0
|
offset_right = 79.0
|
||||||
offset_right = 100.0
|
offset_bottom = 70.0
|
||||||
offset_bottom = 72.0
|
scale = Vector2(0.33, 0.33)
|
||||||
theme_override_colors/font_color = Color(0.65098, 0.227451, 0.243137, 1)
|
theme_override_colors/font_color = Color(0.65098, 0.227451, 0.243137, 1)
|
||||||
theme_override_font_sizes/font_size = 37
|
theme_override_font_sizes/font_size = 37
|
||||||
text = "120
|
text = "120"
|
||||||
"
|
|
||||||
horizontal_alignment = 1
|
horizontal_alignment = 1
|
||||||
vertical_alignment = 1
|
vertical_alignment = 1
|
||||||
|
|
||||||
[node name="MinimapBorder" type="TextureRect" parent="HUD"]
|
|
||||||
texture_filter = 1
|
|
||||||
anchors_preset = 1
|
|
||||||
anchor_left = 1.0
|
|
||||||
anchor_right = 1.0
|
|
||||||
offset_left = -262.0
|
|
||||||
offset_top = 37.0
|
|
||||||
offset_right = -37.0
|
|
||||||
offset_bottom = 336.0
|
|
||||||
grow_horizontal = 0
|
|
||||||
mouse_filter = 2
|
|
||||||
texture = ExtResource("16_x1xjr")
|
|
||||||
|
|
||||||
[node name="EnemyTracker" type="TextureRect" parent="HUD"]
|
[node name="EnemyTracker" type="TextureRect" parent="HUD"]
|
||||||
texture_filter = 1
|
texture_filter = 1
|
||||||
anchors_preset = 5
|
anchors_preset = 5
|
||||||
@ -665,22 +652,23 @@ text = "999"
|
|||||||
horizontal_alignment = 1
|
horizontal_alignment = 1
|
||||||
vertical_alignment = 1
|
vertical_alignment = 1
|
||||||
|
|
||||||
[node name="CurrencyCount" type="Label" parent="HUD"]
|
[node name="WaveCount" type="Label" parent="HUD/EnemyTracker"]
|
||||||
anchors_preset = 1
|
layout_mode = 1
|
||||||
anchor_left = 1.0
|
anchors_preset = 5
|
||||||
anchor_right = 1.0
|
anchor_left = 0.5
|
||||||
offset_left = -101.0
|
anchor_right = 0.5
|
||||||
offset_top = 300.0
|
offset_left = -30.0
|
||||||
offset_right = -40.0
|
offset_top = 59.0
|
||||||
offset_bottom = 54.0
|
offset_right = 30.0
|
||||||
grow_horizontal = 0
|
offset_bottom = 87.0
|
||||||
theme_override_colors/font_color = Color(0.988235, 0.909804, 0.65098, 1)
|
grow_horizontal = 2
|
||||||
theme_override_font_sizes/font_size = 37
|
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||||
text = "20"
|
theme_override_font_sizes/font_size = 18
|
||||||
|
text = "1"
|
||||||
horizontal_alignment = 1
|
horizontal_alignment = 1
|
||||||
vertical_alignment = 1
|
vertical_alignment = 1
|
||||||
|
|
||||||
[node name="RichTextLabel2" type="RichTextLabel" parent="HUD"]
|
[node name="InteractLabel" type="RichTextLabel" parent="HUD"]
|
||||||
anchors_preset = 8
|
anchors_preset = 8
|
||||||
anchor_left = 0.5
|
anchor_left = 0.5
|
||||||
anchor_top = 0.5
|
anchor_top = 0.5
|
||||||
@ -700,71 +688,6 @@ bbcode_enabled = true
|
|||||||
text = "[center]Press Button To do thing"
|
text = "[center]Press Button To do thing"
|
||||||
scroll_active = false
|
scroll_active = false
|
||||||
|
|
||||||
[node name="WaveCount" type="Label" parent="HUD"]
|
|
||||||
anchors_preset = 5
|
|
||||||
anchor_left = 0.5
|
|
||||||
anchor_right = 0.5
|
|
||||||
offset_left = -30.0
|
|
||||||
offset_top = 81.0
|
|
||||||
offset_right = 30.0
|
|
||||||
offset_bottom = 109.0
|
|
||||||
grow_horizontal = 2
|
|
||||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
|
||||||
theme_override_font_sizes/font_size = 18
|
|
||||||
text = "1"
|
|
||||||
horizontal_alignment = 1
|
|
||||||
vertical_alignment = 1
|
|
||||||
|
|
||||||
[node name="Crosshair" type="ColorRect" parent="HUD"]
|
|
||||||
material = SubResource("ShaderMaterial_lg5jo")
|
|
||||||
anchors_preset = 15
|
|
||||||
anchor_right = 1.0
|
|
||||||
anchor_bottom = 1.0
|
|
||||||
grow_horizontal = 2
|
|
||||||
grow_vertical = 2
|
|
||||||
mouse_filter = 2
|
|
||||||
|
|
||||||
[node name="PrimaryEnergyBar" type="TextureProgressBar" parent="HUD"]
|
|
||||||
visible = false
|
|
||||||
anchors_preset = 3
|
|
||||||
anchor_left = 1.0
|
|
||||||
anchor_top = 1.0
|
|
||||||
anchor_right = 1.0
|
|
||||||
anchor_bottom = 1.0
|
|
||||||
offset_left = -500.0
|
|
||||||
offset_top = -40.0
|
|
||||||
grow_horizontal = 0
|
|
||||||
grow_vertical = 0
|
|
||||||
step = 0.01
|
|
||||||
value = 100.0
|
|
||||||
fill_mode = 1
|
|
||||||
nine_patch_stretch = true
|
|
||||||
texture_under = ExtResource("21_apps2")
|
|
||||||
texture_progress = ExtResource("21_apps2")
|
|
||||||
tint_under = Color(0, 1, 1, 0.168627)
|
|
||||||
tint_progress = Color(0, 1, 1, 1)
|
|
||||||
|
|
||||||
[node name="OffhandEnergyBar" type="TextureProgressBar" parent="HUD"]
|
|
||||||
visible = false
|
|
||||||
anchors_preset = 3
|
|
||||||
anchor_left = 1.0
|
|
||||||
anchor_top = 1.0
|
|
||||||
anchor_right = 1.0
|
|
||||||
anchor_bottom = 1.0
|
|
||||||
offset_left = -379.0
|
|
||||||
offset_top = -50.0
|
|
||||||
offset_bottom = -40.0
|
|
||||||
grow_horizontal = 0
|
|
||||||
grow_vertical = 0
|
|
||||||
step = 0.01
|
|
||||||
value = 100.0
|
|
||||||
fill_mode = 1
|
|
||||||
nine_patch_stretch = true
|
|
||||||
texture_under = ExtResource("21_apps2")
|
|
||||||
texture_progress = ExtResource("21_apps2")
|
|
||||||
tint_under = Color(0, 1, 1, 0.168627)
|
|
||||||
tint_progress = Color(0, 1, 1, 1)
|
|
||||||
|
|
||||||
[node name="VBoxContainer" type="VBoxContainer" parent="HUD"]
|
[node name="VBoxContainer" type="VBoxContainer" parent="HUD"]
|
||||||
anchors_preset = 4
|
anchors_preset = 4
|
||||||
anchor_top = 0.5
|
anchor_top = 0.5
|
||||||
@ -811,12 +734,44 @@ grow_horizontal = 2
|
|||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
|
|
||||||
[node name="EnergyBar" parent="HUD" instance=ExtResource("27_14ugt")]
|
[node name="EnergyBar" parent="HUD" instance=ExtResource("27_14ugt")]
|
||||||
|
visible = false
|
||||||
mouse_filter = 2
|
mouse_filter = 2
|
||||||
|
|
||||||
[node name="EnergyBar2" parent="HUD" instance=ExtResource("27_14ugt")]
|
[node name="TextureRect" type="TextureRect" parent="HUD"]
|
||||||
offset_left = -72.0
|
modulate = Color(0.54324, 0.193653, 0.15885, 0.9)
|
||||||
offset_right = -72.0
|
anchors_preset = 8
|
||||||
|
anchor_left = 0.5
|
||||||
|
anchor_top = 0.5
|
||||||
|
anchor_right = 0.5
|
||||||
|
anchor_bottom = 0.5
|
||||||
|
offset_left = -20.0
|
||||||
|
offset_top = -20.0
|
||||||
|
offset_right = 20.0
|
||||||
|
offset_bottom = 20.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
mouse_filter = 2
|
mouse_filter = 2
|
||||||
|
texture = ExtResource("25_l7gpx")
|
||||||
|
expand_mode = 3
|
||||||
|
stretch_mode = 5
|
||||||
|
|
||||||
|
[node name="TextureRect2" type="TextureRect" parent="HUD"]
|
||||||
|
visible = false
|
||||||
|
anchors_preset = 8
|
||||||
|
anchor_left = 0.5
|
||||||
|
anchor_top = 0.5
|
||||||
|
anchor_right = 0.5
|
||||||
|
anchor_bottom = 0.5
|
||||||
|
offset_left = -20.0
|
||||||
|
offset_top = -20.0
|
||||||
|
offset_right = 20.0
|
||||||
|
offset_bottom = 20.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
mouse_filter = 2
|
||||||
|
texture = ExtResource("26_dfkac")
|
||||||
|
expand_mode = 3
|
||||||
|
stretch_mode = 5
|
||||||
|
|
||||||
[node name="WeaponSwapTimer" type="Timer" parent="."]
|
[node name="WeaponSwapTimer" type="Timer" parent="."]
|
||||||
wait_time = 0.4
|
wait_time = 0.4
|
||||||
|
67
PCs/hud.gd
@ -12,12 +12,9 @@ var last_lives_count: int = 120
|
|||||||
@export var minimap_viewport: SubViewport
|
@export var minimap_viewport: SubViewport
|
||||||
@export var fps_label: Label
|
@export var fps_label: Label
|
||||||
@export var hover_text: RichTextLabel
|
@export var hover_text: RichTextLabel
|
||||||
var minimap_anchor: Node3D
|
|
||||||
var enemy_names: Array[String]
|
var enemy_names: Array[String]
|
||||||
@export var enemy_sprites: Array[TextureRect]
|
@export var enemy_sprites: Array[TextureRect]
|
||||||
@export var enemy_counts: Array[Label]
|
@export var enemy_counts: Array[Label]
|
||||||
@export var weapon_energy_bar: TextureProgressBar
|
|
||||||
@export var offhand_energy_bar: TextureProgressBar
|
|
||||||
@export var pickup_notif_scene: PackedScene
|
@export var pickup_notif_scene: PackedScene
|
||||||
@export var wave_start_label: RichTextLabel
|
@export var wave_start_label: RichTextLabel
|
||||||
@export var place_icon: TextureRect
|
@export var place_icon: TextureRect
|
||||||
@ -26,8 +23,8 @@ var enemy_names: Array[String]
|
|||||||
@export var swap_text: RichTextLabel
|
@export var swap_text: RichTextLabel
|
||||||
@export var enemy_card_scene: PackedScene
|
@export var enemy_card_scene: PackedScene
|
||||||
@export var new_energy_bar: EnergyBar
|
@export var new_energy_bar: EnergyBar
|
||||||
@export var new_energy_bar2: EnergyBar
|
|
||||||
|
|
||||||
|
var map_anchor: Node3D
|
||||||
var audio_guard: bool = false
|
var audio_guard: bool = false
|
||||||
var cards: Array[EnemyCardUI] = []
|
var cards: Array[EnemyCardUI] = []
|
||||||
|
|
||||||
@ -65,20 +62,14 @@ func show_wave_generation_anim(wave: Wave) -> void:
|
|||||||
|
|
||||||
|
|
||||||
func set_energy_visible(value: bool) -> void:
|
func set_energy_visible(value: bool) -> void:
|
||||||
pass
|
new_energy_bar.visible = value
|
||||||
#weapon_energy_bar.set_visible(value)
|
|
||||||
|
|
||||||
|
|
||||||
func set_offhand_energy_visible(value: bool) -> void:
|
|
||||||
pass
|
|
||||||
#offhand_energy_bar.set_visible(value)
|
|
||||||
|
|
||||||
|
|
||||||
func _process(_delta: float) -> void:
|
func _process(_delta: float) -> void:
|
||||||
fps_label.text = "FPS: " + str(Engine.get_frames_per_second())
|
fps_label.text = "FPS: " + str(Engine.get_frames_per_second())
|
||||||
wave_start_label.text = parse_action_tag("[center]Press #Ready# to start wave")
|
wave_start_label.text = parse_action_tag("[center]Press #Ready# to start wave")
|
||||||
place_text.text = parse_action_tag("[center]#Equip In Gauntlet#")
|
place_text.text = parse_action_tag("[center]#Equip Primary Weapon#")
|
||||||
swap_text.text = parse_action_tag("[center]#Secondary Fire#")
|
swap_text.text = parse_action_tag("[center]#Equip Secondary Weapon#")
|
||||||
|
|
||||||
|
|
||||||
func grow_wave_start_label() -> void:
|
func grow_wave_start_label() -> void:
|
||||||
@ -102,12 +93,16 @@ func tween_label(x: float) -> void:
|
|||||||
|
|
||||||
|
|
||||||
func set_hover_text(text: String) -> void:
|
func set_hover_text(text: String) -> void:
|
||||||
|
$TextureRect2.visible = true
|
||||||
|
$TextureRect.visible = false
|
||||||
hover_text.text = parse_action_tag(text)
|
hover_text.text = parse_action_tag(text)
|
||||||
hover_text.set_visible(true)
|
hover_text.visible = true
|
||||||
|
|
||||||
|
|
||||||
func unset_hover_text() -> void:
|
func unset_hover_text() -> void:
|
||||||
hover_text.set_visible(false)
|
hover_text.visible = false
|
||||||
|
$TextureRect2.visible = false
|
||||||
|
$TextureRect.visible = true
|
||||||
|
|
||||||
|
|
||||||
func set_wave_count(value: int) -> void:
|
func set_wave_count(value: int) -> void:
|
||||||
@ -134,8 +129,12 @@ func set_upcoming_wave(value: Dictionary) -> void:
|
|||||||
var frame_count: int = 0
|
var frame_count: int = 0
|
||||||
enemy_names = []
|
enemy_names = []
|
||||||
var wave: Dictionary = {}
|
var wave: Dictionary = {}
|
||||||
for index: int in value:
|
for key: String in value:
|
||||||
wave[Data.enemies[index]] = value[index]
|
var new_enemy: Enemy
|
||||||
|
for enemy: Enemy in player.game_manager.level.enemy_pool:
|
||||||
|
if enemy.title == key:
|
||||||
|
new_enemy = enemy
|
||||||
|
wave[new_enemy] = value[key]
|
||||||
for x: int in enemy_sprites.size():
|
for x: int in enemy_sprites.size():
|
||||||
enemy_sprites[x].set_visible(false)
|
enemy_sprites[x].set_visible(false)
|
||||||
enemy_counts[x].set_visible(false)
|
enemy_counts[x].set_visible(false)
|
||||||
@ -157,7 +156,7 @@ func set_crosshair_visible(value: bool) -> void:
|
|||||||
|
|
||||||
#TODO: the fuck is audio_guard for?
|
#TODO: the fuck is audio_guard for?
|
||||||
func set_weapon_energy(value: int, energy_type: Data.EnergyType) -> void:
|
func set_weapon_energy(value: int, energy_type: Data.EnergyType) -> void:
|
||||||
weapon_energy_bar.value = value
|
#weapon_energy_bar.value = value
|
||||||
if player.editing_mode:
|
if player.editing_mode:
|
||||||
audio_guard = true
|
audio_guard = true
|
||||||
if value == 0 and !audio_guard:
|
if value == 0 and !audio_guard:
|
||||||
@ -170,12 +169,8 @@ func set_weapon_energy(value: int, energy_type: Data.EnergyType) -> void:
|
|||||||
audio_guard = false
|
audio_guard = false
|
||||||
|
|
||||||
|
|
||||||
func set_offhand_energy(value: int) -> void:
|
func maximise_minimap() -> void:
|
||||||
offhand_energy_bar.value = value
|
minimap_cam.anchor = map_anchor
|
||||||
|
|
||||||
|
|
||||||
func maximise_minimap(anchor: Node3D) -> void:
|
|
||||||
minimap_cam.anchor = anchor
|
|
||||||
minimap.set_anchors_and_offsets_preset(Control.PRESET_FULL_RECT)
|
minimap.set_anchors_and_offsets_preset(Control.PRESET_FULL_RECT)
|
||||||
minimap.offset_bottom = -40
|
minimap.offset_bottom = -40
|
||||||
minimap.offset_top = 40
|
minimap.offset_top = 40
|
||||||
@ -187,8 +182,8 @@ func maximise_minimap(anchor: Node3D) -> void:
|
|||||||
currency_count.set_visible(false)
|
currency_count.set_visible(false)
|
||||||
|
|
||||||
|
|
||||||
func minimize_minimap(anchor: Node3D) -> void:
|
func minimize_minimap() -> void:
|
||||||
minimap_cam.anchor = anchor
|
minimap_cam.anchor = player
|
||||||
minimap.set_anchors_and_offsets_preset(Control.PRESET_TOP_RIGHT)
|
minimap.set_anchors_and_offsets_preset(Control.PRESET_TOP_RIGHT)
|
||||||
minimap.offset_right = -40
|
minimap.offset_right = -40
|
||||||
minimap.offset_top = 40
|
minimap.offset_top = 40
|
||||||
@ -208,11 +203,21 @@ func pickup(card: Card) -> void:
|
|||||||
|
|
||||||
func parse_action_tag(text: String) -> String:
|
func parse_action_tag(text: String) -> String:
|
||||||
var string_array: PackedStringArray = text.split("#")
|
var string_array: PackedStringArray = text.split("#")
|
||||||
|
var output: Array[String] = []
|
||||||
if string_array.size() > 1:
|
if string_array.size() > 1:
|
||||||
var event: InputEvent = InputMap.action_get_events(string_array[1])[0]
|
for i: int in InputMap.action_get_events(string_array[1]).size():
|
||||||
if event is InputEventKey:
|
var event: InputEvent = InputMap.action_get_events(string_array[1])[i]
|
||||||
string_array[1] = "[img=top,50]%s[/img]" % KeyIconMap.keys[str(event.keycode)]
|
if InputMap.action_get_events(string_array[1]).size() > 1:
|
||||||
if event is InputEventMouseButton:
|
var last: bool = true if i == InputMap.action_get_events(string_array[1]).size() - 1 else false
|
||||||
string_array[1] = "[img=top,50]%s[/img]" % KeyIconMap.mouse_buttons[str(event.button_index)]
|
var first: bool = true if i == 0 else false
|
||||||
|
if last:
|
||||||
|
output.append(" or ")
|
||||||
|
elif !first:
|
||||||
|
output.append(", ")
|
||||||
|
if event is InputEventKey:
|
||||||
|
output.append("[img=top,50]%s[/img]" % KeyIconMap.keys[str(event.physical_keycode)])
|
||||||
|
if event is InputEventMouseButton:
|
||||||
|
output.append("[img=top,50]%s[/img]" % KeyIconMap.mouse_buttons[str(event.button_index)])
|
||||||
|
string_array[1] = "".join(output)
|
||||||
text = "".join(string_array)
|
text = "".join(string_array)
|
||||||
return text
|
return text
|
||||||
|
@ -172,9 +172,9 @@ func _process(_delta: float) -> void:
|
|||||||
change_crouch = true
|
change_crouch = true
|
||||||
if crouching:
|
if crouching:
|
||||||
crouch()
|
crouch()
|
||||||
if Input.is_action_just_pressed("Crouch") and is_in_climb_zone:
|
if Input.is_action_just_pressed("Hold Climbing") and is_in_climb_zone:
|
||||||
hold_climb = true
|
hold_climb = true
|
||||||
if Input.is_action_just_released("Crouch") and is_in_climb_zone:
|
if Input.is_action_just_released("Hold Climbing") and is_in_climb_zone:
|
||||||
hold_climb = false
|
hold_climb = false
|
||||||
look_vector.x = Input.get_joy_axis(0, JOY_AXIS_RIGHT_X)
|
look_vector.x = Input.get_joy_axis(0, JOY_AXIS_RIGHT_X)
|
||||||
look_vector.y = Input.get_joy_axis(0, JOY_AXIS_RIGHT_Y)
|
look_vector.y = Input.get_joy_axis(0, JOY_AXIS_RIGHT_Y)
|
||||||
|
@ -1,14 +1,16 @@
|
|||||||
[gd_resource type="Resource" script_class="Enemy" load_steps=5 format=3 uid="uid://dsgkwh3opyqtx"]
|
[gd_resource type="Resource" script_class="Enemy" load_steps=6 format=3 uid="uid://dsgkwh3opyqtx"]
|
||||||
|
|
||||||
[ext_resource type="Texture2D" uid="uid://chhmkmlfrobhu" path="res://Assets/Textures/bubble.png" id="1_57rr1"]
|
[ext_resource type="Texture2D" uid="uid://chhmkmlfrobhu" path="res://Assets/Textures/bubble.png" id="1_57rr1"]
|
||||||
[ext_resource type="Texture2D" uid="uid://ta47gpiwloxm" path="res://Assets/Textures/dead_bubble.png" id="1_ioqxi"]
|
[ext_resource type="Texture2D" uid="uid://ta47gpiwloxm" path="res://Assets/Textures/dead_bubble.png" id="1_ioqxi"]
|
||||||
[ext_resource type="Script" uid="uid://cbwxa2a4hfcy4" path="res://Scripts/Resources/enemy.gd" id="1_wjbfx"]
|
[ext_resource type="Script" uid="uid://cbwxa2a4hfcy4" path="res://Scripts/Resources/enemy.gd" id="1_wjbfx"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://bjo2q6vca5qlv" path="res://Worlds/GreenPlanet/Enemies/air_enemy.tscn" id="3_86skx"]
|
||||||
[ext_resource type="Texture2D" uid="uid://d0vafwv4lhjji" path="res://Assets/TextureAtlases/bubble.tres" id="3_homny"]
|
[ext_resource type="Texture2D" uid="uid://d0vafwv4lhjji" path="res://Assets/TextureAtlases/bubble.tres" id="3_homny"]
|
||||||
|
|
||||||
[resource]
|
[resource]
|
||||||
script = ExtResource("1_wjbfx")
|
script = ExtResource("1_wjbfx")
|
||||||
title = "bubble"
|
title = "bubble"
|
||||||
target_type = 2
|
target_type = 2
|
||||||
|
scene = ExtResource("3_86skx")
|
||||||
icon = ExtResource("1_57rr1")
|
icon = ExtResource("1_57rr1")
|
||||||
death_sprite = ExtResource("1_ioqxi")
|
death_sprite = ExtResource("1_ioqxi")
|
||||||
sprite = ExtResource("3_homny")
|
sprite = ExtResource("3_homny")
|
||||||
|
@ -1,29 +0,0 @@
|
|||||||
[gd_resource type="Resource" script_class="Enemy" load_steps=5 format=3 uid="uid://bffhb5krs5elm"]
|
|
||||||
|
|
||||||
[ext_resource type="Texture2D" uid="uid://b1lwaxw62yp3p" path="res://Assets/Textures/dead_spike.png" id="1_1js8q"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://duywsy7jmh4u" path="res://Assets/Textures/spike.png" id="1_22o7e"]
|
|
||||||
[ext_resource type="Script" uid="uid://cbwxa2a4hfcy4" path="res://Scripts/Resources/enemy.gd" id="1_q5r05"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://sybn6bjbj5fh" path="res://Assets/TextureAtlases/spike.tres" id="3_tbb38"]
|
|
||||||
|
|
||||||
[resource]
|
|
||||||
script = ExtResource("1_q5r05")
|
|
||||||
title = "spike"
|
|
||||||
target_type = 2
|
|
||||||
icon = ExtResource("1_22o7e")
|
|
||||||
death_sprite = ExtResource("1_1js8q")
|
|
||||||
sprite = ExtResource("3_tbb38")
|
|
||||||
spawn_power = 6
|
|
||||||
health = 120
|
|
||||||
penalty = 7
|
|
||||||
movement_speed = 1.0
|
|
||||||
spawn_cooldown = 1.0
|
|
||||||
common_group = 3
|
|
||||||
common_cost = 2
|
|
||||||
uncommon_group = 6
|
|
||||||
uncommon_cost = 3
|
|
||||||
rare_group = 10
|
|
||||||
rare_cost = 4
|
|
||||||
epic_group = 16
|
|
||||||
epic_cost = 5
|
|
||||||
legendary_group = 25
|
|
||||||
legendary_cost = 6
|
|
@ -1,19 +1,21 @@
|
|||||||
[gd_resource type="Resource" script_class="Enemy" load_steps=5 format=3 uid="uid://boik1gnpl4v0a"]
|
[gd_resource type="Resource" script_class="Enemy" load_steps=6 format=3 uid="uid://boik1gnpl4v0a"]
|
||||||
|
|
||||||
[ext_resource type="Texture2D" uid="uid://cde0voyrwnqkl" path="res://Assets/Textures/icon_eye_dog_boss.png" id="1_2o720"]
|
[ext_resource type="Texture2D" uid="uid://cde0voyrwnqkl" path="res://Assets/Textures/icon_eye_dog_boss.png" id="1_2o720"]
|
||||||
[ext_resource type="Texture2D" uid="uid://bp3njt3h0qfbg" path="res://Assets/Textures/dead_eye_dog_boss.png" id="1_5xm32"]
|
[ext_resource type="Texture2D" uid="uid://bp3njt3h0qfbg" path="res://Assets/Textures/dead_eye_dog_boss.png" id="1_5xm32"]
|
||||||
[ext_resource type="Script" uid="uid://cbwxa2a4hfcy4" path="res://Scripts/Resources/enemy.gd" id="1_euaab"]
|
[ext_resource type="Script" uid="uid://cbwxa2a4hfcy4" path="res://Scripts/Resources/enemy.gd" id="1_euaab"]
|
||||||
[ext_resource type="Texture2D" uid="uid://ff3cys53p37j" path="res://Assets/TextureAtlases/dog_fast_boss.tres" id="2_1m62w"]
|
[ext_resource type="Texture2D" uid="uid://ff3cys53p37j" path="res://Assets/TextureAtlases/dog_fast_boss.tres" id="2_1m62w"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://b0nady5xm88bo" path="res://Worlds/GreenPlanet/Enemies/land_enemy.tscn" id="3_g83md"]
|
||||||
|
|
||||||
[resource]
|
[resource]
|
||||||
script = ExtResource("1_euaab")
|
script = ExtResource("1_euaab")
|
||||||
title = "boss dog"
|
title = "boss dog"
|
||||||
target_type = 1
|
target_type = 1
|
||||||
|
scene = ExtResource("3_g83md")
|
||||||
icon = ExtResource("1_2o720")
|
icon = ExtResource("1_2o720")
|
||||||
death_sprite = ExtResource("1_5xm32")
|
death_sprite = ExtResource("1_5xm32")
|
||||||
sprite = ExtResource("2_1m62w")
|
sprite = ExtResource("2_1m62w")
|
||||||
spawn_power = 100
|
spawn_power = 100
|
||||||
health = 8000
|
health = 7000
|
||||||
penalty = 40
|
penalty = 40
|
||||||
movement_speed = 0.8
|
movement_speed = 0.8
|
||||||
spawn_cooldown = 1.0
|
spawn_cooldown = 1.0
|
||||||
|
@ -1,14 +1,16 @@
|
|||||||
[gd_resource type="Resource" script_class="Enemy" load_steps=5 format=3 uid="uid://cvehqh4tt28g7"]
|
[gd_resource type="Resource" script_class="Enemy" load_steps=6 format=3 uid="uid://cvehqh4tt28g7"]
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://cbwxa2a4hfcy4" path="res://Scripts/Resources/enemy.gd" id="1_k5sd1"]
|
[ext_resource type="Script" uid="uid://cbwxa2a4hfcy4" path="res://Scripts/Resources/enemy.gd" id="1_k5sd1"]
|
||||||
[ext_resource type="Texture2D" uid="uid://cv5p03aw78vwd" path="res://Assets/Textures/icon_eye_dog_fast.png" id="1_xgen5"]
|
[ext_resource type="Texture2D" uid="uid://cv5p03aw78vwd" path="res://Assets/Textures/icon_eye_dog_fast.png" id="1_xgen5"]
|
||||||
[ext_resource type="Texture2D" uid="uid://dgdofekr7ow73" path="res://Assets/Textures/dead_eye_dog_fast.png" id="1_yj87d"]
|
[ext_resource type="Texture2D" uid="uid://dgdofekr7ow73" path="res://Assets/Textures/dead_eye_dog_fast.png" id="1_yj87d"]
|
||||||
[ext_resource type="Texture2D" uid="uid://dd212gh03wloa" path="res://Assets/TextureAtlases/dog_fast.tres" id="2_mkbm6"]
|
[ext_resource type="Texture2D" uid="uid://dd212gh03wloa" path="res://Assets/TextureAtlases/dog_fast.tres" id="2_mkbm6"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://b0nady5xm88bo" path="res://Worlds/GreenPlanet/Enemies/land_enemy.tscn" id="3_e3fq0"]
|
||||||
|
|
||||||
[resource]
|
[resource]
|
||||||
script = ExtResource("1_k5sd1")
|
script = ExtResource("1_k5sd1")
|
||||||
title = "fast dog"
|
title = "fast dog"
|
||||||
target_type = 1
|
target_type = 1
|
||||||
|
scene = ExtResource("3_e3fq0")
|
||||||
icon = ExtResource("1_xgen5")
|
icon = ExtResource("1_xgen5")
|
||||||
death_sprite = ExtResource("1_yj87d")
|
death_sprite = ExtResource("1_yj87d")
|
||||||
sprite = ExtResource("2_mkbm6")
|
sprite = ExtResource("2_mkbm6")
|
||||||
|
@ -1,14 +1,16 @@
|
|||||||
[gd_resource type="Resource" script_class="Enemy" load_steps=5 format=3 uid="uid://dxi17xvdlhkvc"]
|
[gd_resource type="Resource" script_class="Enemy" load_steps=6 format=3 uid="uid://dxi17xvdlhkvc"]
|
||||||
|
|
||||||
[ext_resource type="Texture2D" uid="uid://08n5jvq5tptf" path="res://Assets/Textures/icon_eye_dog_heavy.png" id="1_lck53"]
|
[ext_resource type="Texture2D" uid="uid://08n5jvq5tptf" path="res://Assets/Textures/icon_eye_dog_heavy.png" id="1_lck53"]
|
||||||
[ext_resource type="Script" uid="uid://cbwxa2a4hfcy4" path="res://Scripts/Resources/enemy.gd" id="1_q48il"]
|
[ext_resource type="Script" uid="uid://cbwxa2a4hfcy4" path="res://Scripts/Resources/enemy.gd" id="1_q48il"]
|
||||||
[ext_resource type="Texture2D" uid="uid://e7lahg40lq8a" path="res://Assets/Textures/dead_eye_dog_heavy.png" id="1_qveaa"]
|
[ext_resource type="Texture2D" uid="uid://e7lahg40lq8a" path="res://Assets/Textures/dead_eye_dog_heavy.png" id="1_qveaa"]
|
||||||
[ext_resource type="Texture2D" uid="uid://c0543ucoalwmi" path="res://Assets/TextureAtlases/dog_fast_heavy.tres" id="2_7nc4x"]
|
[ext_resource type="Texture2D" uid="uid://c0543ucoalwmi" path="res://Assets/TextureAtlases/dog_fast_heavy.tres" id="2_7nc4x"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://b0nady5xm88bo" path="res://Worlds/GreenPlanet/Enemies/land_enemy.tscn" id="3_t3gih"]
|
||||||
|
|
||||||
[resource]
|
[resource]
|
||||||
script = ExtResource("1_q48il")
|
script = ExtResource("1_q48il")
|
||||||
title = "heavy dog"
|
title = "heavy dog"
|
||||||
target_type = 1
|
target_type = 1
|
||||||
|
scene = ExtResource("3_t3gih")
|
||||||
icon = ExtResource("1_lck53")
|
icon = ExtResource("1_lck53")
|
||||||
death_sprite = ExtResource("1_qveaa")
|
death_sprite = ExtResource("1_qveaa")
|
||||||
sprite = ExtResource("2_7nc4x")
|
sprite = ExtResource("2_7nc4x")
|
||||||
|
@ -1,8 +1,9 @@
|
|||||||
[gd_resource type="Resource" script_class="Enemy" load_steps=6 format=3 uid="uid://btudmfd7wfwec"]
|
[gd_resource type="Resource" script_class="Enemy" load_steps=7 format=3 uid="uid://btudmfd7wfwec"]
|
||||||
|
|
||||||
[ext_resource type="Texture2D" uid="uid://bl16mvx4xaxeb" path="res://Assets/Textures/dead_leapfrog.png" id="1_aa1x4"]
|
[ext_resource type="Texture2D" uid="uid://bl16mvx4xaxeb" path="res://Assets/Textures/dead_leapfrog.png" id="1_aa1x4"]
|
||||||
[ext_resource type="Texture2D" uid="uid://3ywtwfpuuknr" path="res://Assets/Textures/leapfrog.png" id="2_pj3v3"]
|
[ext_resource type="Texture2D" uid="uid://3ywtwfpuuknr" path="res://Assets/Textures/leapfrog.png" id="2_pj3v3"]
|
||||||
[ext_resource type="Script" uid="uid://cbwxa2a4hfcy4" path="res://Scripts/Resources/enemy.gd" id="3_i5ry5"]
|
[ext_resource type="Script" uid="uid://cbwxa2a4hfcy4" path="res://Scripts/Resources/enemy.gd" id="3_i5ry5"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://cmneu5o0m02l8" path="res://Worlds/GreenPlanet/Enemies/leaping_enemy.tscn" id="3_pj3v3"]
|
||||||
[ext_resource type="Texture2D" uid="uid://cb66pspr16scy" path="res://Assets/Textures/leapfrog_2.png" id="4_i5ry5"]
|
[ext_resource type="Texture2D" uid="uid://cb66pspr16scy" path="res://Assets/Textures/leapfrog_2.png" id="4_i5ry5"]
|
||||||
|
|
||||||
[sub_resource type="AtlasTexture" id="AtlasTexture_n6kdu"]
|
[sub_resource type="AtlasTexture" id="AtlasTexture_n6kdu"]
|
||||||
@ -15,6 +16,7 @@ resource_local_to_scene = true
|
|||||||
script = ExtResource("3_i5ry5")
|
script = ExtResource("3_i5ry5")
|
||||||
title = "Leapdog"
|
title = "Leapdog"
|
||||||
target_type = 1
|
target_type = 1
|
||||||
|
scene = ExtResource("3_pj3v3")
|
||||||
icon = ExtResource("2_pj3v3")
|
icon = ExtResource("2_pj3v3")
|
||||||
death_sprite = ExtResource("1_aa1x4")
|
death_sprite = ExtResource("1_aa1x4")
|
||||||
sprite = SubResource("AtlasTexture_n6kdu")
|
sprite = SubResource("AtlasTexture_n6kdu")
|
||||||
|
@ -1,91 +0,0 @@
|
|||||||
[gd_resource type="Resource" script_class="PlayerKeymap" load_steps=18 format=3 uid="uid://24x6dxeyp6q"]
|
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://vkthiwr3vq4g" path="res://Scripts/Resources/player_keymap.gd" id="1_mq1d3"]
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_x2tr7"]
|
|
||||||
device = -1
|
|
||||||
keycode = 65
|
|
||||||
unicode = 97
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_5s7xv"]
|
|
||||||
button_index = 1
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_l3f8p"]
|
|
||||||
button_index = 2
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_km24n"]
|
|
||||||
device = -1
|
|
||||||
keycode = 69
|
|
||||||
unicode = 101
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_k7imb"]
|
|
||||||
device = -1
|
|
||||||
keycode = 32
|
|
||||||
unicode = 32
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_bkkdp"]
|
|
||||||
device = -1
|
|
||||||
keycode = 83
|
|
||||||
unicode = 115
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_sflgv"]
|
|
||||||
device = -1
|
|
||||||
keycode = 90
|
|
||||||
unicode = 122
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_gpfw7"]
|
|
||||||
device = -1
|
|
||||||
keycode = 81
|
|
||||||
unicode = 113
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_h2ivp"]
|
|
||||||
device = -1
|
|
||||||
keycode = 68
|
|
||||||
unicode = 100
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_tghoj"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194309
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_wow3c"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194305
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_wge4x"]
|
|
||||||
device = -1
|
|
||||||
keycode = 70
|
|
||||||
unicode = 102
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_fgwoe"]
|
|
||||||
button_index = 5
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_3ljja"]
|
|
||||||
button_index = 4
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_08u8b"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194325
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_jtv7p"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194306
|
|
||||||
|
|
||||||
[resource]
|
|
||||||
script = ExtResource("1_mq1d3")
|
|
||||||
title = "AZERTY"
|
|
||||||
move_forward = SubResource("InputEventKey_sflgv")
|
|
||||||
move_backward = SubResource("InputEventKey_bkkdp")
|
|
||||||
move_left = SubResource("InputEventKey_gpfw7")
|
|
||||||
move_right = SubResource("InputEventKey_h2ivp")
|
|
||||||
jump = SubResource("InputEventKey_k7imb")
|
|
||||||
sprint = SubResource("InputEventKey_08u8b")
|
|
||||||
interact = SubResource("InputEventKey_km24n")
|
|
||||||
open_text_chat = SubResource("InputEventKey_tghoj")
|
|
||||||
ready = SubResource("InputEventKey_wge4x")
|
|
||||||
pause = SubResource("InputEventKey_wow3c")
|
|
||||||
equip_card_in_gauntlet = SubResource("InputEventKey_x2tr7")
|
|
||||||
view_map = SubResource("InputEventKey_jtv7p")
|
|
||||||
fire1 = SubResource("InputEventMouseButton_5s7xv")
|
|
||||||
fire2 = SubResource("InputEventMouseButton_l3f8p")
|
|
||||||
select_next_card = SubResource("InputEventMouseButton_fgwoe")
|
|
||||||
select_prev_card = SubResource("InputEventMouseButton_3ljja")
|
|
@ -1,91 +0,0 @@
|
|||||||
[gd_resource type="Resource" script_class="PlayerKeymap" load_steps=18 format=3 uid="uid://bimicdfsvbsfe"]
|
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://vkthiwr3vq4g" path="res://Scripts/Resources/player_keymap.gd" id="1_ea4lr"]
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_vtcll"]
|
|
||||||
device = -1
|
|
||||||
keycode = 81
|
|
||||||
unicode = 113
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_jdiqn"]
|
|
||||||
button_index = 1
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_x1yto"]
|
|
||||||
button_index = 2
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_43xjm"]
|
|
||||||
device = -1
|
|
||||||
keycode = 70
|
|
||||||
unicode = 102
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_yuctl"]
|
|
||||||
device = -1
|
|
||||||
keycode = 32
|
|
||||||
unicode = 32
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_73pxv"]
|
|
||||||
device = -1
|
|
||||||
keycode = 82
|
|
||||||
unicode = 114
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_nvtcc"]
|
|
||||||
device = -1
|
|
||||||
keycode = 87
|
|
||||||
unicode = 119
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_h2yjp"]
|
|
||||||
device = -1
|
|
||||||
keycode = 65
|
|
||||||
unicode = 97
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_xvv7x"]
|
|
||||||
device = -1
|
|
||||||
keycode = 83
|
|
||||||
unicode = 115
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_ksd1d"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194309
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_7ynrb"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194305
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_0pbgp"]
|
|
||||||
device = -1
|
|
||||||
keycode = 84
|
|
||||||
unicode = 116
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_flrjb"]
|
|
||||||
button_index = 5
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_ah2mb"]
|
|
||||||
button_index = 4
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_opngu"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194325
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_f1w6s"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194306
|
|
||||||
|
|
||||||
[resource]
|
|
||||||
script = ExtResource("1_ea4lr")
|
|
||||||
title = "COLEMAK"
|
|
||||||
move_forward = SubResource("InputEventKey_nvtcc")
|
|
||||||
move_backward = SubResource("InputEventKey_73pxv")
|
|
||||||
move_left = SubResource("InputEventKey_h2yjp")
|
|
||||||
move_right = SubResource("InputEventKey_xvv7x")
|
|
||||||
jump = SubResource("InputEventKey_yuctl")
|
|
||||||
sprint = SubResource("InputEventKey_opngu")
|
|
||||||
interact = SubResource("InputEventKey_43xjm")
|
|
||||||
open_text_chat = SubResource("InputEventKey_ksd1d")
|
|
||||||
ready = SubResource("InputEventKey_0pbgp")
|
|
||||||
pause = SubResource("InputEventKey_7ynrb")
|
|
||||||
equip_card_in_gauntlet = SubResource("InputEventKey_vtcll")
|
|
||||||
view_map = SubResource("InputEventKey_f1w6s")
|
|
||||||
fire1 = SubResource("InputEventMouseButton_jdiqn")
|
|
||||||
fire2 = SubResource("InputEventMouseButton_x1yto")
|
|
||||||
select_next_card = SubResource("InputEventMouseButton_flrjb")
|
|
||||||
select_prev_card = SubResource("InputEventMouseButton_ah2mb")
|
|
@ -1,83 +0,0 @@
|
|||||||
[gd_resource type="Resource" script_class="PlayerKeymap" load_steps=18 format=3 uid="uid://ciy3467h2g8fi"]
|
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://vkthiwr3vq4g" path="res://Scripts/Resources/player_keymap.gd" id="1_tfpk7"]
|
|
||||||
|
|
||||||
[sub_resource type="InputEventJoypadButton" id="InputEventJoypadButton_wcd5e"]
|
|
||||||
button_index = 9
|
|
||||||
pressed = true
|
|
||||||
|
|
||||||
[sub_resource type="InputEventJoypadMotion" id="InputEventJoypadMotion_u2vjr"]
|
|
||||||
axis = 5
|
|
||||||
axis_value = 1.0
|
|
||||||
|
|
||||||
[sub_resource type="InputEventJoypadMotion" id="InputEventJoypadMotion_t6w8w"]
|
|
||||||
axis = 4
|
|
||||||
axis_value = 1.0
|
|
||||||
|
|
||||||
[sub_resource type="InputEventJoypadButton" id="InputEventJoypadButton_cmg03"]
|
|
||||||
button_index = 2
|
|
||||||
pressed = true
|
|
||||||
|
|
||||||
[sub_resource type="InputEventJoypadButton" id="InputEventJoypadButton_u1s05"]
|
|
||||||
|
|
||||||
[sub_resource type="InputEventJoypadMotion" id="InputEventJoypadMotion_rkpws"]
|
|
||||||
axis = 1
|
|
||||||
axis_value = 1.0
|
|
||||||
|
|
||||||
[sub_resource type="InputEventJoypadMotion" id="InputEventJoypadMotion_hfod6"]
|
|
||||||
axis = 1
|
|
||||||
axis_value = -1.0
|
|
||||||
|
|
||||||
[sub_resource type="InputEventJoypadMotion" id="InputEventJoypadMotion_8v3ji"]
|
|
||||||
axis_value = -1.0
|
|
||||||
|
|
||||||
[sub_resource type="InputEventJoypadMotion" id="InputEventJoypadMotion_mdo5n"]
|
|
||||||
axis_value = 1.0
|
|
||||||
|
|
||||||
[sub_resource type="InputEventJoypadButton" id="InputEventJoypadButton_g0awx"]
|
|
||||||
button_index = 11
|
|
||||||
pressed = true
|
|
||||||
|
|
||||||
[sub_resource type="InputEventJoypadButton" id="InputEventJoypadButton_rdp3w"]
|
|
||||||
button_index = 6
|
|
||||||
pressed = true
|
|
||||||
|
|
||||||
[sub_resource type="InputEventJoypadButton" id="InputEventJoypadButton_pt0da"]
|
|
||||||
button_index = 1
|
|
||||||
pressed = true
|
|
||||||
|
|
||||||
[sub_resource type="InputEventJoypadButton" id="InputEventJoypadButton_1ppnc"]
|
|
||||||
button_index = 14
|
|
||||||
pressed = true
|
|
||||||
|
|
||||||
[sub_resource type="InputEventJoypadButton" id="InputEventJoypadButton_ntg7n"]
|
|
||||||
button_index = 13
|
|
||||||
pressed = true
|
|
||||||
|
|
||||||
[sub_resource type="InputEventJoypadButton" id="InputEventJoypadButton_0ju3o"]
|
|
||||||
button_index = 7
|
|
||||||
pressed = true
|
|
||||||
|
|
||||||
[sub_resource type="InputEventJoypadButton" id="InputEventJoypadButton_171bh"]
|
|
||||||
button_index = 4
|
|
||||||
pressed = true
|
|
||||||
|
|
||||||
[resource]
|
|
||||||
script = ExtResource("1_tfpk7")
|
|
||||||
title = "Controller"
|
|
||||||
move_forward = SubResource("InputEventJoypadMotion_hfod6")
|
|
||||||
move_backward = SubResource("InputEventJoypadMotion_rkpws")
|
|
||||||
move_left = SubResource("InputEventJoypadMotion_8v3ji")
|
|
||||||
move_right = SubResource("InputEventJoypadMotion_mdo5n")
|
|
||||||
jump = SubResource("InputEventJoypadButton_u1s05")
|
|
||||||
sprint = SubResource("InputEventJoypadButton_0ju3o")
|
|
||||||
interact = SubResource("InputEventJoypadButton_cmg03")
|
|
||||||
open_text_chat = SubResource("InputEventJoypadButton_g0awx")
|
|
||||||
ready = SubResource("InputEventJoypadButton_pt0da")
|
|
||||||
pause = SubResource("InputEventJoypadButton_rdp3w")
|
|
||||||
equip_card_in_gauntlet = SubResource("InputEventJoypadButton_wcd5e")
|
|
||||||
view_map = SubResource("InputEventJoypadButton_171bh")
|
|
||||||
fire1 = SubResource("InputEventJoypadMotion_u2vjr")
|
|
||||||
fire2 = SubResource("InputEventJoypadMotion_t6w8w")
|
|
||||||
select_next_card = SubResource("InputEventJoypadButton_1ppnc")
|
|
||||||
select_prev_card = SubResource("InputEventJoypadButton_ntg7n")
|
|
@ -1,91 +0,0 @@
|
|||||||
[gd_resource type="Resource" script_class="PlayerKeymap" load_steps=18 format=3 uid="uid://qgpkrp08tx5l"]
|
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://vkthiwr3vq4g" path="res://Scripts/Resources/player_keymap.gd" id="1_e3tjt"]
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_62tdh"]
|
|
||||||
device = -1
|
|
||||||
keycode = 39
|
|
||||||
unicode = 39
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_gd1dk"]
|
|
||||||
button_index = 1
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_eqrpb"]
|
|
||||||
button_index = 2
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_x2isa"]
|
|
||||||
device = -1
|
|
||||||
keycode = 46
|
|
||||||
unicode = 46
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_sjxn8"]
|
|
||||||
device = -1
|
|
||||||
keycode = 32
|
|
||||||
unicode = 32
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_kjw4x"]
|
|
||||||
device = -1
|
|
||||||
keycode = 79
|
|
||||||
unicode = 111
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_61m8q"]
|
|
||||||
device = -1
|
|
||||||
keycode = 44
|
|
||||||
unicode = 44
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_tdkec"]
|
|
||||||
device = -1
|
|
||||||
keycode = 65
|
|
||||||
unicode = 97
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_flmuc"]
|
|
||||||
device = -1
|
|
||||||
keycode = 69
|
|
||||||
unicode = 101
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_8xqt1"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194309
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_itl5r"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194305
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_drnpm"]
|
|
||||||
device = -1
|
|
||||||
keycode = 85
|
|
||||||
unicode = 117
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_tu87m"]
|
|
||||||
button_index = 5
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_3ufg1"]
|
|
||||||
button_index = 4
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_3m66q"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194325
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_docp6"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194306
|
|
||||||
|
|
||||||
[resource]
|
|
||||||
script = ExtResource("1_e3tjt")
|
|
||||||
title = "DVORAK"
|
|
||||||
move_forward = SubResource("InputEventKey_61m8q")
|
|
||||||
move_backward = SubResource("InputEventKey_kjw4x")
|
|
||||||
move_left = SubResource("InputEventKey_tdkec")
|
|
||||||
move_right = SubResource("InputEventKey_flmuc")
|
|
||||||
jump = SubResource("InputEventKey_sjxn8")
|
|
||||||
sprint = SubResource("InputEventKey_3m66q")
|
|
||||||
interact = SubResource("InputEventKey_x2isa")
|
|
||||||
open_text_chat = SubResource("InputEventKey_8xqt1")
|
|
||||||
ready = SubResource("InputEventKey_drnpm")
|
|
||||||
pause = SubResource("InputEventKey_itl5r")
|
|
||||||
equip_card_in_gauntlet = SubResource("InputEventKey_62tdh")
|
|
||||||
view_map = SubResource("InputEventKey_docp6")
|
|
||||||
fire1 = SubResource("InputEventMouseButton_gd1dk")
|
|
||||||
fire2 = SubResource("InputEventMouseButton_eqrpb")
|
|
||||||
select_next_card = SubResource("InputEventMouseButton_tu87m")
|
|
||||||
select_prev_card = SubResource("InputEventMouseButton_3ufg1")
|
|
@ -1,91 +0,0 @@
|
|||||||
[gd_resource type="Resource" script_class="PlayerKeymap" load_steps=18 format=3 uid="uid://dml3iwhpttdat"]
|
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://vkthiwr3vq4g" path="res://Scripts/Resources/player_keymap.gd" id="1_6xs82"]
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_g7iw8"]
|
|
||||||
device = -1
|
|
||||||
keycode = 81
|
|
||||||
unicode = 113
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_32lj4"]
|
|
||||||
button_index = 1
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_d3xef"]
|
|
||||||
button_index = 2
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_brup3"]
|
|
||||||
device = -1
|
|
||||||
keycode = 69
|
|
||||||
unicode = 101
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_p6g50"]
|
|
||||||
device = -1
|
|
||||||
keycode = 32
|
|
||||||
unicode = 32
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_cavx6"]
|
|
||||||
device = -1
|
|
||||||
keycode = 83
|
|
||||||
unicode = 115
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_e7m41"]
|
|
||||||
device = -1
|
|
||||||
keycode = 87
|
|
||||||
unicode = 119
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_5ut3l"]
|
|
||||||
device = -1
|
|
||||||
keycode = 65
|
|
||||||
unicode = 97
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_3uioy"]
|
|
||||||
device = -1
|
|
||||||
keycode = 68
|
|
||||||
unicode = 100
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_6mykw"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194309
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_ujdbv"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194305
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_kiqcj"]
|
|
||||||
device = -1
|
|
||||||
keycode = 70
|
|
||||||
unicode = 102
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_e8eut"]
|
|
||||||
button_index = 5
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_ntdkp"]
|
|
||||||
button_index = 4
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_tmf7l"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194325
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_a3okn"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194306
|
|
||||||
|
|
||||||
[resource]
|
|
||||||
script = ExtResource("1_6xs82")
|
|
||||||
title = "QWERTY"
|
|
||||||
move_forward = SubResource("InputEventKey_e7m41")
|
|
||||||
move_backward = SubResource("InputEventKey_cavx6")
|
|
||||||
move_left = SubResource("InputEventKey_5ut3l")
|
|
||||||
move_right = SubResource("InputEventKey_3uioy")
|
|
||||||
jump = SubResource("InputEventKey_p6g50")
|
|
||||||
sprint = SubResource("InputEventKey_tmf7l")
|
|
||||||
interact = SubResource("InputEventKey_brup3")
|
|
||||||
open_text_chat = SubResource("InputEventKey_6mykw")
|
|
||||||
ready = SubResource("InputEventKey_kiqcj")
|
|
||||||
pause = SubResource("InputEventKey_ujdbv")
|
|
||||||
equip_card_in_gauntlet = SubResource("InputEventKey_g7iw8")
|
|
||||||
view_map = SubResource("InputEventKey_a3okn")
|
|
||||||
fire1 = SubResource("InputEventMouseButton_32lj4")
|
|
||||||
fire2 = SubResource("InputEventMouseButton_d3xef")
|
|
||||||
select_next_card = SubResource("InputEventMouseButton_e8eut")
|
|
||||||
select_prev_card = SubResource("InputEventMouseButton_ntdkp")
|
|
@ -1,91 +0,0 @@
|
|||||||
[gd_resource type="Resource" script_class="PlayerKeymap" load_steps=18 format=3 uid="uid://g02ll7a7urwl"]
|
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://vkthiwr3vq4g" path="res://Scripts/Resources/player_keymap.gd" id="1_pf0gk"]
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_ikcft"]
|
|
||||||
device = -1
|
|
||||||
keycode = 81
|
|
||||||
unicode = 113
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_x77eo"]
|
|
||||||
button_index = 1
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_uiqw0"]
|
|
||||||
button_index = 2
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_bg51j"]
|
|
||||||
device = -1
|
|
||||||
keycode = 82
|
|
||||||
unicode = 114
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_2hgt5"]
|
|
||||||
device = -1
|
|
||||||
keycode = 32
|
|
||||||
unicode = 32
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_lc0ss"]
|
|
||||||
device = -1
|
|
||||||
keycode = 83
|
|
||||||
unicode = 115
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_lei27"]
|
|
||||||
device = -1
|
|
||||||
keycode = 68
|
|
||||||
unicode = 100
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_7juwk"]
|
|
||||||
device = -1
|
|
||||||
keycode = 65
|
|
||||||
unicode = 97
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_qfke7"]
|
|
||||||
device = -1
|
|
||||||
keycode = 72
|
|
||||||
unicode = 104
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_tbuvp"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194309
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_tm5f1"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194305
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_krad3"]
|
|
||||||
device = -1
|
|
||||||
keycode = 84
|
|
||||||
unicode = 116
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_xu2iv"]
|
|
||||||
button_index = 5
|
|
||||||
|
|
||||||
[sub_resource type="InputEventMouseButton" id="InputEventMouseButton_crqmx"]
|
|
||||||
button_index = 4
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_bnnig"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194325
|
|
||||||
|
|
||||||
[sub_resource type="InputEventKey" id="InputEventKey_tajfr"]
|
|
||||||
device = -1
|
|
||||||
keycode = 4194306
|
|
||||||
|
|
||||||
[resource]
|
|
||||||
script = ExtResource("1_pf0gk")
|
|
||||||
title = "WORKMAN"
|
|
||||||
move_forward = SubResource("InputEventKey_lei27")
|
|
||||||
move_backward = SubResource("InputEventKey_lc0ss")
|
|
||||||
move_left = SubResource("InputEventKey_7juwk")
|
|
||||||
move_right = SubResource("InputEventKey_qfke7")
|
|
||||||
jump = SubResource("InputEventKey_2hgt5")
|
|
||||||
sprint = SubResource("InputEventKey_bnnig")
|
|
||||||
interact = SubResource("InputEventKey_bg51j")
|
|
||||||
open_text_chat = SubResource("InputEventKey_tbuvp")
|
|
||||||
ready = SubResource("InputEventKey_krad3")
|
|
||||||
pause = SubResource("InputEventKey_tm5f1")
|
|
||||||
equip_card_in_gauntlet = SubResource("InputEventKey_ikcft")
|
|
||||||
view_map = SubResource("InputEventKey_tajfr")
|
|
||||||
fire1 = SubResource("InputEventMouseButton_x77eo")
|
|
||||||
fire2 = SubResource("InputEventMouseButton_uiqw0")
|
|
||||||
select_next_card = SubResource("InputEventMouseButton_xu2iv")
|
|
||||||
select_prev_card = SubResource("InputEventMouseButton_crqmx")
|
|
@ -1,8 +1,6 @@
|
|||||||
class_name CardPrinter extends StaticBody3D
|
class_name CardPrinter extends StaticBody3D
|
||||||
|
|
||||||
@export var item_card_scene: PackedScene
|
|
||||||
@export var button_collider: CollisionShape3D
|
@export var button_collider: CollisionShape3D
|
||||||
@export var button_box: Node3D
|
|
||||||
|
|
||||||
#TODO: use faction enum
|
#TODO: use faction enum
|
||||||
var base_faction: int = 1
|
var base_faction: int = 1
|
||||||
@ -24,7 +22,7 @@ func generate_rarity() -> int:
|
|||||||
for rarity: String in Data.Rarity:
|
for rarity: String in Data.Rarity:
|
||||||
weight_total += Data.rarity_weights[rarity]
|
weight_total += Data.rarity_weights[rarity]
|
||||||
|
|
||||||
var generated_rarity: int = Game.randi_in_range(4 * cards_generated, 0, weight_total)
|
var generated_rarity: int = NoiseRandom.randi_in_range(4 * cards_generated, 0, weight_total)
|
||||||
cards_generated += 1
|
cards_generated += 1
|
||||||
var decided_rarity: int = 0
|
var decided_rarity: int = 0
|
||||||
|
|
||||||
@ -38,6 +36,7 @@ func generate_rarity() -> int:
|
|||||||
|
|
||||||
func randomize_cards(faction: Card.Faction) -> void:
|
func randomize_cards(faction: Card.Faction) -> void:
|
||||||
#TODO: no magic numbers, asshole! 3 = cards to spawn
|
#TODO: no magic numbers, asshole! 3 = cards to spawn
|
||||||
|
var pos_x: float = 0.0
|
||||||
for x: int in 3:
|
for x: int in 3:
|
||||||
var decided_rarity: int = generate_rarity()
|
var decided_rarity: int = generate_rarity()
|
||||||
var card_choices: Array[Card] = get_faction_cards(faction)
|
var card_choices: Array[Card] = get_faction_cards(faction)
|
||||||
@ -48,18 +47,21 @@ func randomize_cards(faction: Card.Faction) -> void:
|
|||||||
if card.rarity == decided_rarity:
|
if card.rarity == decided_rarity:
|
||||||
card_array.append(card)
|
card_array.append(card)
|
||||||
cards_chosen = true
|
cards_chosen = true
|
||||||
decided_rarity -= 1
|
|
||||||
if decided_rarity < 0:
|
if decided_rarity < 0:
|
||||||
card_array.append(Data.cards[0])
|
card_array.append(Data.cards[0])
|
||||||
cards_chosen = true
|
cards_chosen = true
|
||||||
|
decided_rarity -= 1
|
||||||
var card: Card
|
var card: Card
|
||||||
if card_array.size() > 0:
|
if card_array.size() > 0:
|
||||||
card = card_array[Game.randi_in_range(132 * cards_generated, 0, card_array.size() - 1)]
|
card = card_array[NoiseRandom.randi_in_range(132 * cards_generated, 0, card_array.size() - 1)]
|
||||||
cards_generated += 1
|
cards_generated += 1
|
||||||
card_array.erase(card)
|
card_array.erase(card)
|
||||||
var item: CardItem = item_card_scene.instantiate() as CardItem
|
var item: CardItem = reply_player.hero_class.card_item.instantiate() as CardItem
|
||||||
item.set_card(card)
|
item.set_card(card)
|
||||||
item.position = Vector3(x, 1, 2)
|
item.position = Vector3(pos_x, 2, 0)
|
||||||
|
pos_x *= -1
|
||||||
|
if pos_x >= 0:
|
||||||
|
pos_x += 1.25
|
||||||
item.pressed.connect(card_picked_up)
|
item.pressed.connect(card_picked_up)
|
||||||
spawned_cards.append(item)
|
spawned_cards.append(item)
|
||||||
add_child(item)
|
add_child(item)
|
||||||
@ -72,13 +74,11 @@ func card_picked_up(card_item: CardItem) -> void:
|
|||||||
spawned_card.queue_free()
|
spawned_card.queue_free()
|
||||||
spawned_cards = []
|
spawned_cards = []
|
||||||
button_collider.disabled = false
|
button_collider.disabled = false
|
||||||
button_box.position = Vector3(0,0,0)
|
|
||||||
$StaticBody3D/AudioStreamPlayer3D.play()
|
$StaticBody3D/AudioStreamPlayer3D.play()
|
||||||
|
|
||||||
|
|
||||||
func _on_static_body_3d_button_interacted(_value: int, reply: Hero) -> void:
|
func _on_static_body_3d_button_interacted(_value: int, reply: Hero) -> void:
|
||||||
reply_player = reply
|
reply_player = reply
|
||||||
button_collider.disabled = true
|
button_collider.disabled = true
|
||||||
button_box.position = Vector3(0,0,-0.2)
|
|
||||||
$StaticBody3D/AudioStreamPlayer3D.play()
|
$StaticBody3D/AudioStreamPlayer3D.play()
|
||||||
randomize_cards(reply.hero_class.faction)
|
randomize_cards(reply.hero_class.faction)
|
||||||
|
@ -1,37 +1,27 @@
|
|||||||
[gd_scene load_steps=9 format=3 uid="uid://1b2ikdanl66b"]
|
[gd_scene load_steps=8 format=3 uid="uid://1b2ikdanl66b"]
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://bivtfdl3p1brv" path="res://Scenes/CardPrinter/card_printer.gd" id="1_qft15"]
|
[ext_resource type="Script" uid="uid://bivtfdl3p1brv" path="res://Scenes/CardPrinter/card_printer.gd" id="1_qft15"]
|
||||||
[ext_resource type="PackedScene" uid="uid://dq8v5e11rvyi6" path="res://plan.tscn" id="2_8jpsw"]
|
|
||||||
[ext_resource type="Script" uid="uid://dkfswql8ui0bt" path="res://Scripts/interact_button.gd" id="4_eavi1"]
|
[ext_resource type="Script" uid="uid://dkfswql8ui0bt" path="res://Scripts/interact_button.gd" id="4_eavi1"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://b6i5w3mowcfcs" path="res://drafting_table.glb" id="4_kpujb"]
|
||||||
[ext_resource type="AudioStream" uid="uid://dknygn5eyuhxt" path="res://Audio/shot1.wav" id="5_m033a"]
|
[ext_resource type="AudioStream" uid="uid://dknygn5eyuhxt" path="res://Audio/shot1.wav" id="5_m033a"]
|
||||||
|
|
||||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_s02au"]
|
|
||||||
albedo_color = Color(0.203922, 0.592157, 0.592157, 1)
|
|
||||||
|
|
||||||
[sub_resource type="BoxShape3D" id="BoxShape3D_0ebt5"]
|
[sub_resource type="BoxShape3D" id="BoxShape3D_0ebt5"]
|
||||||
size = Vector3(2, 2.1, 1)
|
size = Vector3(2.17, 1.55307, 1.12)
|
||||||
|
|
||||||
[sub_resource type="BoxShape3D" id="BoxShape3D_ikdwj"]
|
[sub_resource type="BoxShape3D" id="BoxShape3D_ikdwj"]
|
||||||
size = Vector3(1.29447, 0.342125, 0.277604)
|
size = Vector3(2.20033, 0.260753, 1.27008)
|
||||||
|
|
||||||
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_73g2w"]
|
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_73g2w"]
|
||||||
random_pitch = 1.1
|
random_pitch = 1.1
|
||||||
streams_count = 1
|
streams_count = 1
|
||||||
stream_0/stream = ExtResource("5_m033a")
|
stream_0/stream = ExtResource("5_m033a")
|
||||||
|
|
||||||
[node name="CardPrinter" type="StaticBody3D" node_paths=PackedStringArray("button_collider", "button_box")]
|
[node name="CardPrinter" type="StaticBody3D" node_paths=PackedStringArray("button_collider")]
|
||||||
script = ExtResource("1_qft15")
|
script = ExtResource("1_qft15")
|
||||||
item_card_scene = ExtResource("2_8jpsw")
|
|
||||||
button_collider = NodePath("StaticBody3D/CollisionShape3D2")
|
button_collider = NodePath("StaticBody3D/CollisionShape3D2")
|
||||||
button_box = NodePath("StaticBody3D/CollisionShape3D2/CSGBox3D")
|
|
||||||
|
|
||||||
[node name="CSGBox3D" type="CSGBox3D" parent="."]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.05, 0)
|
|
||||||
size = Vector3(2, 2.1, 1)
|
|
||||||
material = SubResource("StandardMaterial3D_s02au")
|
|
||||||
|
|
||||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.05, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.776539, 0.0332634)
|
||||||
shape = SubResource("BoxShape3D_0ebt5")
|
shape = SubResource("BoxShape3D_0ebt5")
|
||||||
|
|
||||||
[node name="StaticBody3D" type="StaticBody3D" parent="."]
|
[node name="StaticBody3D" type="StaticBody3D" parent="."]
|
||||||
@ -40,17 +30,18 @@ collision_layer = 16
|
|||||||
collision_mask = 0
|
collision_mask = 0
|
||||||
script = ExtResource("4_eavi1")
|
script = ExtResource("4_eavi1")
|
||||||
press_cost = 15
|
press_cost = 15
|
||||||
hover_text = "[center]#Interact# to spend $15 on random card"
|
hover_text = "[center]#Interact# draft a card for $15"
|
||||||
|
|
||||||
[node name="CollisionShape3D2" type="CollisionShape3D" parent="StaticBody3D"]
|
[node name="CollisionShape3D2" type="CollisionShape3D" parent="StaticBody3D"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.866025, -0.5, 0, 0.5, 0.866025, -6.55949e-05, 0.349496, -0.579584)
|
||||||
shape = SubResource("BoxShape3D_ikdwj")
|
shape = SubResource("BoxShape3D_ikdwj")
|
||||||
|
|
||||||
[node name="CSGBox3D" type="CSGBox3D" parent="StaticBody3D/CollisionShape3D2"]
|
|
||||||
size = Vector3(1.29447, 0.342125, 0.277604)
|
|
||||||
|
|
||||||
[node name="AudioStreamPlayer3D" type="AudioStreamPlayer3D" parent="StaticBody3D"]
|
[node name="AudioStreamPlayer3D" type="AudioStreamPlayer3D" parent="StaticBody3D"]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.010989, -0.086501)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.578748, -0.587001)
|
||||||
stream = SubResource("AudioStreamRandomizer_73g2w")
|
stream = SubResource("AudioStreamRandomizer_73g2w")
|
||||||
bus = &"SFX"
|
bus = &"SFX"
|
||||||
|
|
||||||
|
[node name="drafting_table" parent="." instance=ExtResource("4_kpujb")]
|
||||||
|
transform = Transform3D(0.06, 0, 0, 0, 0.06, 0, 0, 0, 0.06, 0, 0.385809, 0)
|
||||||
|
|
||||||
[connection signal="button_interacted" from="StaticBody3D" to="." method="_on_static_body_3d_button_interacted"]
|
[connection signal="button_interacted" from="StaticBody3D" to="." method="_on_static_body_3d_button_interacted"]
|
||||||
|
@ -1,3 +1,7 @@
|
|||||||
class_name CharacterPodium extends Node3D
|
class_name CharacterPodium extends Node3D
|
||||||
|
|
||||||
@export var text: String = ""
|
@export var text: String = ""
|
||||||
|
|
||||||
|
|
||||||
|
func show_content() -> void:
|
||||||
|
$Base/Content.visible = true
|
||||||
|