Initial Testing
2
.gitattributes
vendored
Normal file
|
@ -0,0 +1,2 @@
|
|||
# Normalize EOL for all files that Git considers text files.
|
||||
* text=auto eol=lf
|
12
.gitignore
vendored
Normal file
|
@ -0,0 +1,12 @@
|
|||
# Git
|
||||
.git/
|
||||
|
||||
# Godot 4+ specific ignores
|
||||
.godot/
|
||||
addons/
|
||||
|
||||
# Android SDK
|
||||
android/
|
||||
|
||||
# Build
|
||||
build/
|
BIN
assets/icons/logo.png
Normal file
After Width: | Height: | Size: 212 KiB |
34
assets/icons/logo.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://c0tosekulqglv"
|
||||
path="res://.godot/imported/logo.png-7a0fc559fcb721e289a661b90789984f.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/logo.png"
|
||||
dest_files=["res://.godot/imported/logo.png-7a0fc559fcb721e289a661b90789984f.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/icons/towers/cannon-1-disabled.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
34
assets/icons/towers/cannon-1-disabled.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dql0j3rmo6lt6"
|
||||
path="res://.godot/imported/cannon-1-disabled.png-74d97cc25c0594f4c40968751a35ebcb.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/towers/cannon-1-disabled.png"
|
||||
dest_files=["res://.godot/imported/cannon-1-disabled.png-74d97cc25c0594f4c40968751a35ebcb.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/icons/towers/cannon-1.png
Normal file
After Width: | Height: | Size: 1 KiB |
34
assets/icons/towers/cannon-1.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dtdqwc3d7abui"
|
||||
path="res://.godot/imported/cannon-1.png-16a3e510d60d1ec8c156e98061bc8fcf.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/towers/cannon-1.png"
|
||||
dest_files=["res://.godot/imported/cannon-1.png-16a3e510d60d1ec8c156e98061bc8fcf.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/icons/towers/cannon-2-disabled.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
34
assets/icons/towers/cannon-2-disabled.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dsoyirg58ihic"
|
||||
path="res://.godot/imported/cannon-2-disabled.png-ab4561a4d3ddfa53bb3f1ae582d4f362.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/towers/cannon-2-disabled.png"
|
||||
dest_files=["res://.godot/imported/cannon-2-disabled.png-ab4561a4d3ddfa53bb3f1ae582d4f362.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/icons/towers/cannon-2.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
34
assets/icons/towers/cannon-2.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dhud8rafdqniv"
|
||||
path="res://.godot/imported/cannon-2.png-a9ef811bbaa16a6e54bde9b89cf87a21.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/towers/cannon-2.png"
|
||||
dest_files=["res://.godot/imported/cannon-2.png-a9ef811bbaa16a6e54bde9b89cf87a21.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/icons/towers/cannon-3-disabled.png
Normal file
After Width: | Height: | Size: 1.6 KiB |
34
assets/icons/towers/cannon-3-disabled.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dymcfaio088vv"
|
||||
path="res://.godot/imported/cannon-3-disabled.png-bf99aafe1b3ba8452e0e498d946a689d.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/towers/cannon-3-disabled.png"
|
||||
dest_files=["res://.godot/imported/cannon-3-disabled.png-bf99aafe1b3ba8452e0e498d946a689d.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/icons/towers/cannon-3.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
34
assets/icons/towers/cannon-3.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cbxetx1b3tsnm"
|
||||
path="res://.godot/imported/cannon-3.png-9d36b9f5f76a221ab715966981283ac2.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/towers/cannon-3.png"
|
||||
dest_files=["res://.godot/imported/cannon-3.png-9d36b9f5f76a221ab715966981283ac2.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/icons/towers/railgun-1-disabled.png
Normal file
After Width: | Height: | Size: 1.6 KiB |
34
assets/icons/towers/railgun-1-disabled.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://rgnikuo8ht0w"
|
||||
path="res://.godot/imported/railgun-1-disabled.png-cd088a8cd4ebd7f4fe900a7ec6c9dbbd.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/towers/railgun-1-disabled.png"
|
||||
dest_files=["res://.godot/imported/railgun-1-disabled.png-cd088a8cd4ebd7f4fe900a7ec6c9dbbd.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/icons/towers/railgun-1.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
34
assets/icons/towers/railgun-1.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cmbg5sl1lrbj5"
|
||||
path="res://.godot/imported/railgun-1.png-b4cff314598b192609bd471cde282fcd.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/towers/railgun-1.png"
|
||||
dest_files=["res://.godot/imported/railgun-1.png-b4cff314598b192609bd471cde282fcd.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/icons/towers/railgun-2-disabled.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
34
assets/icons/towers/railgun-2-disabled.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://onausc5wx0pn"
|
||||
path="res://.godot/imported/railgun-2-disabled.png-399600f1620defb37b2de112579abe2f.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/towers/railgun-2-disabled.png"
|
||||
dest_files=["res://.godot/imported/railgun-2-disabled.png-399600f1620defb37b2de112579abe2f.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/icons/towers/railgun-2.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
34
assets/icons/towers/railgun-2.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dxlrim6se30pw"
|
||||
path="res://.godot/imported/railgun-2.png-600bc3fa96338d3309cb8321a31943ba.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/towers/railgun-2.png"
|
||||
dest_files=["res://.godot/imported/railgun-2.png-600bc3fa96338d3309cb8321a31943ba.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/icons/towers/railgun-3-disabled.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
34
assets/icons/towers/railgun-3-disabled.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dfx8kwu1074cs"
|
||||
path="res://.godot/imported/railgun-3-disabled.png-880bdb664ce64c8ae397ee8283565629.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/towers/railgun-3-disabled.png"
|
||||
dest_files=["res://.godot/imported/railgun-3-disabled.png-880bdb664ce64c8ae397ee8283565629.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/icons/towers/railgun-3.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
34
assets/icons/towers/railgun-3.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bwd0r7jl1asjd"
|
||||
path="res://.godot/imported/railgun-3.png-3639055eaf32f4f161905730987d9c78.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/towers/railgun-3.png"
|
||||
dest_files=["res://.godot/imported/railgun-3.png-3639055eaf32f4f161905730987d9c78.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/icons/turret-1.png
Normal file
After Width: | Height: | Size: 1.9 KiB |
34
assets/icons/turret-1.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://c32fecgm7x7bi"
|
||||
path="res://.godot/imported/turret-1.png-c8bfce5a2d3710a1c45093f7792d06d4.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/icons/turret-1.png"
|
||||
dest_files=["res://.godot/imported/turret-1.png-c8bfce5a2d3710a1c45093f7792d06d4.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/spritesheets/bullet-1.png
Normal file
After Width: | Height: | Size: 430 B |
34
assets/spritesheets/bullet-1.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://c57taqe4k3mi2"
|
||||
path="res://.godot/imported/bullet-1.png-b428015b3d307dcbefb0f52dad90488d.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/spritesheets/bullet-1.png"
|
||||
dest_files=["res://.godot/imported/bullet-1.png-b428015b3d307dcbefb0f52dad90488d.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/spritesheets/enemies/cyclops.png
Normal file
After Width: | Height: | Size: 4.4 MiB |
34
assets/spritesheets/enemies/cyclops.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cxkvhb7olncvm"
|
||||
path="res://.godot/imported/cyclops.png-8f451fc4f2dfc9c9415fe3a62581966e.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/spritesheets/enemies/cyclops.png"
|
||||
dest_files=["res://.godot/imported/cyclops.png-8f451fc4f2dfc9c9415fe3a62581966e.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/spritesheets/enemies/demon-boar.png
Normal file
After Width: | Height: | Size: 2.5 MiB |
34
assets/spritesheets/enemies/demon-boar.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://d1q5q70hng32n"
|
||||
path="res://.godot/imported/demon-boar.png-1c323451a963aa6f866d8033632ef24c.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/spritesheets/enemies/demon-boar.png"
|
||||
dest_files=["res://.godot/imported/demon-boar.png-1c323451a963aa6f866d8033632ef24c.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/spritesheets/enemies/demon-fungus.png
Normal file
After Width: | Height: | Size: 2 MiB |
34
assets/spritesheets/enemies/demon-fungus.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bfyws0srbawxx"
|
||||
path="res://.godot/imported/demon-fungus.png-62eb55fc17811bda23087d4c3019a458.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/spritesheets/enemies/demon-fungus.png"
|
||||
dest_files=["res://.godot/imported/demon-fungus.png-62eb55fc17811bda23087d4c3019a458.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/spritesheets/enemies/demon-shark.png
Normal file
After Width: | Height: | Size: 2.3 MiB |
34
assets/spritesheets/enemies/demon-shark.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dgegmre1q57o5"
|
||||
path="res://.godot/imported/demon-shark.png-e0d40f35f8c7b45c1170a6bb9f48d57d.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/spritesheets/enemies/demon-shark.png"
|
||||
dest_files=["res://.godot/imported/demon-shark.png-e0d40f35f8c7b45c1170a6bb9f48d57d.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/spritesheets/enemies/demon.png
Normal file
After Width: | Height: | Size: 1.9 MiB |
34
assets/spritesheets/enemies/demon.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dfdhwhurk5fbm"
|
||||
path="res://.godot/imported/demon.png-d9eb63fbe59e951a91f2b4aa4c441fa7.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/spritesheets/enemies/demon.png"
|
||||
dest_files=["res://.godot/imported/demon.png-d9eb63fbe59e951a91f2b4aa4c441fa7.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/spritesheets/enemies/orc.png
Normal file
After Width: | Height: | Size: 2.1 MiB |
34
assets/spritesheets/enemies/orc.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://ddot33oyu6vlh"
|
||||
path="res://.godot/imported/orc.png-e9532a8163088a4f1facae1b0d71b989.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/spritesheets/enemies/orc.png"
|
||||
dest_files=["res://.godot/imported/orc.png-e9532a8163088a4f1facae1b0d71b989.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/spritesheets/enemy-1.png
Normal file
After Width: | Height: | Size: 24 KiB |
34
assets/spritesheets/enemy-1.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b046l0oy0hyj2"
|
||||
path="res://.godot/imported/enemy-1.png-835a2541b32bbfcfcec0ead00a64c1e0.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/spritesheets/enemy-1.png"
|
||||
dest_files=["res://.godot/imported/enemy-1.png-835a2541b32bbfcfcec0ead00a64c1e0.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/spritesheets/placement.png
Normal file
After Width: | Height: | Size: 39 KiB |
34
assets/spritesheets/placement.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://0cbsthay7e18"
|
||||
path="res://.godot/imported/placement.png-e6ce97fc56bd7f8a816a3c9119a3a34e.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/spritesheets/placement.png"
|
||||
dest_files=["res://.godot/imported/placement.png-e6ce97fc56bd7f8a816a3c9119a3a34e.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/spritesheets/towers/cannon-1.png
Normal file
After Width: | Height: | Size: 1.6 KiB |
34
assets/spritesheets/towers/cannon-1.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://2ovf2ymtftgo"
|
||||
path="res://.godot/imported/cannon-1.png-eb71c710fae63edd411f760f6e45f60d.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/spritesheets/towers/cannon-1.png"
|
||||
dest_files=["res://.godot/imported/cannon-1.png-eb71c710fae63edd411f760f6e45f60d.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/spritesheets/towers/cannon-2.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
34
assets/spritesheets/towers/cannon-2.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://br7wgq61n6ufv"
|
||||
path="res://.godot/imported/cannon-2.png-b0cdf6e7c8b5fd4e205ebc0101a07816.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/spritesheets/towers/cannon-2.png"
|
||||
dest_files=["res://.godot/imported/cannon-2.png-b0cdf6e7c8b5fd4e205ebc0101a07816.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/spritesheets/towers/cannon-3.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
34
assets/spritesheets/towers/cannon-3.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://by4hjrjfcxsdl"
|
||||
path="res://.godot/imported/cannon-3.png-352c7d57fcde655d746559cabfc4bd9d.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/spritesheets/towers/cannon-3.png"
|
||||
dest_files=["res://.godot/imported/cannon-3.png-352c7d57fcde655d746559cabfc4bd9d.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/spritesheets/towers/railgun-1.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
34
assets/spritesheets/towers/railgun-1.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://c02ebkmjpxium"
|
||||
path="res://.godot/imported/railgun-1.png-ea7912caaa62d9953502e0944514aafa.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/spritesheets/towers/railgun-1.png"
|
||||
dest_files=["res://.godot/imported/railgun-1.png-ea7912caaa62d9953502e0944514aafa.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/spritesheets/towers/railgun-2.png
Normal file
After Width: | Height: | Size: 4.3 KiB |
34
assets/spritesheets/towers/railgun-2.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b0dawx5rlcyo3"
|
||||
path="res://.godot/imported/railgun-2.png-0e991516f3e5f5e72a5f41a800dfbc25.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/spritesheets/towers/railgun-2.png"
|
||||
dest_files=["res://.godot/imported/railgun-2.png-0e991516f3e5f5e72a5f41a800dfbc25.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/spritesheets/towers/railgun-3.png
Normal file
After Width: | Height: | Size: 1.6 KiB |
34
assets/spritesheets/towers/railgun-3.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dk3toqlc7igld"
|
||||
path="res://.godot/imported/railgun-3.png-864e34e68f2f64e04a37d8c1b4c493c0.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/spritesheets/towers/railgun-3.png"
|
||||
dest_files=["res://.godot/imported/railgun-3.png-864e34e68f2f64e04a37d8c1b4c493c0.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/tileset/ashlands/tf_A5_ashlands_3.png
Normal file
After Width: | Height: | Size: 24 KiB |
34
assets/tileset/ashlands/tf_A5_ashlands_3.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cnxj0mf3luxo"
|
||||
path="res://.godot/imported/tf_A5_ashlands_3.png-e66be35b9faba40cbbb4d85bdaae6d7d.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/tileset/ashlands/tf_A5_ashlands_3.png"
|
||||
dest_files=["res://.godot/imported/tf_A5_ashlands_3.png-e66be35b9faba40cbbb4d85bdaae6d7d.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/tileset/ashlands/tf_B_ashlands_3.png
Normal file
After Width: | Height: | Size: 34 KiB |
34
assets/tileset/ashlands/tf_B_ashlands_3.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://danbfdqmqu23q"
|
||||
path="res://.godot/imported/tf_B_ashlands_3.png-dd50ea298442e2255d3462626f18c19d.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/tileset/ashlands/tf_B_ashlands_3.png"
|
||||
dest_files=["res://.godot/imported/tf_B_ashlands_3.png-dd50ea298442e2255d3462626f18c19d.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
|
201
export_presets.cfg
Normal file
|
@ -0,0 +1,201 @@
|
|||
[preset.0]
|
||||
|
||||
name="Android"
|
||||
platform="Android"
|
||||
runnable=true
|
||||
dedicated_server=false
|
||||
custom_features=""
|
||||
export_filter="all_resources"
|
||||
include_filter=""
|
||||
exclude_filter=""
|
||||
export_path="build/android/Frontier-of-Hell.apk"
|
||||
encryption_include_filters=""
|
||||
encryption_exclude_filters=""
|
||||
encrypt_pck=false
|
||||
encrypt_directory=false
|
||||
|
||||
[preset.0.options]
|
||||
|
||||
custom_template/debug=""
|
||||
custom_template/release=""
|
||||
gradle_build/use_gradle_build=true
|
||||
gradle_build/export_format=0
|
||||
gradle_build/min_sdk=""
|
||||
gradle_build/target_sdk=""
|
||||
architectures/armeabi-v7a=true
|
||||
architectures/arm64-v8a=true
|
||||
architectures/x86=true
|
||||
architectures/x86_64=true
|
||||
version/code=1
|
||||
version/name="0.1.0"
|
||||
package/unique_name="dev.moepoi.frontierofhell"
|
||||
package/name="Frontier of Hell"
|
||||
package/signed=true
|
||||
package/app_category=2
|
||||
package/retain_data_on_uninstall=false
|
||||
package/exclude_from_recents=false
|
||||
launcher_icons/main_192x192="res://assets/icons/logo.png"
|
||||
launcher_icons/adaptive_foreground_432x432=""
|
||||
launcher_icons/adaptive_background_432x432=""
|
||||
graphics/opengl_debug=false
|
||||
xr_features/xr_mode=0
|
||||
xr_features/hand_tracking=0
|
||||
xr_features/hand_tracking_frequency=0
|
||||
xr_features/passthrough=0
|
||||
screen/immersive_mode=true
|
||||
screen/support_small=true
|
||||
screen/support_normal=true
|
||||
screen/support_large=true
|
||||
screen/support_xlarge=true
|
||||
user_data_backup/allow=false
|
||||
command_line/extra_args=""
|
||||
apk_expansion/enable=false
|
||||
apk_expansion/SALT=""
|
||||
apk_expansion/public_key=""
|
||||
permissions/custom_permissions=PackedStringArray()
|
||||
permissions/access_checkin_properties=false
|
||||
permissions/access_coarse_location=false
|
||||
permissions/access_fine_location=false
|
||||
permissions/access_location_extra_commands=false
|
||||
permissions/access_mock_location=false
|
||||
permissions/access_network_state=false
|
||||
permissions/access_surface_flinger=false
|
||||
permissions/access_wifi_state=false
|
||||
permissions/account_manager=false
|
||||
permissions/add_voicemail=false
|
||||
permissions/authenticate_accounts=false
|
||||
permissions/battery_stats=false
|
||||
permissions/bind_accessibility_service=false
|
||||
permissions/bind_appwidget=false
|
||||
permissions/bind_device_admin=false
|
||||
permissions/bind_input_method=false
|
||||
permissions/bind_nfc_service=false
|
||||
permissions/bind_notification_listener_service=false
|
||||
permissions/bind_print_service=false
|
||||
permissions/bind_remoteviews=false
|
||||
permissions/bind_text_service=false
|
||||
permissions/bind_vpn_service=false
|
||||
permissions/bind_wallpaper=false
|
||||
permissions/bluetooth=false
|
||||
permissions/bluetooth_admin=false
|
||||
permissions/bluetooth_privileged=false
|
||||
permissions/brick=false
|
||||
permissions/broadcast_package_removed=false
|
||||
permissions/broadcast_sms=false
|
||||
permissions/broadcast_sticky=false
|
||||
permissions/broadcast_wap_push=false
|
||||
permissions/call_phone=false
|
||||
permissions/call_privileged=false
|
||||
permissions/camera=false
|
||||
permissions/capture_audio_output=false
|
||||
permissions/capture_secure_video_output=false
|
||||
permissions/capture_video_output=false
|
||||
permissions/change_component_enabled_state=false
|
||||
permissions/change_configuration=false
|
||||
permissions/change_network_state=false
|
||||
permissions/change_wifi_multicast_state=false
|
||||
permissions/change_wifi_state=false
|
||||
permissions/clear_app_cache=false
|
||||
permissions/clear_app_user_data=false
|
||||
permissions/control_location_updates=false
|
||||
permissions/delete_cache_files=false
|
||||
permissions/delete_packages=false
|
||||
permissions/device_power=false
|
||||
permissions/diagnostic=false
|
||||
permissions/disable_keyguard=false
|
||||
permissions/dump=false
|
||||
permissions/expand_status_bar=false
|
||||
permissions/factory_test=false
|
||||
permissions/flashlight=false
|
||||
permissions/force_back=false
|
||||
permissions/get_accounts=false
|
||||
permissions/get_package_size=false
|
||||
permissions/get_tasks=false
|
||||
permissions/get_top_activity_info=false
|
||||
permissions/global_search=false
|
||||
permissions/hardware_test=false
|
||||
permissions/inject_events=false
|
||||
permissions/install_location_provider=false
|
||||
permissions/install_packages=false
|
||||
permissions/install_shortcut=false
|
||||
permissions/internal_system_window=false
|
||||
permissions/internet=true
|
||||
permissions/kill_background_processes=false
|
||||
permissions/location_hardware=false
|
||||
permissions/manage_accounts=false
|
||||
permissions/manage_app_tokens=false
|
||||
permissions/manage_documents=false
|
||||
permissions/manage_external_storage=false
|
||||
permissions/master_clear=false
|
||||
permissions/media_content_control=false
|
||||
permissions/modify_audio_settings=false
|
||||
permissions/modify_phone_state=false
|
||||
permissions/mount_format_filesystems=false
|
||||
permissions/mount_unmount_filesystems=false
|
||||
permissions/nfc=false
|
||||
permissions/persistent_activity=false
|
||||
permissions/process_outgoing_calls=false
|
||||
permissions/read_calendar=false
|
||||
permissions/read_call_log=false
|
||||
permissions/read_contacts=false
|
||||
permissions/read_external_storage=false
|
||||
permissions/read_frame_buffer=false
|
||||
permissions/read_history_bookmarks=false
|
||||
permissions/read_input_state=false
|
||||
permissions/read_logs=false
|
||||
permissions/read_phone_state=false
|
||||
permissions/read_profile=false
|
||||
permissions/read_sms=false
|
||||
permissions/read_social_stream=false
|
||||
permissions/read_sync_settings=false
|
||||
permissions/read_sync_stats=false
|
||||
permissions/read_user_dictionary=false
|
||||
permissions/reboot=false
|
||||
permissions/receive_boot_completed=false
|
||||
permissions/receive_mms=false
|
||||
permissions/receive_sms=false
|
||||
permissions/receive_wap_push=false
|
||||
permissions/record_audio=false
|
||||
permissions/reorder_tasks=false
|
||||
permissions/restart_packages=false
|
||||
permissions/send_respond_via_message=false
|
||||
permissions/send_sms=false
|
||||
permissions/set_activity_watcher=false
|
||||
permissions/set_alarm=false
|
||||
permissions/set_always_finish=false
|
||||
permissions/set_animation_scale=false
|
||||
permissions/set_debug_app=false
|
||||
permissions/set_orientation=false
|
||||
permissions/set_pointer_speed=false
|
||||
permissions/set_preferred_applications=false
|
||||
permissions/set_process_limit=false
|
||||
permissions/set_time=false
|
||||
permissions/set_time_zone=false
|
||||
permissions/set_wallpaper=false
|
||||
permissions/set_wallpaper_hints=false
|
||||
permissions/signal_persistent_processes=false
|
||||
permissions/status_bar=false
|
||||
permissions/subscribed_feeds_read=false
|
||||
permissions/subscribed_feeds_write=false
|
||||
permissions/system_alert_window=false
|
||||
permissions/transmit_ir=false
|
||||
permissions/uninstall_shortcut=false
|
||||
permissions/update_device_stats=false
|
||||
permissions/use_credentials=false
|
||||
permissions/use_sip=false
|
||||
permissions/vibrate=false
|
||||
permissions/wake_lock=false
|
||||
permissions/write_apn_settings=false
|
||||
permissions/write_calendar=false
|
||||
permissions/write_call_log=false
|
||||
permissions/write_contacts=false
|
||||
permissions/write_external_storage=false
|
||||
permissions/write_gservices=false
|
||||
permissions/write_history_bookmarks=false
|
||||
permissions/write_profile=false
|
||||
permissions/write_secure_settings=false
|
||||
permissions/write_settings=false
|
||||
permissions/write_sms=false
|
||||
permissions/write_social_stream=false
|
||||
permissions/write_sync_settings=false
|
||||
permissions/write_user_dictionary=false
|
1
icon.svg
Normal file
|
@ -0,0 +1 @@
|
|||
<svg height="128" width="128" xmlns="http://www.w3.org/2000/svg"><rect x="2" y="2" width="124" height="124" rx="14" fill="#363d52" stroke="#212532" stroke-width="4"/><g transform="scale(.101) translate(122 122)"><g fill="#fff"><path d="M105 673v33q407 354 814 0v-33z"/><path fill="#478cbf" d="m105 673 152 14q12 1 15 14l4 67 132 10 8-61q2-11 15-15h162q13 4 15 15l8 61 132-10 4-67q3-13 15-14l152-14V427q30-39 56-81-35-59-83-108-43 20-82 47-40-37-88-64 7-51 8-102-59-28-123-42-26 43-46 89-49-7-98 0-20-46-46-89-64 14-123 42 1 51 8 102-48 27-88 64-39-27-82-47-48 49-83 108 26 42 56 81zm0 33v39c0 276 813 276 813 0v-39l-134 12-5 69q-2 10-14 13l-162 11q-12 0-16-11l-10-65H447l-10 65q-4 11-16 11l-162-11q-12-3-14-13l-5-69z"/><path d="M483 600c3 34 55 34 58 0v-86c-3-34-55-34-58 0z"/><circle cx="725" cy="526" r="90"/><circle cx="299" cy="526" r="90"/></g><g fill="#414042"><circle cx="307" cy="532" r="60"/><circle cx="717" cy="532" r="60"/></g></g></svg>
|
After Width: | Height: | Size: 950 B |
37
icon.svg.import
Normal file
|
@ -0,0 +1,37 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bjb5vn0pvgbow"
|
||||
path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://icon.svg"
|
||||
dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.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
|
||||
svg/scale=1.0
|
||||
editor/scale_with_editor_scale=false
|
||||
editor/convert_colors_with_editor_theme=false
|
33
project.godot
Normal file
|
@ -0,0 +1,33 @@
|
|||
; Engine configuration file.
|
||||
; It's best edited using the editor UI and not directly,
|
||||
; since the parameters that go here are not all obvious.
|
||||
;
|
||||
; Format:
|
||||
; [section] ; section goes between []
|
||||
; param=value ; assign values to parameters
|
||||
|
||||
config_version=5
|
||||
|
||||
[application]
|
||||
|
||||
config/name="Frontier of Hell"
|
||||
run/main_scene="res://scenes/stages/stage 1/stage-1.tscn"
|
||||
config/features=PackedStringArray("4.1", "Mobile")
|
||||
boot_splash/bg_color=Color(0.141176, 0.141176, 0.141176, 1)
|
||||
boot_splash/image="res://assets/icons/logo.png"
|
||||
config/icon="res://icon.svg"
|
||||
boot_splash/minimum_display_time=3
|
||||
|
||||
[display]
|
||||
|
||||
window/stretch/mode="viewport"
|
||||
|
||||
[layer_names]
|
||||
|
||||
2d_physics/layer_1="Objects"
|
||||
2d_physics/layer_2="Enemy"
|
||||
|
||||
[rendering]
|
||||
|
||||
renderer/rendering_method="mobile"
|
||||
textures/vram_compression/import_etc2_astc=true
|
17
scenes/bullets/bullet-1.gd
Normal file
|
@ -0,0 +1,17 @@
|
|||
extends Area2D
|
||||
|
||||
const right = Vector2.RIGHT
|
||||
@export var speed : int = 200
|
||||
@export var damage : int = 20
|
||||
|
||||
func _physics_process(delta):
|
||||
var movement = right.rotated(rotation) * speed * delta
|
||||
global_position += movement
|
||||
|
||||
func _on_VisibilityNotifier2D_screen_exited():
|
||||
queue_free()
|
||||
|
||||
func _on_Bullet_body_entered(body):
|
||||
if body.is_in_group("Enemy"):
|
||||
body.hit(damage)
|
||||
queue_free()
|
23
scenes/bullets/bullet-1.tscn
Normal file
|
@ -0,0 +1,23 @@
|
|||
[gd_scene load_steps=4 format=3 uid="uid://dqa80ptcc8p70"]
|
||||
|
||||
[ext_resource type="Script" path="res://scenes/bullets/bullet-1.gd" id="1_tbola"]
|
||||
[ext_resource type="Texture2D" uid="uid://c57taqe4k3mi2" path="res://assets/spritesheets/bullet-1.png" id="2_r8hed"]
|
||||
|
||||
[sub_resource type="CircleShape2D" id="CircleShape2D_3cgpo"]
|
||||
radius = 6.0
|
||||
|
||||
[node name="bullet-2" type="Area2D"]
|
||||
script = ExtResource("1_tbola")
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="."]
|
||||
texture = ExtResource("2_r8hed")
|
||||
hframes = 2
|
||||
frame = 1
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||
shape = SubResource("CircleShape2D_3cgpo")
|
||||
|
||||
[node name="VisibleOnScreenNotifier2D" type="VisibleOnScreenNotifier2D" parent="."]
|
||||
|
||||
[connection signal="body_entered" from="." to="." method="_on_Bullet_body_entered"]
|
||||
[connection signal="screen_exited" from="VisibleOnScreenNotifier2D" to="." method="_on_VisibilityNotifier2D_screen_exited"]
|
112
scenes/enemies/enemy-1.tscn
Normal file
|
@ -0,0 +1,112 @@
|
|||
[gd_scene load_steps=15 format=3 uid="uid://clceqphyig48x"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/stages/stage 1/walk.gd" id="1_ic50n"]
|
||||
[ext_resource type="Script" path="res://scripts/enemies/enemy-1.gd" id="2_2ldr2"]
|
||||
[ext_resource type="Texture2D" uid="uid://b046l0oy0hyj2" path="res://assets/spritesheets/enemy-1.png" id="2_ndkpn"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_17kv3"]
|
||||
atlas = ExtResource("2_ndkpn")
|
||||
region = Rect2(0, 1, 188, 188)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_1wwrx"]
|
||||
atlas = ExtResource("2_ndkpn")
|
||||
region = Rect2(188, 1, 188, 188)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_xvkeb"]
|
||||
atlas = ExtResource("2_ndkpn")
|
||||
region = Rect2(376, 1, 188, 188)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_usecb"]
|
||||
atlas = ExtResource("2_ndkpn")
|
||||
region = Rect2(564, 1, 188, 188)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_pq6ve"]
|
||||
atlas = ExtResource("2_ndkpn")
|
||||
region = Rect2(752, 1, 188, 188)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_ni7yh"]
|
||||
atlas = ExtResource("2_ndkpn")
|
||||
region = Rect2(0, 189, 188, 188)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_kmn0w"]
|
||||
atlas = ExtResource("2_ndkpn")
|
||||
region = Rect2(188, 189, 188, 188)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_v3qv0"]
|
||||
atlas = ExtResource("2_ndkpn")
|
||||
region = Rect2(376, 189, 188, 188)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_hmvpc"]
|
||||
atlas = ExtResource("2_ndkpn")
|
||||
region = Rect2(564, 189, 188, 188)
|
||||
|
||||
[sub_resource type="SpriteFrames" id="SpriteFrames_kipn1"]
|
||||
animations = [{
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_17kv3")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_1wwrx")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_xvkeb")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_usecb")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_pq6ve")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_ni7yh")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_kmn0w")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_v3qv0")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_hmvpc")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"default",
|
||||
"speed": 5.0
|
||||
}]
|
||||
|
||||
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_5hy1j"]
|
||||
radius = 18.9995
|
||||
height = 39.999
|
||||
|
||||
[node name="PathFollow2D" type="PathFollow2D"]
|
||||
rotation = 0.00699289
|
||||
loop = false
|
||||
script = ExtResource("1_ic50n")
|
||||
|
||||
[node name="enemy" type="CharacterBody2D" parent="." groups=["Enemy"]]
|
||||
script = ExtResource("2_2ldr2")
|
||||
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="enemy"]
|
||||
position = Vector2(9.15527e-05, 0.00012207)
|
||||
scale = Vector2(0.176347, 0.175058)
|
||||
sprite_frames = SubResource("SpriteFrames_kipn1")
|
||||
autoplay = "default"
|
||||
frame_progress = 0.735051
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="enemy"]
|
||||
position = Vector2(-0.992983, 1.00696)
|
||||
shape = SubResource("CapsuleShape2D_5hy1j")
|
||||
|
||||
[node name="HealthBar" type="ProgressBar" parent="enemy"]
|
||||
modulate = Color(0.431373, 0.815686, 0, 1)
|
||||
offset_left = -15.1814
|
||||
offset_top = -25.8945
|
||||
offset_right = 86.8186
|
||||
offset_bottom = 1.10553
|
||||
scale = Vector2(0.3, 0.3)
|
||||
show_percentage = false
|
||||
|
||||
[node name="_Timer_66182" type="Timer" parent="."]
|
||||
wait_time = 0.2
|
||||
one_shot = true
|
561
scenes/stages/stage 1/stage-1.tscn
Normal file
95
scenes/towers/cannon-1.tscn
Normal file
|
@ -0,0 +1,95 @@
|
|||
[gd_scene load_steps=14 format=3 uid="uid://bexddlltacp6k"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/towers/tower.gd" id="1_qd0ev"]
|
||||
[ext_resource type="PackedScene" uid="uid://dqa80ptcc8p70" path="res://scenes/bullets/bullet-1.tscn" id="2_86sw3"]
|
||||
[ext_resource type="Texture2D" uid="uid://2ovf2ymtftgo" path="res://assets/spritesheets/towers/cannon-1.png" id="3_rql5q"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_3x0a2"]
|
||||
atlas = ExtResource("3_rql5q")
|
||||
region = Rect2(0, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_n8n18"]
|
||||
atlas = ExtResource("3_rql5q")
|
||||
region = Rect2(128, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_emmfr"]
|
||||
atlas = ExtResource("3_rql5q")
|
||||
region = Rect2(256, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_epw5k"]
|
||||
atlas = ExtResource("3_rql5q")
|
||||
region = Rect2(384, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_1wfiw"]
|
||||
atlas = ExtResource("3_rql5q")
|
||||
region = Rect2(512, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_mv4my"]
|
||||
atlas = ExtResource("3_rql5q")
|
||||
region = Rect2(640, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_2wil8"]
|
||||
atlas = ExtResource("3_rql5q")
|
||||
region = Rect2(768, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_i6shl"]
|
||||
atlas = ExtResource("3_rql5q")
|
||||
region = Rect2(896, 0, 128, 128)
|
||||
|
||||
[sub_resource type="SpriteFrames" id="SpriteFrames_5xwnf"]
|
||||
animations = [{
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_3x0a2")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_n8n18")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_emmfr")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_epw5k")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_1wfiw")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_mv4my")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_2wil8")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_i6shl")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"default",
|
||||
"speed": 5.0
|
||||
}]
|
||||
|
||||
[sub_resource type="CircleShape2D" id="CircleShape2D_wmsbt"]
|
||||
radius = 138.293
|
||||
|
||||
[node name="cannon-1" type="Node2D" groups=["Towers"]]
|
||||
script = ExtResource("1_qd0ev")
|
||||
bullet = ExtResource("2_86sw3")
|
||||
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||||
position = Vector2(-1, 0)
|
||||
rotation = 1.5708
|
||||
sprite_frames = SubResource("SpriteFrames_5xwnf")
|
||||
frame_progress = 0.648704
|
||||
|
||||
[node name="Area2D" type="Area2D" parent="."]
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"]
|
||||
shape = SubResource("CircleShape2D_wmsbt")
|
||||
|
||||
[node name="RayCast2D" type="RayCast2D" parent="."]
|
||||
|
||||
[node name="Timer" type="Timer" parent="."]
|
||||
one_shot = true
|
||||
|
||||
[connection signal="body_entered" from="Area2D" to="." method="_on_body_entered"]
|
||||
[connection signal="body_exited" from="Area2D" to="." method="_on_body_exited"]
|
94
scenes/towers/cannon-2.tscn
Normal file
|
@ -0,0 +1,94 @@
|
|||
[gd_scene load_steps=14 format=3 uid="uid://dij57511gfg4t"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/towers/tower.gd" id="1_2xepw"]
|
||||
[ext_resource type="PackedScene" uid="uid://dqa80ptcc8p70" path="res://scenes/bullets/bullet-1.tscn" id="2_v72iu"]
|
||||
[ext_resource type="Texture2D" uid="uid://br7wgq61n6ufv" path="res://assets/spritesheets/towers/cannon-2.png" id="3_u5fqp"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_74asi"]
|
||||
atlas = ExtResource("3_u5fqp")
|
||||
region = Rect2(0, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_ug5lf"]
|
||||
atlas = ExtResource("3_u5fqp")
|
||||
region = Rect2(128, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_vs27q"]
|
||||
atlas = ExtResource("3_u5fqp")
|
||||
region = Rect2(256, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_h1use"]
|
||||
atlas = ExtResource("3_u5fqp")
|
||||
region = Rect2(384, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_3rr0n"]
|
||||
atlas = ExtResource("3_u5fqp")
|
||||
region = Rect2(512, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_w8pr4"]
|
||||
atlas = ExtResource("3_u5fqp")
|
||||
region = Rect2(640, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_bagik"]
|
||||
atlas = ExtResource("3_u5fqp")
|
||||
region = Rect2(768, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_tv6sf"]
|
||||
atlas = ExtResource("3_u5fqp")
|
||||
region = Rect2(896, 0, 128, 128)
|
||||
|
||||
[sub_resource type="SpriteFrames" id="SpriteFrames_gp0wd"]
|
||||
animations = [{
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_74asi")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_ug5lf")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_vs27q")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_h1use")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_3rr0n")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_w8pr4")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_bagik")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_tv6sf")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"default",
|
||||
"speed": 5.0
|
||||
}]
|
||||
|
||||
[sub_resource type="CircleShape2D" id="CircleShape2D_wmsbt"]
|
||||
radius = 138.293
|
||||
|
||||
[node name="cannon-2" type="Node2D" groups=["Towers"]]
|
||||
script = ExtResource("1_2xepw")
|
||||
bullet = ExtResource("2_v72iu")
|
||||
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||||
position = Vector2(-1, 0)
|
||||
rotation = 1.5708
|
||||
sprite_frames = SubResource("SpriteFrames_gp0wd")
|
||||
|
||||
[node name="Area2D" type="Area2D" parent="."]
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"]
|
||||
shape = SubResource("CircleShape2D_wmsbt")
|
||||
|
||||
[node name="RayCast2D" type="RayCast2D" parent="."]
|
||||
|
||||
[node name="Timer" type="Timer" parent="."]
|
||||
one_shot = true
|
||||
|
||||
[connection signal="body_entered" from="Area2D" to="." method="_on_body_entered"]
|
||||
[connection signal="body_exited" from="Area2D" to="." method="_on_body_exited"]
|
94
scenes/towers/cannon-3.tscn
Normal file
|
@ -0,0 +1,94 @@
|
|||
[gd_scene load_steps=14 format=3 uid="uid://mxre00inxhlf"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/towers/tower.gd" id="1_8bvcy"]
|
||||
[ext_resource type="PackedScene" uid="uid://dqa80ptcc8p70" path="res://scenes/bullets/bullet-1.tscn" id="2_pqmds"]
|
||||
[ext_resource type="Texture2D" uid="uid://by4hjrjfcxsdl" path="res://assets/spritesheets/towers/cannon-3.png" id="3_k5iet"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_roben"]
|
||||
atlas = ExtResource("3_k5iet")
|
||||
region = Rect2(0, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_uo3hi"]
|
||||
atlas = ExtResource("3_k5iet")
|
||||
region = Rect2(128, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_85qm5"]
|
||||
atlas = ExtResource("3_k5iet")
|
||||
region = Rect2(256, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_tv0aa"]
|
||||
atlas = ExtResource("3_k5iet")
|
||||
region = Rect2(384, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_1ttn5"]
|
||||
atlas = ExtResource("3_k5iet")
|
||||
region = Rect2(512, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_vpsw3"]
|
||||
atlas = ExtResource("3_k5iet")
|
||||
region = Rect2(640, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_rp8py"]
|
||||
atlas = ExtResource("3_k5iet")
|
||||
region = Rect2(768, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_e6hsk"]
|
||||
atlas = ExtResource("3_k5iet")
|
||||
region = Rect2(896, 0, 128, 128)
|
||||
|
||||
[sub_resource type="SpriteFrames" id="SpriteFrames_ta4uo"]
|
||||
animations = [{
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_roben")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_uo3hi")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_85qm5")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_tv0aa")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_1ttn5")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_vpsw3")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_rp8py")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_e6hsk")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"default",
|
||||
"speed": 5.0
|
||||
}]
|
||||
|
||||
[sub_resource type="CircleShape2D" id="CircleShape2D_wmsbt"]
|
||||
radius = 138.293
|
||||
|
||||
[node name="cannon-3" type="Node2D" groups=["Towers"]]
|
||||
script = ExtResource("1_8bvcy")
|
||||
bullet = ExtResource("2_pqmds")
|
||||
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||||
position = Vector2(-1, 0)
|
||||
rotation = 1.5708
|
||||
sprite_frames = SubResource("SpriteFrames_ta4uo")
|
||||
|
||||
[node name="Area2D" type="Area2D" parent="."]
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"]
|
||||
shape = SubResource("CircleShape2D_wmsbt")
|
||||
|
||||
[node name="RayCast2D" type="RayCast2D" parent="."]
|
||||
|
||||
[node name="Timer" type="Timer" parent="."]
|
||||
one_shot = true
|
||||
|
||||
[connection signal="body_entered" from="Area2D" to="." method="_on_body_entered"]
|
||||
[connection signal="body_exited" from="Area2D" to="." method="_on_body_exited"]
|
20
scenes/towers/placement/placement.tscn
Normal file
|
@ -0,0 +1,20 @@
|
|||
[gd_scene load_steps=4 format=3 uid="uid://bvoenhbaqiqj2"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/towers/placement/placement.gd" id="1_4v8tt"]
|
||||
[ext_resource type="Texture2D" uid="uid://0cbsthay7e18" path="res://assets/spritesheets/placement.png" id="2_06tg2"]
|
||||
|
||||
[sub_resource type="CircleShape2D" id="CircleShape2D_hi6ti"]
|
||||
radius = 18.1108
|
||||
|
||||
[node name="placement" type="StaticBody2D"]
|
||||
input_pickable = true
|
||||
script = ExtResource("1_4v8tt")
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="."]
|
||||
scale = Vector2(0.03, 0.03)
|
||||
texture = ExtResource("2_06tg2")
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||
shape = SubResource("CircleShape2D_hi6ti")
|
||||
|
||||
[connection signal="input_event" from="." to="." method="_on_input_event"]
|
95
scenes/towers/railgun-1.tscn
Normal file
|
@ -0,0 +1,95 @@
|
|||
[gd_scene load_steps=14 format=3 uid="uid://biyhuyx177dw8"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/towers/tower.gd" id="1_1kehv"]
|
||||
[ext_resource type="PackedScene" uid="uid://dqa80ptcc8p70" path="res://scenes/bullets/bullet-1.tscn" id="2_stgpo"]
|
||||
[ext_resource type="Texture2D" uid="uid://c02ebkmjpxium" path="res://assets/spritesheets/towers/railgun-1.png" id="3_ibkbv"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_60mof"]
|
||||
atlas = ExtResource("3_ibkbv")
|
||||
region = Rect2(0, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_etl58"]
|
||||
atlas = ExtResource("3_ibkbv")
|
||||
region = Rect2(128, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_3ojyw"]
|
||||
atlas = ExtResource("3_ibkbv")
|
||||
region = Rect2(256, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_4nido"]
|
||||
atlas = ExtResource("3_ibkbv")
|
||||
region = Rect2(384, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_6l18x"]
|
||||
atlas = ExtResource("3_ibkbv")
|
||||
region = Rect2(512, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_fcrte"]
|
||||
atlas = ExtResource("3_ibkbv")
|
||||
region = Rect2(640, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_c4er5"]
|
||||
atlas = ExtResource("3_ibkbv")
|
||||
region = Rect2(768, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_v35ak"]
|
||||
atlas = ExtResource("3_ibkbv")
|
||||
region = Rect2(896, 0, 128, 128)
|
||||
|
||||
[sub_resource type="SpriteFrames" id="SpriteFrames_geya5"]
|
||||
animations = [{
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_60mof")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_etl58")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_3ojyw")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_4nido")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_6l18x")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_fcrte")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_c4er5")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_v35ak")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"default",
|
||||
"speed": 5.0
|
||||
}]
|
||||
|
||||
[sub_resource type="CircleShape2D" id="CircleShape2D_wmsbt"]
|
||||
radius = 138.293
|
||||
|
||||
[node name="railgun-1" type="Node2D" groups=["Towers"]]
|
||||
script = ExtResource("1_1kehv")
|
||||
bullet = ExtResource("2_stgpo")
|
||||
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||||
position = Vector2(-1, 0)
|
||||
rotation = 1.5708
|
||||
sprite_frames = SubResource("SpriteFrames_geya5")
|
||||
frame_progress = 0.769467
|
||||
|
||||
[node name="Area2D" type="Area2D" parent="."]
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"]
|
||||
shape = SubResource("CircleShape2D_wmsbt")
|
||||
|
||||
[node name="RayCast2D" type="RayCast2D" parent="."]
|
||||
|
||||
[node name="Timer" type="Timer" parent="."]
|
||||
one_shot = true
|
||||
|
||||
[connection signal="body_entered" from="Area2D" to="." method="_on_body_entered"]
|
||||
[connection signal="body_exited" from="Area2D" to="." method="_on_body_exited"]
|
94
scenes/towers/railgun-2.tscn
Normal file
|
@ -0,0 +1,94 @@
|
|||
[gd_scene load_steps=14 format=3 uid="uid://ctnlfsnc2gl03"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/towers/tower.gd" id="1_th1rt"]
|
||||
[ext_resource type="PackedScene" uid="uid://dqa80ptcc8p70" path="res://scenes/bullets/bullet-1.tscn" id="2_nr2g5"]
|
||||
[ext_resource type="Texture2D" uid="uid://b0dawx5rlcyo3" path="res://assets/spritesheets/towers/railgun-2.png" id="3_uumfa"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_fss1a"]
|
||||
atlas = ExtResource("3_uumfa")
|
||||
region = Rect2(0, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_6n843"]
|
||||
atlas = ExtResource("3_uumfa")
|
||||
region = Rect2(128, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_xjwev"]
|
||||
atlas = ExtResource("3_uumfa")
|
||||
region = Rect2(256, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_g520l"]
|
||||
atlas = ExtResource("3_uumfa")
|
||||
region = Rect2(384, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_os6e1"]
|
||||
atlas = ExtResource("3_uumfa")
|
||||
region = Rect2(512, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_whr0e"]
|
||||
atlas = ExtResource("3_uumfa")
|
||||
region = Rect2(640, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_m7sk4"]
|
||||
atlas = ExtResource("3_uumfa")
|
||||
region = Rect2(768, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_1jok4"]
|
||||
atlas = ExtResource("3_uumfa")
|
||||
region = Rect2(896, 0, 128, 128)
|
||||
|
||||
[sub_resource type="SpriteFrames" id="SpriteFrames_xw8jx"]
|
||||
animations = [{
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_fss1a")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_6n843")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_xjwev")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_g520l")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_os6e1")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_whr0e")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_m7sk4")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_1jok4")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"default",
|
||||
"speed": 5.0
|
||||
}]
|
||||
|
||||
[sub_resource type="CircleShape2D" id="CircleShape2D_wmsbt"]
|
||||
radius = 138.293
|
||||
|
||||
[node name="railgun-2" type="Node2D" groups=["Towers"]]
|
||||
script = ExtResource("1_th1rt")
|
||||
bullet = ExtResource("2_nr2g5")
|
||||
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||||
position = Vector2(-1, 0)
|
||||
rotation = 1.5708
|
||||
sprite_frames = SubResource("SpriteFrames_xw8jx")
|
||||
|
||||
[node name="Area2D" type="Area2D" parent="."]
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"]
|
||||
shape = SubResource("CircleShape2D_wmsbt")
|
||||
|
||||
[node name="RayCast2D" type="RayCast2D" parent="."]
|
||||
|
||||
[node name="Timer" type="Timer" parent="."]
|
||||
one_shot = true
|
||||
|
||||
[connection signal="body_entered" from="Area2D" to="." method="_on_body_entered"]
|
||||
[connection signal="body_exited" from="Area2D" to="." method="_on_body_exited"]
|
94
scenes/towers/railgun-3.tscn
Normal file
|
@ -0,0 +1,94 @@
|
|||
[gd_scene load_steps=14 format=3 uid="uid://cfelbpijg3dp0"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/towers/tower.gd" id="1_0tcnl"]
|
||||
[ext_resource type="PackedScene" uid="uid://dqa80ptcc8p70" path="res://scenes/bullets/bullet-1.tscn" id="2_xodqu"]
|
||||
[ext_resource type="Texture2D" uid="uid://dk3toqlc7igld" path="res://assets/spritesheets/towers/railgun-3.png" id="3_unh2r"]
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_g3wst"]
|
||||
atlas = ExtResource("3_unh2r")
|
||||
region = Rect2(0, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_kpvk8"]
|
||||
atlas = ExtResource("3_unh2r")
|
||||
region = Rect2(128, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_xv60f"]
|
||||
atlas = ExtResource("3_unh2r")
|
||||
region = Rect2(256, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_hocp4"]
|
||||
atlas = ExtResource("3_unh2r")
|
||||
region = Rect2(384, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_00rie"]
|
||||
atlas = ExtResource("3_unh2r")
|
||||
region = Rect2(512, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_fqp56"]
|
||||
atlas = ExtResource("3_unh2r")
|
||||
region = Rect2(640, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_42mkq"]
|
||||
atlas = ExtResource("3_unh2r")
|
||||
region = Rect2(768, 0, 128, 128)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_cj5ok"]
|
||||
atlas = ExtResource("3_unh2r")
|
||||
region = Rect2(896, 0, 128, 128)
|
||||
|
||||
[sub_resource type="SpriteFrames" id="SpriteFrames_olaum"]
|
||||
animations = [{
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_g3wst")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_kpvk8")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_xv60f")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_hocp4")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_00rie")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_fqp56")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_42mkq")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_cj5ok")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"default",
|
||||
"speed": 5.0
|
||||
}]
|
||||
|
||||
[sub_resource type="CircleShape2D" id="CircleShape2D_wmsbt"]
|
||||
radius = 138.293
|
||||
|
||||
[node name="railgun-3" type="Node2D" groups=["Towers"]]
|
||||
script = ExtResource("1_0tcnl")
|
||||
bullet = ExtResource("2_xodqu")
|
||||
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||||
position = Vector2(-1, 0)
|
||||
rotation = 1.5708
|
||||
sprite_frames = SubResource("SpriteFrames_olaum")
|
||||
|
||||
[node name="Area2D" type="Area2D" parent="."]
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"]
|
||||
shape = SubResource("CircleShape2D_wmsbt")
|
||||
|
||||
[node name="RayCast2D" type="RayCast2D" parent="."]
|
||||
|
||||
[node name="Timer" type="Timer" parent="."]
|
||||
one_shot = true
|
||||
|
||||
[connection signal="body_entered" from="Area2D" to="." method="_on_body_entered"]
|
||||
[connection signal="body_exited" from="Area2D" to="." method="_on_body_exited"]
|
3
scenes/ui/main.tscn
Normal file
|
@ -0,0 +1,3 @@
|
|||
[gd_scene format=3 uid="uid://dj4fkk406l1o1"]
|
||||
|
||||
[node name="Main" type="Node2D"]
|
3
scenes/ui/themes/leltres.tres
Normal file
|
@ -0,0 +1,3 @@
|
|||
[gd_resource type="Theme" format=3 uid="uid://d4fqih4gmaixt"]
|
||||
|
||||
[resource]
|
107
scenes/ui/tower-menu.tscn
Normal file
|
@ -0,0 +1,107 @@
|
|||
[gd_scene load_steps=7 format=3 uid="uid://cd5r1v6f8hahx"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/ui/tower-menu.gd" id="1_h1oqf"]
|
||||
[ext_resource type="Theme" uid="uid://d4fqih4gmaixt" path="res://scenes/ui/themes/leltres.tres" id="1_s4ty6"]
|
||||
[ext_resource type="Texture2D" uid="uid://dql0j3rmo6lt6" path="res://assets/icons/towers/cannon-1-disabled.png" id="3_3pes3"]
|
||||
[ext_resource type="Texture2D" uid="uid://rgnikuo8ht0w" path="res://assets/icons/towers/railgun-1-disabled.png" id="4_8q3ud"]
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_55n31"]
|
||||
bg_color = Color(0.12549, 0.12549, 0.12549, 1)
|
||||
corner_radius_top_left = 15
|
||||
corner_radius_top_right = 15
|
||||
corner_radius_bottom_right = 15
|
||||
corner_radius_bottom_left = 15
|
||||
corner_detail = 20
|
||||
|
||||
[sub_resource type="Theme" id="Theme_6r0bt"]
|
||||
|
||||
[node name="TowerMenu" type="Control"]
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
script = ExtResource("1_h1oqf")
|
||||
|
||||
[node name="Panel" type="Panel" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 8
|
||||
anchor_left = 0.5
|
||||
anchor_top = 0.5
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = -161.0
|
||||
offset_top = -141.0
|
||||
offset_right = 156.0
|
||||
offset_bottom = 184.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme_override_styles/panel = SubResource("StyleBoxFlat_55n31")
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="Panel"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme = ExtResource("1_s4ty6")
|
||||
theme_override_constants/separation = 30
|
||||
|
||||
[node name="Top" type="HBoxContainer" parent="Panel/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = 125
|
||||
|
||||
[node name="MenuTitle" type="Label" parent="Panel/VBoxContainer/Top"]
|
||||
layout_mode = 2
|
||||
text = " Build/Upgrade Tower"
|
||||
|
||||
[node name="Close" type="Button" parent="Panel/VBoxContainer/Top"]
|
||||
layout_mode = 2
|
||||
text = "X"
|
||||
flat = true
|
||||
|
||||
[node name="Middle" type="HBoxContainer" parent="Panel/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
alignment = 1
|
||||
|
||||
[node name="TowerOption" type="TextureButton" parent="Panel/VBoxContainer/Middle"]
|
||||
layout_mode = 2
|
||||
theme = SubResource("Theme_6r0bt")
|
||||
texture_normal = ExtResource("3_3pes3")
|
||||
|
||||
[node name="TowerOption2" type="TextureButton" parent="Panel/VBoxContainer/Middle"]
|
||||
layout_mode = 2
|
||||
theme = SubResource("Theme_6r0bt")
|
||||
texture_normal = ExtResource("4_8q3ud")
|
||||
|
||||
[node name="Bottom" type="HBoxContainer" parent="Panel/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = 60
|
||||
alignment = 1
|
||||
|
||||
[node name="TowerName" type="Label" parent="Panel/VBoxContainer/Bottom"]
|
||||
layout_mode = 2
|
||||
text = "Cannon"
|
||||
|
||||
[node name="TowerName2" type="Label" parent="Panel/VBoxContainer/Bottom"]
|
||||
layout_mode = 2
|
||||
text = "Railgun"
|
||||
|
||||
[node name="Nether" type="HBoxContainer" parent="Panel/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = 75
|
||||
alignment = 1
|
||||
|
||||
[node name="TowerPrice" type="Label" parent="Panel/VBoxContainer/Nether"]
|
||||
layout_mode = 2
|
||||
text = "10000"
|
||||
|
||||
[node name="TowerPrice2" type="Label" parent="Panel/VBoxContainer/Nether"]
|
||||
layout_mode = 2
|
||||
text = "20000"
|
||||
|
||||
[connection signal="pressed" from="Panel/VBoxContainer/Top/Close" to="." method="_on_close_pressed"]
|
||||
[connection signal="pressed" from="Panel/VBoxContainer/Middle/TowerOption" to="." method="_on_tower_option_pressed"]
|
||||
[connection signal="pressed" from="Panel/VBoxContainer/Middle/TowerOption2" to="." method="_on_tower_option_2_pressed"]
|
19
scripts/enemies/enemy-1.gd
Normal file
|
@ -0,0 +1,19 @@
|
|||
extends CharacterBody2D
|
||||
|
||||
@export var health : int = 100
|
||||
|
||||
func _process(delta):
|
||||
update_healthbar()
|
||||
if health <= 0:
|
||||
queue_free()
|
||||
|
||||
func update_healthbar():
|
||||
$HealthBar.value = health
|
||||
|
||||
if health >= 100:
|
||||
$HealthBar.visible = false
|
||||
else:
|
||||
$HealthBar.visible = true
|
||||
|
||||
func hit(damage : int):
|
||||
health = health - damage
|
87
scripts/stages/stage 1/Config.gd
Normal file
|
@ -0,0 +1,87 @@
|
|||
extends Node
|
||||
|
||||
class_name Config
|
||||
|
||||
var menu = [
|
||||
{
|
||||
"name": "Cannon",
|
||||
"image": load("res://assets/icons/towers/cannon-1.png"),
|
||||
"image_disabled": load("res://assets/icons/towers/cannon-1-disabled.png"),
|
||||
"price": 10
|
||||
},
|
||||
{
|
||||
"name": "Railgun",
|
||||
"image": load("res://assets/icons/towers/railgun-1.png"),
|
||||
"image_disabled": load("res://assets/icons/towers/railgun-1-disabled.png"),
|
||||
"price": 20
|
||||
},
|
||||
{
|
||||
"name": "Cannon (V2)",
|
||||
"image": load("res://assets/icons/towers/cannon-2.png"),
|
||||
"image_disabled": load("res://assets/icons/towers/cannon-2-disabled.png"),
|
||||
"price": 50
|
||||
},
|
||||
{
|
||||
"name": "Railgun (V2)",
|
||||
"image": load("res://assets/icons/towers/railgun-2.png"),
|
||||
"image_disabled": load("res://assets/icons/towers/railgun-2-disabled.png"),
|
||||
"price": 60
|
||||
},
|
||||
{
|
||||
"name": "Cannon (V3)",
|
||||
"image": load("res://assets/icons/towers/cannon-3.png"),
|
||||
"image_disabled": load("res://assets/icons/towers/cannon-3-disabled.png"),
|
||||
"price": 90
|
||||
},
|
||||
{
|
||||
"name": "Railgun (V3)",
|
||||
"image": load("res://assets/icons/towers/railgun-3.png"),
|
||||
"image_disabled": load("res://assets/icons/towers/railgun-3-disabled.png"),
|
||||
"price": 100
|
||||
}
|
||||
]
|
||||
|
||||
var tower = [
|
||||
{
|
||||
"name": "Cannon",
|
||||
"asset": preload("res://scenes/towers/cannon-1.tscn"),
|
||||
"timer": 0.2,
|
||||
"speed": 200,
|
||||
"damage": 30
|
||||
},
|
||||
{
|
||||
"name": "Railgun",
|
||||
"asset": preload("res://scenes/towers/railgun-1.tscn"),
|
||||
"timer": 0.2,
|
||||
"speed": 200,
|
||||
"damage": 40
|
||||
},
|
||||
{
|
||||
"name": "Cannon (V2)",
|
||||
"asset": preload("res://scenes/towers/cannon-2.tscn"),
|
||||
"timer": 0.2,
|
||||
"speed": 200,
|
||||
"damage": 40
|
||||
},
|
||||
{
|
||||
"name": "Railgun (V2)",
|
||||
"asset": preload("res://scenes/towers/railgun-2.tscn"),
|
||||
"timer": 0.2,
|
||||
"speed": 200,
|
||||
"damage": 40
|
||||
},
|
||||
{
|
||||
"name": "Cannon (V3)",
|
||||
"asset": preload("res://scenes/towers/cannon-3.tscn"),
|
||||
"timer": 0.2,
|
||||
"speed": 200,
|
||||
"damage": 40
|
||||
},
|
||||
{
|
||||
"name": "Railgun (V3)",
|
||||
"asset": preload("res://scenes/towers/railgun-3.tscn"),
|
||||
"timer": 0.2,
|
||||
"speed": 200,
|
||||
"damage": 40
|
||||
}
|
||||
]
|
62
scripts/stages/stage 1/GameManager.gd
Normal file
|
@ -0,0 +1,62 @@
|
|||
extends Node2D
|
||||
|
||||
class_name GameManager
|
||||
|
||||
var config = load("res://scripts/stages/stage 1/Config.gd").new()
|
||||
|
||||
var data = {
|
||||
"tower": {},
|
||||
"health": 6,
|
||||
"resource": 100
|
||||
}
|
||||
|
||||
func _ready():
|
||||
var placements = $Placements.get_children()
|
||||
for placement in placements:
|
||||
placement.connect("on_placement", on_game_placement)
|
||||
$CanvasLayer/TowerMenu.connect("build_tower", on_build_tower)
|
||||
|
||||
func _process(delta):
|
||||
pass
|
||||
|
||||
func on_game_placement(pos, tower_placement_id):
|
||||
var tower_id = null
|
||||
var disabled = false
|
||||
var disabled_2 = false
|
||||
if data['tower'].has(str(tower_placement_id)):
|
||||
match data['tower'][str(tower_placement_id)]['id']:
|
||||
0:
|
||||
tower_id = 2
|
||||
1:
|
||||
tower_id = 3
|
||||
2:
|
||||
tower_id = 4
|
||||
3:
|
||||
tower_id = 5
|
||||
_:
|
||||
tower_id = null
|
||||
|
||||
if data['resource'] < config.menu[tower_id]['price']:
|
||||
disabled = true
|
||||
else:
|
||||
if data['resource'] < config.menu[0]['price']:
|
||||
disabled = true
|
||||
if data['resource'] < config.menu[1]['price']:
|
||||
disabled_2 = true
|
||||
$CanvasLayer/TowerMenu.show_menu(tower_id, pos, tower_placement_id, disabled, disabled_2)
|
||||
print(data)
|
||||
|
||||
func on_build_tower(pos, tower_id, tower_placement_id):
|
||||
if data['tower'].has(str(tower_placement_id)):
|
||||
var current_tower = get_tree().current_scene.get_node(str(data['tower'][str(tower_placement_id)]['name']))
|
||||
current_tower.queue_free()
|
||||
else:
|
||||
data['tower'][str(tower_placement_id)] = {}
|
||||
|
||||
var tower = config.tower[tower_id]['asset'].instantiate()
|
||||
get_tree().current_scene.add_child(tower)
|
||||
tower.global_position = pos
|
||||
|
||||
data['tower'][str(tower_placement_id)]['id'] = tower_id
|
||||
data['tower'][str(tower_placement_id)]['name'] = tower.name
|
||||
data['resource'] -= config.menu[tower_id]['price']
|
24
scripts/stages/stage 1/summon.gd
Normal file
|
@ -0,0 +1,24 @@
|
|||
extends Path2D
|
||||
|
||||
var timer = 0
|
||||
@export var spawnTime = 3
|
||||
var spawn_first: bool = true
|
||||
|
||||
@export var enemy: PackedScene = null
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready():
|
||||
pass # Replace with function body.
|
||||
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta):
|
||||
timer += delta
|
||||
|
||||
if spawn_first:
|
||||
add_child(enemy.instantiate())
|
||||
spawn_first = false
|
||||
|
||||
if timer > spawnTime:
|
||||
add_child(enemy.instantiate())
|
||||
timer = 0
|
11
scripts/stages/stage 1/walk.gd
Normal file
|
@ -0,0 +1,11 @@
|
|||
extends PathFollow2D
|
||||
|
||||
@export var speed = 30
|
||||
|
||||
func _ready():
|
||||
var rng = RandomNumberGenerator.new()
|
||||
set_v_offset(rng.randf_range(-30.0, 30.0))
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta):
|
||||
set_progress(get_progress() + speed * delta)
|
16
scripts/towers/placement/placement.gd
Normal file
|
@ -0,0 +1,16 @@
|
|||
extends StaticBody2D
|
||||
|
||||
signal on_placement(pos: Vector2, tower_placement_id: int)
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready():
|
||||
pass # Replace with function body.
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta):
|
||||
pass
|
||||
|
||||
func _on_input_event(viewport, event, shape_idx):
|
||||
var mouse_click = event as InputEventMouseButton
|
||||
if mouse_click and mouse_click.button_index == 1 and mouse_click.pressed:
|
||||
on_placement.emit(global_position, get_instance_id())
|
39
scripts/towers/tower.gd
Normal file
|
@ -0,0 +1,39 @@
|
|||
extends Node2D
|
||||
|
||||
@onready var rayCast = $RayCast2D
|
||||
@onready var timer = $Timer
|
||||
|
||||
@export var bullet: PackedScene = null
|
||||
|
||||
var config = load("res://scripts/stages/stage 1/Config.gd").new()
|
||||
|
||||
var is_shoot: bool = true
|
||||
|
||||
var enemies = []
|
||||
|
||||
func _update_look_at(enemy: Vector2):
|
||||
look_at(enemy)
|
||||
|
||||
func _physics_process(_delta):
|
||||
if enemies.is_empty():
|
||||
$AnimatedSprite2D.stop()
|
||||
else:
|
||||
_update_look_at(enemies[0].global_position)
|
||||
if timer.is_stopped():
|
||||
$AnimatedSprite2D.play("default")
|
||||
_shoot()
|
||||
|
||||
func _shoot():
|
||||
if bullet:
|
||||
var bullet_instance: Node2D = bullet.instantiate()
|
||||
get_tree().current_scene.add_child(bullet_instance)
|
||||
bullet_instance.global_position = global_position
|
||||
bullet_instance.global_rotation = rayCast.global_rotation + 0.1
|
||||
timer.start()
|
||||
|
||||
func _on_body_entered(body):
|
||||
if body.is_in_group("Enemy"):
|
||||
enemies.append(body.get_parent())
|
||||
|
||||
func _on_body_exited(body):
|
||||
enemies.erase(body.get_parent())
|
69
scripts/ui/tower-menu.gd
Normal file
|
@ -0,0 +1,69 @@
|
|||
extends Control
|
||||
|
||||
|
||||
var config = load("res://scripts/stages/stage 1/Config.gd").new()
|
||||
|
||||
signal build_tower(pos, tower_id, tower_placement_id)
|
||||
|
||||
var current_pos: Vector2 = Vector2(0,0)
|
||||
var current_tower_id: int = 0
|
||||
var current_tower_id_2: int = 1
|
||||
var current_tower_placement_id = 0
|
||||
var current_disabled = false
|
||||
var current_disabled_2 = false
|
||||
|
||||
func _ready():
|
||||
hide()
|
||||
|
||||
func _process(delta):
|
||||
pass
|
||||
|
||||
func _on_close_pressed():
|
||||
hide()
|
||||
|
||||
func _on_tower_option_pressed():
|
||||
if !current_disabled:
|
||||
build_tower.emit(current_pos, current_tower_id, current_tower_placement_id)
|
||||
hide()
|
||||
|
||||
func _on_tower_option_2_pressed():
|
||||
if !current_disabled_2:
|
||||
build_tower.emit(current_pos, current_tower_id_2, current_tower_placement_id)
|
||||
hide()
|
||||
|
||||
func show_menu(tower_id, pos, tower_placement_id, disabled, disabled_2):
|
||||
current_pos = pos
|
||||
current_tower_placement_id = tower_placement_id
|
||||
current_tower_id = 0
|
||||
current_tower_id_2 = 1
|
||||
current_disabled = disabled
|
||||
current_disabled_2 = disabled_2
|
||||
|
||||
if tower_id != null:
|
||||
current_tower_id = tower_id
|
||||
|
||||
$Panel/VBoxContainer/Middle/TowerOption2.hide()
|
||||
$Panel/VBoxContainer/Bottom/TowerName2.hide()
|
||||
$Panel/VBoxContainer/Nether/TowerPrice2.hide()
|
||||
else:
|
||||
$Panel/VBoxContainer/Middle/TowerOption2.show()
|
||||
$Panel/VBoxContainer/Bottom/TowerName2.show()
|
||||
$Panel/VBoxContainer/Nether/TowerPrice2.show()
|
||||
|
||||
var image = config.menu[current_tower_id]['image']
|
||||
if current_disabled:
|
||||
image = config.menu[current_tower_id]['image_disabled']
|
||||
|
||||
$Panel/VBoxContainer/Middle/TowerOption.set_texture_normal(image)
|
||||
$Panel/VBoxContainer/Bottom/TowerName.text = config.menu[current_tower_id]['name']
|
||||
$Panel/VBoxContainer/Nether/TowerPrice.text = str(config.menu[current_tower_id]['price'])
|
||||
|
||||
var image_2 = config.menu[current_tower_id_2]['image']
|
||||
if current_disabled_2:
|
||||
image_2 = config.menu[current_tower_id_2]['image_disabled']
|
||||
|
||||
$Panel/VBoxContainer/Middle/TowerOption2.set_texture_normal(image_2)
|
||||
$Panel/VBoxContainer/Bottom/TowerName2.text = config.menu[current_tower_id_2]['name']
|
||||
$Panel/VBoxContainer/Nether/TowerPrice2.text = str(config.menu[current_tower_id_2]['price'])
|
||||
|
||||
show()
|