Compare commits
12 commits
stable
...
dev-music-
Author | SHA1 | Date | |
---|---|---|---|
|
2f960fc2cc | ||
91920d15b1 | |||
a1bdddb849 | |||
c3e43aa5e4 | |||
ea3192a894 | |||
2c0a0673da | |||
d3fd2f0a6a | |||
04d5d2422c | |||
2fc9af744d | |||
c0cf72a6d1 | |||
|
0905212626 | ||
|
a26e37d301 |
99
.gitea/workflows/build.yml
Normal file
|
@ -0,0 +1,99 @@
|
||||||
|
name: "godot-ci export"
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- stable
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
export_game:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
name: Export Game
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: https://github.com/actions/checkout@v3.3.0
|
||||||
|
- name: Install Packages
|
||||||
|
id: wine_install
|
||||||
|
run: |
|
||||||
|
apt update -y && apt upgrade -y
|
||||||
|
apt install -y wine64 nodejs p7zip-full ca-certificates tree jq curl zip
|
||||||
|
echo "WINE_PATH=$(which wine64)" >> $GITHUB_OUTPUT
|
||||||
|
- name: Download Godot build-libs
|
||||||
|
run: |
|
||||||
|
mkdir -p /root/.local/share/godot/
|
||||||
|
wget -nv https://github.com/godotengine/godot/releases/download/4.0.2-stable/Godot_v4.0.2-stable_linux.x86_64.zip -O "/root/.local/share/godot/godot.zip"
|
||||||
|
wget -nv https://github.com/godotengine/godot/releases/download/4.0.2-stable/Godot_v4.0.2-stable_export_templates.tpz -O /root/.local/share/godot/godot_templates.tpz
|
||||||
|
- name: Setup Godot build-libs
|
||||||
|
run: |
|
||||||
|
7z x /root/.local/share/godot/godot.zip -o/root/.local/share/godot/godot_executable -y
|
||||||
|
chmod +x /root/.local/share/godot/godot_executable/Godot_v4.0.2-stable_linux.x86_64
|
||||||
|
unzip /root/.local/share/godot/godot_templates.tpz -d /root/.local/share/godot
|
||||||
|
mv /root/.local/share/godot/templates /root/.local/share/godot/4.0.2.stable
|
||||||
|
mkdir -p /root/.local/share/godot/export_templates
|
||||||
|
mv /root/.local/share/godot/4.0.2.stable /root/.local/share/godot/export_templates
|
||||||
|
/root/.local/share/godot/godot_executable/Godot_v4.0.2-stable_linux.x86_64 --version
|
||||||
|
- name: Export for Web
|
||||||
|
run: |
|
||||||
|
mkdir -p ./builds/web/
|
||||||
|
/root/.local/share/godot/godot_executable/Godot_v4.0.2-stable_linux.x86_64 /var/lib/actions/project.godot -q --headless --export-release "Web" ./builds/web/Game.html
|
||||||
|
- name: Package for Web
|
||||||
|
run: |
|
||||||
|
cd builds
|
||||||
|
tar -czvf web.zip -C web/ .
|
||||||
|
- name: Export for Linux
|
||||||
|
run: |
|
||||||
|
mkdir -p ./builds/linux/
|
||||||
|
/root/.local/share/godot/godot_executable/Godot_v4.0.2-stable_linux.x86_64 /var/lib/actions/project.godot -q --headless --export-release "Linux/X11" ./builds/linux/Game.x86_64
|
||||||
|
- name: Package for Linux
|
||||||
|
run: |
|
||||||
|
cd builds
|
||||||
|
tar -czvf linux.tar.gz -C linux/ .
|
||||||
|
- name: Export for Windows
|
||||||
|
run: |
|
||||||
|
mkdir -p ./builds/windows/
|
||||||
|
/root/.local/share/godot/godot_executable/Godot_v4.0.2-stable_linux.x86_64 /var/lib/actions/project.godot -q --headless --export-release "Windows Desktop" ./builds/windows/Game.exe
|
||||||
|
- name: Package for Windows
|
||||||
|
run: |
|
||||||
|
cd builds
|
||||||
|
cd windows; zip -r ../windows.zip *
|
||||||
|
cd ..
|
||||||
|
- name: Create Release
|
||||||
|
run: |
|
||||||
|
echo "Getting last Release Tag"
|
||||||
|
VERSION=$(curl -X 'GET' 'https://git.euph.dev/api/v1/repos/${{ github.repository }}/releases?page=1&limit=1' -H 'accept: application/json' -H 'Authorization: token ${{ secrets.RELEASE_TOKEN }}' )
|
||||||
|
echo $VERSION | jq -r '.[0].tag_name'
|
||||||
|
VERSION=$(echo $VERSION | jq -r '.[0].tag_name' | awk -F. -v OFS=. '{$NF += 1 ; print}')
|
||||||
|
echo "Generate new Release with tag: $VERSION"
|
||||||
|
ID=$(curl -X 'POST' \
|
||||||
|
'https://git.euph.dev/api/v1/repos/${{ github.repository }}/releases' \
|
||||||
|
-H 'accept: application/json' \
|
||||||
|
-H 'Content-Type: application/json' \
|
||||||
|
-H 'Authorization: token ${{ secrets.RELEASE_TOKEN }}' \
|
||||||
|
-d "{
|
||||||
|
\"body\": \"Automated Build\",
|
||||||
|
\"draft\": true,
|
||||||
|
\"name\": \"Automated Release $VERSION\",
|
||||||
|
\"prerelease\": true,
|
||||||
|
\"tag_name\": \"$VERSION\"
|
||||||
|
}")
|
||||||
|
ID=$(echo $ID | jq -r '.id')
|
||||||
|
echo $ID Upload Web
|
||||||
|
curl -X 'POST' \
|
||||||
|
"https://git.euph.dev/api/v1/repos/${{ github.repository }}/releases/$ID/assets?name=Web.zip" \
|
||||||
|
-H 'accept: application/json' \
|
||||||
|
-H 'Content-Type: multipart/form-data' \
|
||||||
|
-H 'Authorization: token ${{ secrets.RELEASE_TOKEN }}' \
|
||||||
|
-F 'attachment=@./builds/web.zip;type=application/gzip'
|
||||||
|
echo $ID Upload Linux
|
||||||
|
curl -X 'POST' \
|
||||||
|
"https://git.euph.dev/api/v1/repos/${{ github.repository }}/releases/$ID/assets?name=Linux.tar.gz" \
|
||||||
|
-H 'accept: application/json' \
|
||||||
|
-H 'Content-Type: multipart/form-data' \
|
||||||
|
-H 'Authorization: token ${{ secrets.RELEASE_TOKEN }}' \
|
||||||
|
-F 'attachment=@./builds/linux.tar.gz;type=application/gzip'
|
||||||
|
echo $ID Upload Windows
|
||||||
|
curl -X 'POST' \
|
||||||
|
"https://git.euph.dev/api/v1/repos/${{ github.repository }}/releases/$ID/assets?name=Windows.zip" \
|
||||||
|
-H 'accept: application/json' \
|
||||||
|
-H 'Content-Type: multipart/form-data' \
|
||||||
|
-H 'Authorization: token ${{ secrets.RELEASE_TOKEN }}' \
|
||||||
|
-F 'attachment=@./builds/windows.zip;type=application/gzip'
|
BIN
Assets/SFX/Jesus/Projectile/Throw Variation 1.wav
Normal file
24
Assets/SFX/Jesus/Projectile/Throw Variation 1.wav.import
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="wav"
|
||||||
|
type="AudioStreamWAV"
|
||||||
|
uid="uid://dornq2kwau6bg"
|
||||||
|
path="res://.godot/imported/Throw Variation 1.wav-cb6e200c1a7508bd3b1eaae71204fc57.sample"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/SFX/Jesus/Projectile/Throw Variation 1.wav"
|
||||||
|
dest_files=["res://.godot/imported/Throw Variation 1.wav-cb6e200c1a7508bd3b1eaae71204fc57.sample"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
force/8_bit=false
|
||||||
|
force/mono=false
|
||||||
|
force/max_rate=false
|
||||||
|
force/max_rate_hz=44100
|
||||||
|
edit/trim=false
|
||||||
|
edit/normalize=false
|
||||||
|
edit/loop_mode=0
|
||||||
|
edit/loop_begin=0
|
||||||
|
edit/loop_end=-1
|
||||||
|
compress/mode=0
|
BIN
Assets/SFX/Jesus/Projectile/Throw Variation 2.wav
Normal file
24
Assets/SFX/Jesus/Projectile/Throw Variation 2.wav.import
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="wav"
|
||||||
|
type="AudioStreamWAV"
|
||||||
|
uid="uid://b2pd7efb2r7g5"
|
||||||
|
path="res://.godot/imported/Throw Variation 2.wav-29a6debbe12d45d7a1d5ed60acdd2d8f.sample"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/SFX/Jesus/Projectile/Throw Variation 2.wav"
|
||||||
|
dest_files=["res://.godot/imported/Throw Variation 2.wav-29a6debbe12d45d7a1d5ed60acdd2d8f.sample"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
force/8_bit=false
|
||||||
|
force/mono=false
|
||||||
|
force/max_rate=false
|
||||||
|
force/max_rate_hz=44100
|
||||||
|
edit/trim=false
|
||||||
|
edit/normalize=false
|
||||||
|
edit/loop_mode=0
|
||||||
|
edit/loop_begin=0
|
||||||
|
edit/loop_end=-1
|
||||||
|
compress/mode=0
|
BIN
Assets/SFX/Jesus/Projectile/Throw Variation 3.wav
Normal file
24
Assets/SFX/Jesus/Projectile/Throw Variation 3.wav.import
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="wav"
|
||||||
|
type="AudioStreamWAV"
|
||||||
|
uid="uid://cqxnclejfbmvb"
|
||||||
|
path="res://.godot/imported/Throw Variation 3.wav-6149b642d398d05b4c6ebfab8846c3e5.sample"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/SFX/Jesus/Projectile/Throw Variation 3.wav"
|
||||||
|
dest_files=["res://.godot/imported/Throw Variation 3.wav-6149b642d398d05b4c6ebfab8846c3e5.sample"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
force/8_bit=false
|
||||||
|
force/mono=false
|
||||||
|
force/max_rate=false
|
||||||
|
force/max_rate_hz=44100
|
||||||
|
edit/trim=false
|
||||||
|
edit/normalize=false
|
||||||
|
edit/loop_mode=0
|
||||||
|
edit/loop_begin=0
|
||||||
|
edit/loop_end=-1
|
||||||
|
compress/mode=0
|
|
@ -1,34 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="texture"
|
|
||||||
type="CompressedTexture2D"
|
|
||||||
uid="uid://cvji70p68eae8"
|
|
||||||
path="res://.godot/imported/bunny_righ.png-087dbfde3e26335391f6eb0d1a0f9a4a.ctex"
|
|
||||||
metadata={
|
|
||||||
"vram_texture": false
|
|
||||||
}
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://Assets/Sprites/EvilBunny/bunny_righ.png"
|
|
||||||
dest_files=["res://.godot/imported/bunny_righ.png-087dbfde3e26335391f6eb0d1a0f9a4a.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
|
|
Before Width: | Height: | Size: 1.3 KiB |
|
@ -1,34 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="texture"
|
|
||||||
type="CompressedTexture2D"
|
|
||||||
uid="uid://ep63wy3imw2d"
|
|
||||||
path="res://.godot/imported/bunny_down.png-ea09ce83bcf9875fa961a56145d1a045.ctex"
|
|
||||||
metadata={
|
|
||||||
"vram_texture": false
|
|
||||||
}
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://Assets/Sprites/GoodBunny/bunny_down.png"
|
|
||||||
dest_files=["res://.godot/imported/bunny_down.png-ea09ce83bcf9875fa961a56145d1a045.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
|
|
Before Width: | Height: | Size: 1.2 KiB |
|
@ -1,34 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="texture"
|
|
||||||
type="CompressedTexture2D"
|
|
||||||
uid="uid://b0x834s5l1qot"
|
|
||||||
path="res://.godot/imported/bunny_left.png-91e2fa49ed65451bd7003fe4ee0265af.ctex"
|
|
||||||
metadata={
|
|
||||||
"vram_texture": false
|
|
||||||
}
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://Assets/Sprites/GoodBunny/bunny_left.png"
|
|
||||||
dest_files=["res://.godot/imported/bunny_left.png-91e2fa49ed65451bd7003fe4ee0265af.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
|
|
Before Width: | Height: | Size: 1.2 KiB |
|
@ -1,34 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="texture"
|
|
||||||
type="CompressedTexture2D"
|
|
||||||
uid="uid://c7nmf03fho3m"
|
|
||||||
path="res://.godot/imported/bunny_righ.png-22915acce3c057f7ae0e80e8a00e8f45.ctex"
|
|
||||||
metadata={
|
|
||||||
"vram_texture": false
|
|
||||||
}
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://Assets/Sprites/GoodBunny/bunny_righ.png"
|
|
||||||
dest_files=["res://.godot/imported/bunny_righ.png-22915acce3c057f7ae0e80e8a00e8f45.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
|
|
Before Width: | Height: | Size: 1.2 KiB |
|
@ -1,34 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="texture"
|
|
||||||
type="CompressedTexture2D"
|
|
||||||
uid="uid://d2m2jsxx5xpxx"
|
|
||||||
path="res://.godot/imported/bunny_up.png-d5ed05cbbf36f84feb579ad11c8b8aca.ctex"
|
|
||||||
metadata={
|
|
||||||
"vram_texture": false
|
|
||||||
}
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://Assets/Sprites/GoodBunny/bunny_up.png"
|
|
||||||
dest_files=["res://.godot/imported/bunny_up.png-d5ed05cbbf36f84feb579ad11c8b8aca.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
|
|
Before Width: | Height: | Size: 597 B |
|
@ -1,34 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="texture"
|
|
||||||
type="CompressedTexture2D"
|
|
||||||
uid="uid://ct2del6b6jorm"
|
|
||||||
path="res://.godot/imported/Jesus Back.png-6132a4979edf4d1442fefae322c4ce7c.ctex"
|
|
||||||
metadata={
|
|
||||||
"vram_texture": false
|
|
||||||
}
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://Assets/Sprites/Jesus/Jesus Back.png"
|
|
||||||
dest_files=["res://.godot/imported/Jesus Back.png-6132a4979edf4d1442fefae322c4ce7c.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
|
|
Before Width: | Height: | Size: 714 B |
|
@ -1,34 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="texture"
|
|
||||||
type="CompressedTexture2D"
|
|
||||||
uid="uid://c03lntytfivr1"
|
|
||||||
path="res://.godot/imported/Jesus Front.png-b78bfa6c3ed674009555f7ab3f93e778.ctex"
|
|
||||||
metadata={
|
|
||||||
"vram_texture": false
|
|
||||||
}
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://Assets/Sprites/Jesus/Jesus Front.png"
|
|
||||||
dest_files=["res://.godot/imported/Jesus Front.png-b78bfa6c3ed674009555f7ab3f93e778.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
|
|
Before Width: | Height: | Size: 665 B |
|
@ -1,34 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="texture"
|
|
||||||
type="CompressedTexture2D"
|
|
||||||
uid="uid://cn4kqa1p845wl"
|
|
||||||
path="res://.godot/imported/Jesus Left.png-2949c2879ed5f5e8def57f2eb1498de4.ctex"
|
|
||||||
metadata={
|
|
||||||
"vram_texture": false
|
|
||||||
}
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://Assets/Sprites/Jesus/Jesus Left.png"
|
|
||||||
dest_files=["res://.godot/imported/Jesus Left.png-2949c2879ed5f5e8def57f2eb1498de4.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
|
|
Before Width: | Height: | Size: 7.2 KiB |
|
@ -1,34 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="texture"
|
|
||||||
type="CompressedTexture2D"
|
|
||||||
uid="uid://bl7vfn05ul1vu"
|
|
||||||
path="res://.godot/imported/Jesus Spritesheet.png-821a08dd328b5743c2bc86e42539e57a.ctex"
|
|
||||||
metadata={
|
|
||||||
"vram_texture": false
|
|
||||||
}
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://Assets/Sprites/Jesus/Jesus Spritesheet.png"
|
|
||||||
dest_files=["res://.godot/imported/Jesus Spritesheet.png-821a08dd328b5743c2bc86e42539e57a.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
|
|
Before Width: | Height: | Size: 145 B |
|
@ -1,34 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="texture"
|
|
||||||
type="CompressedTexture2D"
|
|
||||||
uid="uid://cubc3m81pdyvq"
|
|
||||||
path="res://.godot/imported/Shadow.png-e182ddfbb5e0bd7753fe3ec1e6b362c7.ctex"
|
|
||||||
metadata={
|
|
||||||
"vram_texture": false
|
|
||||||
}
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://Assets/Sprites/Jesus/Shadow.png"
|
|
||||||
dest_files=["res://.godot/imported/Shadow.png-e182ddfbb5e0bd7753fe3ec1e6b362c7.ctex"]
|
|
||||||
|
|
||||||
[params]
|
|
||||||
|
|
||||||
compress/mode=0
|
|
||||||
compress/high_quality=false
|
|
||||||
compress/lossy_quality=0.7
|
|
||||||
compress/hdr_compression=1
|
|
||||||
compress/normal_map=0
|
|
||||||
compress/channel_pack=0
|
|
||||||
mipmaps/generate=false
|
|
||||||
mipmaps/limit=-1
|
|
||||||
roughness/mode=0
|
|
||||||
roughness/src_normal=""
|
|
||||||
process/fix_alpha_border=true
|
|
||||||
process/premult_alpha=false
|
|
||||||
process/normal_map_invert_y=false
|
|
||||||
process/hdr_as_srgb=false
|
|
||||||
process/hdr_clamp_exposure=false
|
|
||||||
process/size_limit=0
|
|
||||||
detect_3d/compress_to=1
|
|
|
@ -1,12 +1,14 @@
|
||||||
[gd_resource type="TileSet" load_steps=4 format=3 uid="uid://bj7uu2180mie3"]
|
[gd_resource type="TileSet" load_steps=5 format=3 uid="uid://bj7uu2180mie3"]
|
||||||
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dl2qogjortsbo" path="res://Assets/Sprites/TileMap.png" id="1_cl3se"]
|
[ext_resource type="Texture2D" uid="uid://dl2qogjortsbo" path="res://Assets/Sprites/TileMap.png" id="1_cl3se"]
|
||||||
|
|
||||||
[sub_resource type="NavigationPolygon" id="NavigationPolygon_fhapu"]
|
[sub_resource type="NavigationPolygon" id="NavigationPolygon_l6uwm"]
|
||||||
vertices = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
|
vertices = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
|
||||||
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3)])
|
polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3)])
|
||||||
outlines = Array[PackedVector2Array]([PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)])
|
outlines = Array[PackedVector2Array]([PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)])
|
||||||
|
|
||||||
|
[sub_resource type="NavigationPolygon" id="NavigationPolygon_dkm5b"]
|
||||||
|
|
||||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_mgef5"]
|
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_mgef5"]
|
||||||
texture = ExtResource("1_cl3se")
|
texture = ExtResource("1_cl3se")
|
||||||
texture_region_size = Vector2i(32, 32)
|
texture_region_size = Vector2i(32, 32)
|
||||||
|
@ -16,12 +18,14 @@ texture_region_size = Vector2i(32, 32)
|
||||||
0:0/0/probability = 2.0
|
0:0/0/probability = 2.0
|
||||||
0:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
0:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
0:0/0/physics_layer_0/angular_velocity = 0.0
|
0:0/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
0:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -6, 16, -6, 16, 16, -16, 16)
|
||||||
0:0/0/terrains_peering_bit/bottom_side = 0
|
0:0/0/terrains_peering_bit/bottom_side = 0
|
||||||
1:0/0 = 0
|
1:0/0 = 0
|
||||||
1:0/0/terrain_set = 0
|
1:0/0/terrain_set = 0
|
||||||
1:0/0/terrain = 0
|
1:0/0/terrain = 0
|
||||||
1:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
1:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
1:0/0/physics_layer_0/angular_velocity = 0.0
|
1:0/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
1:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
|
||||||
1:0/0/terrains_peering_bit/right_side = 0
|
1:0/0/terrains_peering_bit/right_side = 0
|
||||||
1:0/0/terrains_peering_bit/bottom_side = 0
|
1:0/0/terrains_peering_bit/bottom_side = 0
|
||||||
2:0/0 = 0
|
2:0/0 = 0
|
||||||
|
@ -29,6 +33,7 @@ texture_region_size = Vector2i(32, 32)
|
||||||
2:0/0/terrain = 0
|
2:0/0/terrain = 0
|
||||||
2:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
2:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
2:0/0/physics_layer_0/angular_velocity = 0.0
|
2:0/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
2:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
|
||||||
2:0/0/terrains_peering_bit/right_side = 0
|
2:0/0/terrains_peering_bit/right_side = 0
|
||||||
2:0/0/terrains_peering_bit/bottom_side = 0
|
2:0/0/terrains_peering_bit/bottom_side = 0
|
||||||
2:0/0/terrains_peering_bit/left_side = 0
|
2:0/0/terrains_peering_bit/left_side = 0
|
||||||
|
@ -37,6 +42,7 @@ texture_region_size = Vector2i(32, 32)
|
||||||
3:0/0/terrain = 0
|
3:0/0/terrain = 0
|
||||||
3:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
3:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
3:0/0/physics_layer_0/angular_velocity = 0.0
|
3:0/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
3:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
|
||||||
3:0/0/terrains_peering_bit/bottom_side = 0
|
3:0/0/terrains_peering_bit/bottom_side = 0
|
||||||
3:0/0/terrains_peering_bit/left_side = 0
|
3:0/0/terrains_peering_bit/left_side = 0
|
||||||
4:0/0 = 0
|
4:0/0 = 0
|
||||||
|
@ -44,6 +50,7 @@ texture_region_size = Vector2i(32, 32)
|
||||||
4:0/0/terrain = 0
|
4:0/0/terrain = 0
|
||||||
4:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
4:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
4:0/0/physics_layer_0/angular_velocity = 0.0
|
4:0/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
4:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
|
||||||
4:0/0/terrains_peering_bit/right_side = 0
|
4:0/0/terrains_peering_bit/right_side = 0
|
||||||
4:0/0/terrains_peering_bit/bottom_side = 0
|
4:0/0/terrains_peering_bit/bottom_side = 0
|
||||||
4:0/0/terrains_peering_bit/left_side = 0
|
4:0/0/terrains_peering_bit/left_side = 0
|
||||||
|
@ -72,6 +79,7 @@ texture_region_size = Vector2i(32, 32)
|
||||||
7:0/0/terrain = 0
|
7:0/0/terrain = 0
|
||||||
7:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
7:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
7:0/0/physics_layer_0/angular_velocity = 0.0
|
7:0/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
7:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
|
||||||
7:0/0/terrains_peering_bit/right_side = 0
|
7:0/0/terrains_peering_bit/right_side = 0
|
||||||
7:0/0/terrains_peering_bit/bottom_side = 0
|
7:0/0/terrains_peering_bit/bottom_side = 0
|
||||||
7:0/0/terrains_peering_bit/left_side = 0
|
7:0/0/terrains_peering_bit/left_side = 0
|
||||||
|
@ -92,6 +100,7 @@ texture_region_size = Vector2i(32, 32)
|
||||||
9:0/0/terrain = 0
|
9:0/0/terrain = 0
|
||||||
9:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
9:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
9:0/0/physics_layer_0/angular_velocity = 0.0
|
9:0/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
9:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
|
||||||
9:0/0/terrains_peering_bit/right_side = 0
|
9:0/0/terrains_peering_bit/right_side = 0
|
||||||
9:0/0/terrains_peering_bit/bottom_right_corner = 0
|
9:0/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
9:0/0/terrains_peering_bit/bottom_side = 0
|
9:0/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
@ -124,6 +133,7 @@ texture_region_size = Vector2i(32, 32)
|
||||||
0:1/0/terrain = 0
|
0:1/0/terrain = 0
|
||||||
0:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
0:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
0:1/0/physics_layer_0/angular_velocity = 0.0
|
0:1/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
0:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
|
||||||
0:1/0/terrains_peering_bit/bottom_side = 0
|
0:1/0/terrains_peering_bit/bottom_side = 0
|
||||||
0:1/0/terrains_peering_bit/top_side = 0
|
0:1/0/terrains_peering_bit/top_side = 0
|
||||||
1:1/0 = 0
|
1:1/0 = 0
|
||||||
|
@ -131,6 +141,7 @@ texture_region_size = Vector2i(32, 32)
|
||||||
1:1/0/terrain = 0
|
1:1/0/terrain = 0
|
||||||
1:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
1:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
1:1/0/physics_layer_0/angular_velocity = 0.0
|
1:1/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
1:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
|
||||||
1:1/0/terrains_peering_bit/right_side = 0
|
1:1/0/terrains_peering_bit/right_side = 0
|
||||||
1:1/0/terrains_peering_bit/bottom_side = 0
|
1:1/0/terrains_peering_bit/bottom_side = 0
|
||||||
1:1/0/terrains_peering_bit/top_side = 0
|
1:1/0/terrains_peering_bit/top_side = 0
|
||||||
|
@ -139,6 +150,7 @@ texture_region_size = Vector2i(32, 32)
|
||||||
2:1/0/terrain = 0
|
2:1/0/terrain = 0
|
||||||
2:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
2:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
2:1/0/physics_layer_0/angular_velocity = 0.0
|
2:1/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
2:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
|
||||||
2:1/0/terrains_peering_bit/right_side = 0
|
2:1/0/terrains_peering_bit/right_side = 0
|
||||||
2:1/0/terrains_peering_bit/bottom_side = 0
|
2:1/0/terrains_peering_bit/bottom_side = 0
|
||||||
2:1/0/terrains_peering_bit/left_side = 0
|
2:1/0/terrains_peering_bit/left_side = 0
|
||||||
|
@ -148,6 +160,7 @@ texture_region_size = Vector2i(32, 32)
|
||||||
3:1/0/terrain = 0
|
3:1/0/terrain = 0
|
||||||
3:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
3:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
3:1/0/physics_layer_0/angular_velocity = 0.0
|
3:1/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
3:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
|
||||||
3:1/0/terrains_peering_bit/bottom_side = 0
|
3:1/0/terrains_peering_bit/bottom_side = 0
|
||||||
3:1/0/terrains_peering_bit/left_side = 0
|
3:1/0/terrains_peering_bit/left_side = 0
|
||||||
3:1/0/terrains_peering_bit/top_side = 0
|
3:1/0/terrains_peering_bit/top_side = 0
|
||||||
|
@ -220,6 +233,7 @@ texture_region_size = Vector2i(32, 32)
|
||||||
11:1/0/terrain = 0
|
11:1/0/terrain = 0
|
||||||
11:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
11:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
11:1/0/physics_layer_0/angular_velocity = 0.0
|
11:1/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
11:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(16, -16, -16, -16, -16, 16, 4, 16, 4, -1, 16, -1)
|
||||||
11:1/0/terrains_peering_bit/right_side = 0
|
11:1/0/terrains_peering_bit/right_side = 0
|
||||||
11:1/0/terrains_peering_bit/bottom_side = 0
|
11:1/0/terrains_peering_bit/bottom_side = 0
|
||||||
11:1/0/terrains_peering_bit/bottom_left_corner = 0
|
11:1/0/terrains_peering_bit/bottom_left_corner = 0
|
||||||
|
@ -232,12 +246,14 @@ texture_region_size = Vector2i(32, 32)
|
||||||
0:2/0/probability = 2.0
|
0:2/0/probability = 2.0
|
||||||
0:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
0:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
0:2/0/physics_layer_0/angular_velocity = 0.0
|
0:2/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
0:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, -1, -16, -1)
|
||||||
0:2/0/terrains_peering_bit/top_side = 0
|
0:2/0/terrains_peering_bit/top_side = 0
|
||||||
1:2/0 = 0
|
1:2/0 = 0
|
||||||
1:2/0/terrain_set = 0
|
1:2/0/terrain_set = 0
|
||||||
1:2/0/terrain = 0
|
1:2/0/terrain = 0
|
||||||
1:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
1:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
1:2/0/physics_layer_0/angular_velocity = 0.0
|
1:2/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
1:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, -1, -16, -1)
|
||||||
1:2/0/terrains_peering_bit/right_side = 0
|
1:2/0/terrains_peering_bit/right_side = 0
|
||||||
1:2/0/terrains_peering_bit/top_side = 0
|
1:2/0/terrains_peering_bit/top_side = 0
|
||||||
2:2/0 = 0
|
2:2/0 = 0
|
||||||
|
@ -245,6 +261,7 @@ texture_region_size = Vector2i(32, 32)
|
||||||
2:2/0/terrain = 0
|
2:2/0/terrain = 0
|
||||||
2:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
2:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
2:2/0/physics_layer_0/angular_velocity = 0.0
|
2:2/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
2:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, -1, -16, -1)
|
||||||
2:2/0/terrains_peering_bit/right_side = 0
|
2:2/0/terrains_peering_bit/right_side = 0
|
||||||
2:2/0/terrains_peering_bit/left_side = 0
|
2:2/0/terrains_peering_bit/left_side = 0
|
||||||
2:2/0/terrains_peering_bit/top_side = 0
|
2:2/0/terrains_peering_bit/top_side = 0
|
||||||
|
@ -253,6 +270,7 @@ texture_region_size = Vector2i(32, 32)
|
||||||
3:2/0/terrain = 0
|
3:2/0/terrain = 0
|
||||||
3:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
3:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
3:2/0/physics_layer_0/angular_velocity = 0.0
|
3:2/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
3:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, -1, -16, -1)
|
||||||
3:2/0/terrains_peering_bit/left_side = 0
|
3:2/0/terrains_peering_bit/left_side = 0
|
||||||
3:2/0/terrains_peering_bit/top_side = 0
|
3:2/0/terrains_peering_bit/top_side = 0
|
||||||
4:2/0 = 0
|
4:2/0 = 0
|
||||||
|
@ -302,6 +320,7 @@ texture_region_size = Vector2i(32, 32)
|
||||||
8:2/0/terrain = 0
|
8:2/0/terrain = 0
|
||||||
8:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
8:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
8:2/0/physics_layer_0/angular_velocity = 0.0
|
8:2/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
8:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -3, 16, -3, -1, -16, -1)
|
||||||
8:2/0/terrains_peering_bit/right_side = 0
|
8:2/0/terrains_peering_bit/right_side = 0
|
||||||
8:2/0/terrains_peering_bit/bottom_right_corner = 0
|
8:2/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
8:2/0/terrains_peering_bit/bottom_side = 0
|
8:2/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
@ -351,18 +370,21 @@ texture_region_size = Vector2i(32, 32)
|
||||||
0:3/0/probability = 2.0
|
0:3/0/probability = 2.0
|
||||||
0:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
0:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
0:3/0/physics_layer_0/angular_velocity = 0.0
|
0:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
0:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(12, -16, -12, -16, -12, -1, 12, -1)
|
||||||
1:3/0 = 0
|
1:3/0 = 0
|
||||||
1:3/0/terrain_set = 0
|
1:3/0/terrain_set = 0
|
||||||
1:3/0/terrain = 0
|
1:3/0/terrain = 0
|
||||||
1:3/0/probability = 2.0
|
1:3/0/probability = 2.0
|
||||||
1:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
1:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
1:3/0/physics_layer_0/angular_velocity = 0.0
|
1:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
1:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-4, -16, 16, -16, 16, -1, -4, -1)
|
||||||
1:3/0/terrains_peering_bit/right_side = 0
|
1:3/0/terrains_peering_bit/right_side = 0
|
||||||
2:3/0 = 0
|
2:3/0 = 0
|
||||||
2:3/0/terrain_set = 0
|
2:3/0/terrain_set = 0
|
||||||
2:3/0/terrain = 0
|
2:3/0/terrain = 0
|
||||||
2:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
2:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
2:3/0/physics_layer_0/angular_velocity = 0.0
|
2:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
2:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, -1, -16, -1)
|
||||||
2:3/0/terrains_peering_bit/right_side = 0
|
2:3/0/terrains_peering_bit/right_side = 0
|
||||||
2:3/0/terrains_peering_bit/left_side = 0
|
2:3/0/terrains_peering_bit/left_side = 0
|
||||||
3:3/0 = 0
|
3:3/0 = 0
|
||||||
|
@ -371,6 +393,7 @@ texture_region_size = Vector2i(32, 32)
|
||||||
3:3/0/probability = 2.0
|
3:3/0/probability = 2.0
|
||||||
3:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
3:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
3:3/0/physics_layer_0/angular_velocity = 0.0
|
3:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
3:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(4, -16, -16, -16, -16, -1, 4, -1)
|
||||||
3:3/0/terrains_peering_bit/left_side = 0
|
3:3/0/terrains_peering_bit/left_side = 0
|
||||||
4:3/0 = 0
|
4:3/0 = 0
|
||||||
4:3/0/terrain_set = 0
|
4:3/0/terrain_set = 0
|
||||||
|
@ -387,6 +410,7 @@ texture_region_size = Vector2i(32, 32)
|
||||||
5:3/0/terrain = 0
|
5:3/0/terrain = 0
|
||||||
5:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
5:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
5:3/0/physics_layer_0/angular_velocity = 0.0
|
5:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
5:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, -1, -16, -1)
|
||||||
5:3/0/terrains_peering_bit/right_side = 0
|
5:3/0/terrains_peering_bit/right_side = 0
|
||||||
5:3/0/terrains_peering_bit/left_side = 0
|
5:3/0/terrains_peering_bit/left_side = 0
|
||||||
5:3/0/terrains_peering_bit/top_side = 0
|
5:3/0/terrains_peering_bit/top_side = 0
|
||||||
|
@ -396,6 +420,7 @@ texture_region_size = Vector2i(32, 32)
|
||||||
6:3/0/terrain = 0
|
6:3/0/terrain = 0
|
||||||
6:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
6:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
6:3/0/physics_layer_0/angular_velocity = 0.0
|
6:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
6:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, -1, -16, -1)
|
||||||
6:3/0/terrains_peering_bit/right_side = 0
|
6:3/0/terrains_peering_bit/right_side = 0
|
||||||
6:3/0/terrains_peering_bit/left_side = 0
|
6:3/0/terrains_peering_bit/left_side = 0
|
||||||
6:3/0/terrains_peering_bit/top_left_corner = 0
|
6:3/0/terrains_peering_bit/top_left_corner = 0
|
||||||
|
@ -405,6 +430,7 @@ texture_region_size = Vector2i(32, 32)
|
||||||
7:3/0/terrain = 0
|
7:3/0/terrain = 0
|
||||||
7:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
7:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
7:3/0/physics_layer_0/angular_velocity = 0.0
|
7:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
7:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -3, 16, -4, 7, -16, -1)
|
||||||
7:3/0/terrains_peering_bit/right_side = 0
|
7:3/0/terrains_peering_bit/right_side = 0
|
||||||
7:3/0/terrains_peering_bit/bottom_right_corner = 0
|
7:3/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
7:3/0/terrains_peering_bit/bottom_side = 0
|
7:3/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
@ -416,7 +442,7 @@ texture_region_size = Vector2i(32, 32)
|
||||||
8:3/0/probability = 2.0
|
8:3/0/probability = 2.0
|
||||||
8:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
8:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
8:3/0/physics_layer_0/angular_velocity = 0.0
|
8:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
8:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(16, -16, 16, -1, -4, -1, -4, -16)
|
8:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-3, -16, 16, -16, 16, -1, -3, -1)
|
||||||
8:3/0/terrains_peering_bit/right_side = 0
|
8:3/0/terrains_peering_bit/right_side = 0
|
||||||
8:3/0/terrains_peering_bit/top_side = 0
|
8:3/0/terrains_peering_bit/top_side = 0
|
||||||
8:3/0/terrains_peering_bit/top_right_corner = 0
|
8:3/0/terrains_peering_bit/top_right_corner = 0
|
||||||
|
@ -431,11 +457,13 @@ texture_region_size = Vector2i(32, 32)
|
||||||
9:3/0/terrains_peering_bit/top_left_corner = 0
|
9:3/0/terrains_peering_bit/top_left_corner = 0
|
||||||
9:3/0/terrains_peering_bit/top_side = 0
|
9:3/0/terrains_peering_bit/top_side = 0
|
||||||
9:3/0/terrains_peering_bit/top_right_corner = 0
|
9:3/0/terrains_peering_bit/top_right_corner = 0
|
||||||
|
9:3/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_dkm5b")
|
||||||
10:3/0 = 0
|
10:3/0 = 0
|
||||||
10:3/0/terrain_set = 0
|
10:3/0/terrain_set = 0
|
||||||
10:3/0/terrain = 0
|
10:3/0/terrain = 0
|
||||||
10:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
10:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
10:3/0/physics_layer_0/angular_velocity = 0.0
|
10:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
10:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
|
||||||
10:3/0/terrains_peering_bit/right_side = 0
|
10:3/0/terrains_peering_bit/right_side = 0
|
||||||
10:3/0/terrains_peering_bit/bottom_side = 0
|
10:3/0/terrains_peering_bit/bottom_side = 0
|
||||||
10:3/0/terrains_peering_bit/left_side = 0
|
10:3/0/terrains_peering_bit/left_side = 0
|
||||||
|
@ -452,12 +480,21 @@ texture_region_size = Vector2i(32, 32)
|
||||||
11:3/0/terrains_peering_bit/left_side = 0
|
11:3/0/terrains_peering_bit/left_side = 0
|
||||||
11:3/0/terrains_peering_bit/top_left_corner = 0
|
11:3/0/terrains_peering_bit/top_left_corner = 0
|
||||||
11:3/0/terrains_peering_bit/top_side = 0
|
11:3/0/terrains_peering_bit/top_side = 0
|
||||||
|
10:1/next_alternative_id = 11
|
||||||
10:1/0 = 0
|
10:1/0 = 0
|
||||||
10:1/0/terrain_set = 0
|
10:1/0/terrain_set = 0
|
||||||
10:1/0/terrain = 1
|
10:1/0/terrain = 1
|
||||||
10:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
10:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
10:1/0/physics_layer_0/angular_velocity = 0.0
|
10:1/0/physics_layer_0/angular_velocity = 0.0
|
||||||
10:1/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_fhapu")
|
10:1/0/terrains_peering_bit/right_side = 1
|
||||||
|
10:1/0/terrains_peering_bit/bottom_right_corner = 1
|
||||||
|
10:1/0/terrains_peering_bit/bottom_side = 1
|
||||||
|
10:1/0/terrains_peering_bit/bottom_left_corner = 1
|
||||||
|
10:1/0/terrains_peering_bit/left_side = 1
|
||||||
|
10:1/0/terrains_peering_bit/top_left_corner = 1
|
||||||
|
10:1/0/terrains_peering_bit/top_side = 1
|
||||||
|
10:1/0/terrains_peering_bit/top_right_corner = 1
|
||||||
|
10:1/0/navigation_layer_0/polygon = SubResource("NavigationPolygon_l6uwm")
|
||||||
|
|
||||||
[resource]
|
[resource]
|
||||||
tile_size = Vector2i(32, 32)
|
tile_size = Vector2i(32, 32)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
[gd_resource type="Theme" load_steps=47 format=3 uid="uid://babphdknr2kkd"]
|
[gd_resource type="Theme" load_steps=47 format=3 uid="uid://b0b3fxesfrpb7"]
|
||||||
|
|
||||||
[ext_resource type="StyleBox" uid="uid://bmeh7kt6t886w" path="res://Assets/UI/Button/disabled.tres" id="1_n3up8"]
|
[ext_resource type="StyleBox" uid="uid://bmeh7kt6t886w" path="res://Assets/UI/Button/disabled.tres" id="1_n3up8"]
|
||||||
[ext_resource type="StyleBox" uid="uid://gxy851bdkmb0" path="res://Assets/UI/Button/focus.tres" id="2_ukct7"]
|
[ext_resource type="StyleBox" uid="uid://gxy851bdkmb0" path="res://Assets/UI/Button/focus.tres" id="2_ukct7"]
|
||||||
|
@ -41,7 +41,7 @@
|
||||||
[ext_resource type="StyleBox" uid="uid://0jfr1uwuog0s" path="res://Assets/UI/Slider/v/background.tres" id="39_dl1e4"]
|
[ext_resource type="StyleBox" uid="uid://0jfr1uwuog0s" path="res://Assets/UI/Slider/v/background.tres" id="39_dl1e4"]
|
||||||
[ext_resource type="FontFile" uid="uid://dqdeftjkwxe64" path="res://Assets/Fonts/Dogica/dogicapixel.ttf" id="40_bmcvq"]
|
[ext_resource type="FontFile" uid="uid://dqdeftjkwxe64" path="res://Assets/Fonts/Dogica/dogicapixel.ttf" id="40_bmcvq"]
|
||||||
|
|
||||||
[sub_resource type="Image" id="Image_fjlcl"]
|
[sub_resource type="Image" id="Image_1o7tw"]
|
||||||
data = {
|
data = {
|
||||||
"data": PackedByteArray(255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0),
|
"data": PackedByteArray(255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 64, 255, 255, 255, 64, 255, 255, 255, 0),
|
||||||
"format": "RGBA8",
|
"format": "RGBA8",
|
||||||
|
@ -51,7 +51,7 @@ data = {
|
||||||
}
|
}
|
||||||
|
|
||||||
[sub_resource type="ImageTexture" id="ImageTexture_g5bup"]
|
[sub_resource type="ImageTexture" id="ImageTexture_g5bup"]
|
||||||
image = SubResource("Image_fjlcl")
|
image = SubResource("Image_1o7tw")
|
||||||
|
|
||||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_sj7h5"]
|
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_sj7h5"]
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
[gd_scene load_steps=5 format=3 uid="uid://cbfcolm6mjolp"]
|
[gd_scene load_steps=6 format=3 uid="uid://btxarutbkchmb"]
|
||||||
|
|
||||||
[ext_resource type="Script" path="res://Scripts/UI/SettingsMenu.gd" id="1_2rgd2"]
|
[ext_resource type="Script" path="res://Scripts/UI/SettingsMenu.gd" id="1_2rgd2"]
|
||||||
[ext_resource type="Script" path="res://Scripts/UI/Remaping/RemapController.gd" id="2_2f8ap"]
|
[ext_resource type="Script" path="res://Scripts/UI/Remaping/RemapController.gd" id="2_2f8ap"]
|
||||||
[ext_resource type="Script" path="res://Scripts/UI/Remaping/RemapButton.gd" id="2_4asaa"]
|
[ext_resource type="Script" path="res://Scripts/UI/Remaping/RemapButton.gd" id="2_4asaa"]
|
||||||
|
[ext_resource type="Theme" uid="uid://b0b3fxesfrpb7" path="res://Assets/UI/Theme.tres" id="3_ajuuh"]
|
||||||
|
|
||||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_02uod"]
|
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_02uod"]
|
||||||
bg_color = Color(0.439216, 0.631373, 0.537255, 1)
|
bg_color = Color(0.439216, 0.631373, 0.537255, 1)
|
||||||
|
@ -22,7 +23,7 @@ master_volume_slider = NodePath("Panel/MarginContainer/VBoxContainer/SettingsTab
|
||||||
music_volume_slider = NodePath("Panel/MarginContainer/VBoxContainer/SettingsTabs/Audio/ScrollView/MarginContainer/HBoxContainer/Item/MusicVolSlider")
|
music_volume_slider = NodePath("Panel/MarginContainer/VBoxContainer/SettingsTabs/Audio/ScrollView/MarginContainer/HBoxContainer/Item/MusicVolSlider")
|
||||||
sfx_volume_slider = NodePath("Panel/MarginContainer/VBoxContainer/SettingsTabs/Audio/ScrollView/MarginContainer/HBoxContainer/Item/SFXVolSlider")
|
sfx_volume_slider = NodePath("Panel/MarginContainer/VBoxContainer/SettingsTabs/Audio/ScrollView/MarginContainer/HBoxContainer/Item/SFXVolSlider")
|
||||||
|
|
||||||
[node name="Remap Controller" type="Control" parent="."]
|
[node name="Remap Controller" type="Control" parent="." node_paths=PackedStringArray("remap_buttons_holder")]
|
||||||
visible = false
|
visible = false
|
||||||
layout_mode = 3
|
layout_mode = 3
|
||||||
anchors_preset = 0
|
anchors_preset = 0
|
||||||
|
@ -31,6 +32,7 @@ offset_top = 12.0
|
||||||
offset_right = 12.0
|
offset_right = 12.0
|
||||||
offset_bottom = 12.0
|
offset_bottom = 12.0
|
||||||
script = ExtResource("2_2f8ap")
|
script = ExtResource("2_2f8ap")
|
||||||
|
remap_buttons_holder = NodePath("../Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer/Item")
|
||||||
|
|
||||||
[node name="Panel" type="Panel" parent="."]
|
[node name="Panel" type="Panel" parent="."]
|
||||||
anchors_preset = 15
|
anchors_preset = 15
|
||||||
|
@ -38,6 +40,7 @@ anchor_right = 1.0
|
||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
grow_horizontal = 2
|
grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
|
theme = ExtResource("3_ajuuh")
|
||||||
theme_override_styles/panel = SubResource("StyleBoxFlat_02uod")
|
theme_override_styles/panel = SubResource("StyleBoxFlat_02uod")
|
||||||
|
|
||||||
[node name="MarginContainer" type="MarginContainer" parent="Panel"]
|
[node name="MarginContainer" type="MarginContainer" parent="Panel"]
|
||||||
|
@ -61,7 +64,6 @@ size_flags_vertical = 3
|
||||||
tabs_rearrange_group = 0
|
tabs_rearrange_group = 0
|
||||||
|
|
||||||
[node name="Video" type="MarginContainer" parent="Panel/MarginContainer/VBoxContainer/SettingsTabs"]
|
[node name="Video" type="MarginContainer" parent="Panel/MarginContainer/VBoxContainer/SettingsTabs"]
|
||||||
visible = false
|
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
theme_override_constants/margin_left = 4
|
theme_override_constants/margin_left = 4
|
||||||
theme_override_constants/margin_top = 4
|
theme_override_constants/margin_top = 4
|
||||||
|
@ -232,6 +234,7 @@ min_value = -72.0
|
||||||
max_value = 0.0
|
max_value = 0.0
|
||||||
|
|
||||||
[node name="Controls" type="MarginContainer" parent="Panel/MarginContainer/VBoxContainer/SettingsTabs"]
|
[node name="Controls" type="MarginContainer" parent="Panel/MarginContainer/VBoxContainer/SettingsTabs"]
|
||||||
|
visible = false
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
theme_override_constants/margin_left = 4
|
theme_override_constants/margin_left = 4
|
||||||
theme_override_constants/margin_top = 4
|
theme_override_constants/margin_top = 4
|
||||||
|
@ -341,6 +344,16 @@ layout_mode = 2
|
||||||
text = "Attack Controller
|
text = "Attack Controller
|
||||||
"
|
"
|
||||||
|
|
||||||
|
[node name="Spacer2" type="MarginContainer" parent="Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer/Label"]
|
||||||
|
custom_minimum_size = Vector2(0, 32)
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
|
||||||
|
[node name="ResetLabel" type="Label" parent="Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer/Label"]
|
||||||
|
custom_minimum_size = Vector2(0, 48)
|
||||||
|
layout_mode = 2
|
||||||
|
text = "Reset to Defaults"
|
||||||
|
|
||||||
[node name="Spacer" type="MarginContainer" parent="Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer"]
|
[node name="Spacer" type="MarginContainer" parent="Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
|
@ -469,6 +482,16 @@ script = ExtResource("2_4asaa")
|
||||||
input_action_name = "attack_controller"
|
input_action_name = "attack_controller"
|
||||||
remap_controller = NodePath("../../../../../../../../../../Remap Controller")
|
remap_controller = NodePath("../../../../../../../../../../Remap Controller")
|
||||||
|
|
||||||
|
[node name="Spacers2" type="MarginContainer" parent="Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer/Item"]
|
||||||
|
custom_minimum_size = Vector2(0, 32)
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
|
||||||
|
[node name="ResetButton" type="Button" parent="Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer/Item"]
|
||||||
|
custom_minimum_size = Vector2(400, 40)
|
||||||
|
layout_mode = 2
|
||||||
|
text = "Reset"
|
||||||
|
|
||||||
[node name="MarginContainer" type="MarginContainer" parent="Panel/MarginContainer/VBoxContainer"]
|
[node name="MarginContainer" type="MarginContainer" parent="Panel/MarginContainer/VBoxContainer"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
theme_override_constants/margin_top = 32
|
theme_override_constants/margin_top = 32
|
||||||
|
@ -501,4 +524,5 @@ text = "Back"
|
||||||
[connection signal="pressed" from="Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer/Item/AimLeftControllerRemapButton" to="Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer/Item/AimLeftControllerRemapButton" method="_on_pressed"]
|
[connection signal="pressed" from="Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer/Item/AimLeftControllerRemapButton" to="Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer/Item/AimLeftControllerRemapButton" method="_on_pressed"]
|
||||||
[connection signal="pressed" from="Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer/Item/AimRightControllerRemapButton" to="Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer/Item/AimRightControllerRemapButton" method="_on_pressed"]
|
[connection signal="pressed" from="Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer/Item/AimRightControllerRemapButton" to="Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer/Item/AimRightControllerRemapButton" method="_on_pressed"]
|
||||||
[connection signal="pressed" from="Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer/Item/AttackControllerRemapButton" to="Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer/Item/AttackControllerRemapButton" method="_on_pressed"]
|
[connection signal="pressed" from="Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer/Item/AttackControllerRemapButton" to="Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer/Item/AttackControllerRemapButton" method="_on_pressed"]
|
||||||
|
[connection signal="pressed" from="Panel/MarginContainer/VBoxContainer/SettingsTabs/Controls/ScrollView/MarginContainer/HBoxContainer/Item/ResetButton" to="Remap Controller" method="_on_reset_button_pressed"]
|
||||||
[connection signal="pressed" from="Panel/MarginContainer/VBoxContainer/MarginContainer/Back Button" to="." method="_on_back_pressed"]
|
[connection signal="pressed" from="Panel/MarginContainer/VBoxContainer/MarginContainer/Back Button" to="." method="_on_back_pressed"]
|
||||||
|
|
|
@ -1,13 +1,8 @@
|
||||||
[gd_scene load_steps=12 format=3 uid="uid://cpl4tllohhyel"]
|
[gd_scene load_steps=11 format=3 uid="uid://cpl4tllohhyel"]
|
||||||
|
|
||||||
[ext_resource type="Script" path="res://Scripts/EntitySystem/Bunny.gd" id="1_1kj2b"]
|
[ext_resource type="Script" path="res://Scripts/EntitySystem/Bunny.gd" id="1_1kj2b"]
|
||||||
[ext_resource type="Texture2D" uid="uid://df2fluk0dlqar" path="res://Assets/Sprites/Bunny/bad_bunny_spritesheet.png" id="2_v8p70"]
|
[ext_resource type="Texture2D" uid="uid://df2fluk0dlqar" path="res://Assets/Sprites/Bunny/bad_bunny_spritesheet.png" id="2_v8p70"]
|
||||||
|
|
||||||
[sub_resource type="CircleShape2D" id="CircleShape2D_sedmr"]
|
|
||||||
|
|
||||||
[sub_resource type="CircleShape2D" id="CircleShape2D_itvjj"]
|
|
||||||
radius = 14.0
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_6br4g"]
|
[sub_resource type="Animation" id="Animation_6br4g"]
|
||||||
resource_name = "Idle"
|
resource_name = "Idle"
|
||||||
tracks/0/type = "value"
|
tracks/0/type = "value"
|
||||||
|
@ -116,9 +111,12 @@ _data = {
|
||||||
"RESET": SubResource("Animation_mp212")
|
"RESET": SubResource("Animation_mp212")
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="Bunny" type="CharacterBody2D" node_paths=PackedStringArray("animation_player", "agent")]
|
[sub_resource type="CircleShape2D" id="CircleShape2D_nil6g"]
|
||||||
|
radius = 11.0
|
||||||
|
|
||||||
|
[node name="Bunny" type="Area2D" node_paths=PackedStringArray("animation_player", "agent")]
|
||||||
collision_layer = 4
|
collision_layer = 4
|
||||||
collision_mask = 15
|
collision_mask = 0
|
||||||
script = ExtResource("1_1kj2b")
|
script = ExtResource("1_1kj2b")
|
||||||
animation_player = NodePath("BunnyAnimator")
|
animation_player = NodePath("BunnyAnimator")
|
||||||
agent = NodePath("NavigationAgent")
|
agent = NodePath("NavigationAgent")
|
||||||
|
@ -129,23 +127,13 @@ texture = ExtResource("2_v8p70")
|
||||||
hframes = 5
|
hframes = 5
|
||||||
vframes = 4
|
vframes = 4
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
|
||||||
shape = SubResource("CircleShape2D_sedmr")
|
|
||||||
|
|
||||||
[node name="NavigationAgent" type="NavigationAgent2D" parent="."]
|
[node name="NavigationAgent" type="NavigationAgent2D" parent="."]
|
||||||
path_metadata_flags = 0
|
path_metadata_flags = 0
|
||||||
|
|
||||||
[node name="Area2D" type="Area2D" parent="."]
|
|
||||||
collision_layer = 64
|
|
||||||
collision_mask = 4
|
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"]
|
|
||||||
shape = SubResource("CircleShape2D_itvjj")
|
|
||||||
|
|
||||||
[node name="BunnyAnimator" type="AnimationPlayer" parent="."]
|
[node name="BunnyAnimator" type="AnimationPlayer" parent="."]
|
||||||
libraries = {
|
libraries = {
|
||||||
"": SubResource("AnimationLibrary_uuf00")
|
"": SubResource("AnimationLibrary_uuf00")
|
||||||
}
|
}
|
||||||
|
|
||||||
[connection signal="body_entered" from="Area2D" to="." method="_on_collision"]
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||||
[connection signal="body_exited" from="Area2D" to="." method="_of_collision"]
|
shape = SubResource("CircleShape2D_nil6g")
|
||||||
|
|
|
@ -1,7 +1,10 @@
|
||||||
[gd_scene load_steps=4 format=3 uid="uid://csxh42o8twxwn"]
|
[gd_scene load_steps=7 format=3 uid="uid://csxh42o8twxwn"]
|
||||||
|
|
||||||
[ext_resource type="Script" path="res://Scripts/WeaponSystem/Projectile.gd" id="1_os652"]
|
[ext_resource type="Script" path="res://Scripts/WeaponSystem/Projectile.gd" id="1_os652"]
|
||||||
[ext_resource type="Texture2D" uid="uid://dlxjdb0tchrps" path="res://Assets/Sprites/crucefix.png" id="2_ibs3t"]
|
[ext_resource type="Texture2D" uid="uid://dlxjdb0tchrps" path="res://Assets/Sprites/crucefix.png" id="2_ibs3t"]
|
||||||
|
[ext_resource type="AudioStream" uid="uid://dornq2kwau6bg" path="res://Assets/SFX/Jesus/Projectile/Throw Variation 1.wav" id="4_11fc8"]
|
||||||
|
[ext_resource type="AudioStream" uid="uid://b2pd7efb2r7g5" path="res://Assets/SFX/Jesus/Projectile/Throw Variation 2.wav" id="5_njike"]
|
||||||
|
[ext_resource type="AudioStream" uid="uid://cqxnclejfbmvb" path="res://Assets/SFX/Jesus/Projectile/Throw Variation 3.wav" id="6_ky3xa"]
|
||||||
|
|
||||||
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_ki5cp"]
|
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_ki5cp"]
|
||||||
radius = 8.57143
|
radius = 8.57143
|
||||||
|
@ -11,6 +14,7 @@ height = 22.8571
|
||||||
collision_layer = 8
|
collision_layer = 8
|
||||||
collision_mask = 5
|
collision_mask = 5
|
||||||
script = ExtResource("1_os652")
|
script = ExtResource("1_os652")
|
||||||
|
audio_pool = [NodePath("Audio Sources/Audio1"), NodePath("Audio Sources/Audio2"), NodePath("Audio Sources/Audio3")]
|
||||||
map_collision_layer = 1
|
map_collision_layer = 1
|
||||||
bunny_collision_layer = 4
|
bunny_collision_layer = 4
|
||||||
|
|
||||||
|
@ -20,4 +24,19 @@ texture = ExtResource("2_ibs3t")
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||||
shape = SubResource("CapsuleShape2D_ki5cp")
|
shape = SubResource("CapsuleShape2D_ki5cp")
|
||||||
|
|
||||||
|
[node name="Audio Sources" type="Node" parent="."]
|
||||||
|
|
||||||
|
[node name="Audio1" type="AudioStreamPlayer" parent="Audio Sources"]
|
||||||
|
stream = ExtResource("4_11fc8")
|
||||||
|
bus = &"SFX"
|
||||||
|
|
||||||
|
[node name="Audio2" type="AudioStreamPlayer" parent="Audio Sources"]
|
||||||
|
stream = ExtResource("5_njike")
|
||||||
|
bus = &"SFX"
|
||||||
|
|
||||||
|
[node name="Audio3" type="AudioStreamPlayer" parent="Audio Sources"]
|
||||||
|
stream = ExtResource("6_ky3xa")
|
||||||
|
bus = &"SFX"
|
||||||
|
|
||||||
|
[connection signal="area_entered" from="." to="." method="_on_area_entered"]
|
||||||
[connection signal="body_entered" from="." to="." method="_on_collision"]
|
[connection signal="body_entered" from="." to="." method="_on_collision"]
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
[gd_scene load_steps=3 format=3 uid="uid://chfp8mm3vwh2e"]
|
|
||||||
|
|
||||||
[ext_resource type="TileSet" uid="uid://bj7uu2180mie3" path="res://Assets/Tileset.tres" id="1_a2htf"]
|
|
||||||
[ext_resource type="Script" path="res://Scripts/MapGenerator.gd" id="2_qvwn8"]
|
|
||||||
|
|
||||||
[node name="Node2D" type="Node2D"]
|
|
||||||
|
|
||||||
[node name="TileMap" type="TileMap" parent="."]
|
|
||||||
tile_set = ExtResource("1_a2htf")
|
|
||||||
cell_quadrant_size = 8
|
|
||||||
collision_visibility_mode = 1
|
|
||||||
format = 2
|
|
||||||
script = ExtResource("2_qvwn8")
|
|
||||||
height = 33
|
|
286
Scenes/Main Menu Music Fix.tscn
Normal file
|
@ -0,0 +1,286 @@
|
||||||
|
[gd_scene load_steps=16 format=3 uid="uid://bnutmwl2vuvqe"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" path="res://Scripts/UI/MainMenuManager.gd" id="1_35kaq"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://c4btepmue6d7p" path="res://Scenes/Game.tscn" id="2_kitxe"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://btxarutbkchmb" path="res://Prefabs/Settings Menu.tscn" id="3_q44re"]
|
||||||
|
[ext_resource type="Theme" uid="uid://b0b3fxesfrpb7" path="res://Assets/UI/Theme.tres" id="4_bajby"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://tjxkew3m4v8m" path="res://Assets/Sprites/UI/Shadow.png" id="5_btlv0"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://ojlfqxj5bilo" path="res://Assets/Sprites/Jesus/jesus_spritesheet.png" id="6_sfeq6"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://dlr823rtwhtq2" path="res://Assets/Sprites/EasterEgg.png" id="7_hhotb"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://c54k7fn4fu42s" path="res://Assets/Sprites/Bunny/good_bunny_spritesheet.png" id="8_kscix"]
|
||||||
|
[ext_resource type="AudioStream" uid="uid://c6nf5s6xy2uii" path="res://Assets/Music/omw-to-beat-the-big-bad.wav" id="9_gyelf"]
|
||||||
|
|
||||||
|
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_5uvie"]
|
||||||
|
bg_color = Color(0.439216, 0.631373, 0.537255, 1)
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_iq7o3"]
|
||||||
|
resource_name = "Walk"
|
||||||
|
length = 0.8
|
||||||
|
loop_mode = 1
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath(".:frame")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7),
|
||||||
|
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [0, 1, 2, 3, 4, 5, 6, 7]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="AnimationLibrary" id="AnimationLibrary_xufdy"]
|
||||||
|
_data = {
|
||||||
|
"Autostart": SubResource("Animation_iq7o3")
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_53kbk"]
|
||||||
|
resource_name = "Autostart"
|
||||||
|
length = 0.5
|
||||||
|
loop_mode = 1
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath(".:frame")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4),
|
||||||
|
"transitions": PackedFloat32Array(1, 1, 1, 1, 1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [0, 1, 2, 3, 4]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="AnimationLibrary" id="AnimationLibrary_5tgwk"]
|
||||||
|
_data = {
|
||||||
|
"Autostart": SubResource("Animation_53kbk")
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_h5db4"]
|
||||||
|
bg_color = Color(0, 0, 0, 0.313726)
|
||||||
|
|
||||||
|
[node name="MainMenu" type="Control" node_paths=PackedStringArray("default_focus", "music_player")]
|
||||||
|
layout_mode = 3
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
size_flags_horizontal = 6
|
||||||
|
size_flags_vertical = 3
|
||||||
|
script = ExtResource("1_35kaq")
|
||||||
|
game_scene = ExtResource("2_kitxe")
|
||||||
|
settings_scene = ExtResource("3_q44re")
|
||||||
|
default_focus = NodePath("VBoxContainer/MarginBox2/ButtonsVbox/PlayButton")
|
||||||
|
autostart_animations = Array[NodePath]([NodePath("Decorations/Left Decor/Jesus/AnimationPlayer"), NodePath("Decorations/Right Decor/GoodBunny/AnimationPlayer")])
|
||||||
|
music_player = NodePath("MusicPlayer")
|
||||||
|
|
||||||
|
[node name="Panel" type="Panel" parent="."]
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
theme = ExtResource("4_bajby")
|
||||||
|
theme_override_styles/panel = SubResource("StyleBoxFlat_5uvie")
|
||||||
|
|
||||||
|
[node name="Decorations" type="Control" parent="."]
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
|
||||||
|
[node name="Left Decor" type="CenterContainer" parent="Decorations"]
|
||||||
|
custom_minimum_size = Vector2(576, 0)
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 9
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_vertical = 2
|
||||||
|
|
||||||
|
[node name="Shadow" type="Sprite2D" parent="Decorations/Left Decor"]
|
||||||
|
position = Vector2(272, 686)
|
||||||
|
scale = Vector2(10, 10)
|
||||||
|
texture = ExtResource("5_btlv0")
|
||||||
|
|
||||||
|
[node name="Jesus" type="Sprite2D" parent="Decorations/Left Decor"]
|
||||||
|
position = Vector2(279, 408)
|
||||||
|
scale = Vector2(10, 10)
|
||||||
|
texture = ExtResource("6_sfeq6")
|
||||||
|
hframes = 8
|
||||||
|
vframes = 4
|
||||||
|
|
||||||
|
[node name="AnimationPlayer" type="AnimationPlayer" parent="Decorations/Left Decor/Jesus"]
|
||||||
|
libraries = {
|
||||||
|
"": SubResource("AnimationLibrary_xufdy")
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="EasterEgg" type="Sprite2D" parent="Decorations/Left Decor"]
|
||||||
|
position = Vector2(142, 555)
|
||||||
|
scale = Vector2(10, 10)
|
||||||
|
texture = ExtResource("7_hhotb")
|
||||||
|
hframes = 6
|
||||||
|
|
||||||
|
[node name="EasterEgg2" type="Sprite2D" parent="Decorations/Left Decor"]
|
||||||
|
position = Vector2(450, 572)
|
||||||
|
rotation = 0.633555
|
||||||
|
scale = Vector2(10, 10)
|
||||||
|
texture = ExtResource("7_hhotb")
|
||||||
|
hframes = 6
|
||||||
|
frame = 4
|
||||||
|
|
||||||
|
[node name="Right Decor" type="CenterContainer" parent="Decorations"]
|
||||||
|
custom_minimum_size = Vector2(576, 0)
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 11
|
||||||
|
anchor_left = 1.0
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 0
|
||||||
|
grow_vertical = 2
|
||||||
|
|
||||||
|
[node name="Shadow" type="Sprite2D" parent="Decorations/Right Decor"]
|
||||||
|
position = Vector2(300, 681)
|
||||||
|
scale = Vector2(10, 10)
|
||||||
|
texture = ExtResource("5_btlv0")
|
||||||
|
|
||||||
|
[node name="EasterEgg" type="Sprite2D" parent="Decorations/Right Decor"]
|
||||||
|
position = Vector2(416, 537)
|
||||||
|
rotation = 0.289725
|
||||||
|
scale = Vector2(10, 10)
|
||||||
|
texture = ExtResource("7_hhotb")
|
||||||
|
hframes = 6
|
||||||
|
frame = 2
|
||||||
|
|
||||||
|
[node name="GoodBunny" type="Sprite2D" parent="Decorations/Right Decor"]
|
||||||
|
position = Vector2(235, 579)
|
||||||
|
scale = Vector2(10, 10)
|
||||||
|
texture = ExtResource("8_kscix")
|
||||||
|
hframes = 5
|
||||||
|
vframes = 4
|
||||||
|
|
||||||
|
[node name="AnimationPlayer" type="AnimationPlayer" parent="Decorations/Right Decor/GoodBunny"]
|
||||||
|
libraries = {
|
||||||
|
"": SubResource("AnimationLibrary_5tgwk")
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="Panel" type="Panel" parent="Decorations"]
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
theme_override_styles/panel = SubResource("StyleBoxFlat_h5db4")
|
||||||
|
|
||||||
|
[node name="VBoxContainer" type="VBoxContainer" parent="."]
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
theme_override_constants/separation = 0
|
||||||
|
|
||||||
|
[node name="MarginContainer" type="MarginContainer" parent="VBoxContainer"]
|
||||||
|
layout_mode = 2
|
||||||
|
theme_override_constants/margin_left = 32
|
||||||
|
theme_override_constants/margin_top = 32
|
||||||
|
theme_override_constants/margin_right = 32
|
||||||
|
theme_override_constants/margin_bottom = 32
|
||||||
|
|
||||||
|
[node name="Label" type="Label" parent="VBoxContainer/MarginContainer"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 5
|
||||||
|
theme_override_font_sizes/font_size = 96
|
||||||
|
text = "Happy Easter Game Thing"
|
||||||
|
horizontal_alignment = 1
|
||||||
|
autowrap_mode = 2
|
||||||
|
|
||||||
|
[node name="MarginBox2" type="MarginContainer" parent="VBoxContainer"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_vertical = 3
|
||||||
|
theme_override_constants/margin_left = 32
|
||||||
|
theme_override_constants/margin_top = 32
|
||||||
|
theme_override_constants/margin_right = 32
|
||||||
|
theme_override_constants/margin_bottom = 32
|
||||||
|
|
||||||
|
[node name="ButtonsVbox" type="VBoxContainer" parent="VBoxContainer/MarginBox2"]
|
||||||
|
custom_minimum_size = Vector2(0, 495)
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 4
|
||||||
|
theme = ExtResource("4_bajby")
|
||||||
|
theme_override_constants/separation = 8
|
||||||
|
alignment = 1
|
||||||
|
|
||||||
|
[node name="Spacer" type="MarginContainer" parent="VBoxContainer/MarginBox2/ButtonsVbox"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_vertical = 3
|
||||||
|
|
||||||
|
[node name="PlayButton" type="Button" parent="VBoxContainer/MarginBox2/ButtonsVbox"]
|
||||||
|
custom_minimum_size = Vector2(0, 40)
|
||||||
|
layout_mode = 2
|
||||||
|
focus_neighbor_left = NodePath("../QuitButton")
|
||||||
|
focus_neighbor_top = NodePath("../QuitButton")
|
||||||
|
focus_neighbor_right = NodePath("../SettingsButton")
|
||||||
|
focus_neighbor_bottom = NodePath("../SettingsButton")
|
||||||
|
focus_next = NodePath("../SettingsButton")
|
||||||
|
focus_previous = NodePath("../QuitButton")
|
||||||
|
theme = ExtResource("4_bajby")
|
||||||
|
theme_override_font_sizes/font_size = 64
|
||||||
|
text = "Play"
|
||||||
|
|
||||||
|
[node name="SettingsButton" type="Button" parent="VBoxContainer/MarginBox2/ButtonsVbox"]
|
||||||
|
custom_minimum_size = Vector2(0, 40)
|
||||||
|
layout_mode = 2
|
||||||
|
focus_neighbor_left = NodePath("../PlayButton")
|
||||||
|
focus_neighbor_top = NodePath("../PlayButton")
|
||||||
|
focus_neighbor_right = NodePath("../AboutButton")
|
||||||
|
focus_neighbor_bottom = NodePath("../AboutButton")
|
||||||
|
focus_next = NodePath("../AboutButton")
|
||||||
|
focus_previous = NodePath("../PlayButton")
|
||||||
|
theme = ExtResource("4_bajby")
|
||||||
|
theme_override_font_sizes/font_size = 64
|
||||||
|
text = "Settings"
|
||||||
|
|
||||||
|
[node name="AboutButton" type="Button" parent="VBoxContainer/MarginBox2/ButtonsVbox"]
|
||||||
|
custom_minimum_size = Vector2(0, 40)
|
||||||
|
layout_mode = 2
|
||||||
|
focus_neighbor_left = NodePath("../SettingsButton")
|
||||||
|
focus_neighbor_top = NodePath("../SettingsButton")
|
||||||
|
focus_neighbor_right = NodePath("../QuitButton")
|
||||||
|
focus_neighbor_bottom = NodePath("../QuitButton")
|
||||||
|
focus_next = NodePath("../QuitButton")
|
||||||
|
focus_previous = NodePath("../SettingsButton")
|
||||||
|
theme = ExtResource("4_bajby")
|
||||||
|
theme_override_font_sizes/font_size = 64
|
||||||
|
text = "About"
|
||||||
|
|
||||||
|
[node name="Spacer2" type="MarginContainer" parent="VBoxContainer/MarginBox2/ButtonsVbox"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_vertical = 3
|
||||||
|
|
||||||
|
[node name="QuitButton" type="Button" parent="VBoxContainer/MarginBox2/ButtonsVbox"]
|
||||||
|
custom_minimum_size = Vector2(0, 40)
|
||||||
|
layout_mode = 2
|
||||||
|
focus_neighbor_left = NodePath("../AboutButton")
|
||||||
|
focus_neighbor_top = NodePath("../AboutButton")
|
||||||
|
focus_neighbor_right = NodePath("../PlayButton")
|
||||||
|
focus_neighbor_bottom = NodePath("../PlayButton")
|
||||||
|
focus_next = NodePath("../PlayButton")
|
||||||
|
focus_previous = NodePath("../AboutButton")
|
||||||
|
theme = ExtResource("4_bajby")
|
||||||
|
theme_override_font_sizes/font_size = 64
|
||||||
|
text = "Quit"
|
||||||
|
|
||||||
|
[node name="MusicPlayer" type="AudioStreamPlayer" parent="."]
|
||||||
|
stream = ExtResource("9_gyelf")
|
||||||
|
bus = &"Music"
|
||||||
|
|
||||||
|
[connection signal="pressed" from="VBoxContainer/MarginBox2/ButtonsVbox/PlayButton" to="." method="_on_play_button_pressed"]
|
||||||
|
[connection signal="pressed" from="VBoxContainer/MarginBox2/ButtonsVbox/SettingsButton" to="." method="_on_settings_button_pressed"]
|
||||||
|
[connection signal="pressed" from="VBoxContainer/MarginBox2/ButtonsVbox/AboutButton" to="." method="_on_about_button_pressed"]
|
||||||
|
[connection signal="pressed" from="VBoxContainer/MarginBox2/ButtonsVbox/QuitButton" to="." method="_on_quit_button_pressed"]
|
|
@ -2,8 +2,8 @@
|
||||||
|
|
||||||
[ext_resource type="Script" path="res://Scripts/UI/MainMenuManager.gd" id="1_qepq0"]
|
[ext_resource type="Script" path="res://Scripts/UI/MainMenuManager.gd" id="1_qepq0"]
|
||||||
[ext_resource type="PackedScene" uid="uid://c4btepmue6d7p" path="res://Scenes/Game.tscn" id="2_28004"]
|
[ext_resource type="PackedScene" uid="uid://c4btepmue6d7p" path="res://Scenes/Game.tscn" id="2_28004"]
|
||||||
[ext_resource type="PackedScene" uid="uid://cbfcolm6mjolp" path="res://Prefabs/Settings Menu.tscn" id="3_r3r61"]
|
[ext_resource type="PackedScene" uid="uid://btxarutbkchmb" path="res://Prefabs/Settings Menu.tscn" id="3_r3r61"]
|
||||||
[ext_resource type="Theme" uid="uid://babphdknr2kkd" path="res://Assets/UI/Theme.tres" id="4_bmt8e"]
|
[ext_resource type="Theme" uid="uid://b0b3fxesfrpb7" path="res://Assets/UI/Theme.tres" id="4_bmt8e"]
|
||||||
[ext_resource type="Texture2D" uid="uid://tjxkew3m4v8m" path="res://Assets/Sprites/UI/Shadow.png" id="5_wt601"]
|
[ext_resource type="Texture2D" uid="uid://tjxkew3m4v8m" path="res://Assets/Sprites/UI/Shadow.png" id="5_wt601"]
|
||||||
[ext_resource type="Texture2D" uid="uid://ojlfqxj5bilo" path="res://Assets/Sprites/Jesus/jesus_spritesheet.png" id="7_g28i1"]
|
[ext_resource type="Texture2D" uid="uid://ojlfqxj5bilo" path="res://Assets/Sprites/Jesus/jesus_spritesheet.png" id="7_g28i1"]
|
||||||
[ext_resource type="Texture2D" uid="uid://dlr823rtwhtq2" path="res://Assets/Sprites/EasterEgg.png" id="7_wokip"]
|
[ext_resource type="Texture2D" uid="uid://dlr823rtwhtq2" path="res://Assets/Sprites/EasterEgg.png" id="7_wokip"]
|
||||||
|
|
|
@ -1,154 +0,0 @@
|
||||||
[gd_scene load_steps=12 format=3 uid="uid://ccgpsim5nfxd6"]
|
|
||||||
|
|
||||||
[ext_resource type="TileSet" uid="uid://bj7uu2180mie3" path="res://Assets/Tileset.tres" id="1_wkp62"]
|
|
||||||
[ext_resource type="Script" path="res://Scripts/PlayerController.gd" id="1_x3102"]
|
|
||||||
[ext_resource type="Script" path="res://Scripts/MapGenerator.gd" id="4_8st0q"]
|
|
||||||
[ext_resource type="Texture2D" uid="uid://bl7vfn05ul1vu" path="res://Assets/Sprites/Jesus/Jesus Spritesheet.png" id="4_e5cec"]
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_kdxam"]
|
|
||||||
resource_name = "Idle"
|
|
||||||
tracks/0/type = "value"
|
|
||||||
tracks/0/imported = false
|
|
||||||
tracks/0/enabled = true
|
|
||||||
tracks/0/path = NodePath("Player Sprite:frame")
|
|
||||||
tracks/0/interp = 1
|
|
||||||
tracks/0/loop_wrap = true
|
|
||||||
tracks/0/keys = {
|
|
||||||
"times": PackedFloat32Array(0),
|
|
||||||
"transitions": PackedFloat32Array(1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [0]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_dwpep"]
|
|
||||||
resource_name = "MoveDown"
|
|
||||||
length = 0.8
|
|
||||||
loop_mode = 1
|
|
||||||
tracks/0/type = "value"
|
|
||||||
tracks/0/imported = false
|
|
||||||
tracks/0/enabled = true
|
|
||||||
tracks/0/path = NodePath("Player Sprite:frame")
|
|
||||||
tracks/0/interp = 1
|
|
||||||
tracks/0/loop_wrap = false
|
|
||||||
tracks/0/keys = {
|
|
||||||
"times": PackedFloat32Array(0, 0.2, 0.4, 0.6),
|
|
||||||
"transitions": PackedFloat32Array(1, 1, 1, 1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [0, 1, 2, 3]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_2jvl5"]
|
|
||||||
resource_name = "MoveLeft"
|
|
||||||
length = 0.8
|
|
||||||
loop_mode = 1
|
|
||||||
tracks/0/type = "value"
|
|
||||||
tracks/0/imported = false
|
|
||||||
tracks/0/enabled = true
|
|
||||||
tracks/0/path = NodePath("Player Sprite:frame")
|
|
||||||
tracks/0/interp = 1
|
|
||||||
tracks/0/loop_wrap = true
|
|
||||||
tracks/0/keys = {
|
|
||||||
"times": PackedFloat32Array(0, 0.2, 0.4, 0.6),
|
|
||||||
"transitions": PackedFloat32Array(1, 1, 1, 1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [12, 13, 14, 15]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_4ig1u"]
|
|
||||||
resource_name = "MoveRight"
|
|
||||||
length = 0.8
|
|
||||||
loop_mode = 1
|
|
||||||
tracks/0/type = "value"
|
|
||||||
tracks/0/imported = false
|
|
||||||
tracks/0/enabled = true
|
|
||||||
tracks/0/path = NodePath("Player Sprite:frame")
|
|
||||||
tracks/0/interp = 1
|
|
||||||
tracks/0/loop_wrap = true
|
|
||||||
tracks/0/keys = {
|
|
||||||
"times": PackedFloat32Array(0, 0.2, 0.4, 0.6),
|
|
||||||
"transitions": PackedFloat32Array(1, 1, 1, 1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [4, 5, 6, 7]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_pswkh"]
|
|
||||||
resource_name = "MoveUp"
|
|
||||||
length = 0.8
|
|
||||||
loop_mode = 1
|
|
||||||
tracks/0/type = "value"
|
|
||||||
tracks/0/imported = false
|
|
||||||
tracks/0/enabled = true
|
|
||||||
tracks/0/path = NodePath("Player Sprite:frame")
|
|
||||||
tracks/0/interp = 1
|
|
||||||
tracks/0/loop_wrap = true
|
|
||||||
tracks/0/keys = {
|
|
||||||
"times": PackedFloat32Array(0, 0.2, 0.4, 0.6),
|
|
||||||
"transitions": PackedFloat32Array(1, 1, 1, 1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [8, 9, 10, 11]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_o3hln"]
|
|
||||||
length = 0.001
|
|
||||||
tracks/0/type = "value"
|
|
||||||
tracks/0/imported = false
|
|
||||||
tracks/0/enabled = true
|
|
||||||
tracks/0/path = NodePath("Player Sprite:frame")
|
|
||||||
tracks/0/interp = 1
|
|
||||||
tracks/0/loop_wrap = true
|
|
||||||
tracks/0/keys = {
|
|
||||||
"times": PackedFloat32Array(0),
|
|
||||||
"transitions": PackedFloat32Array(1),
|
|
||||||
"update": 1,
|
|
||||||
"values": [0]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_bi1h3"]
|
|
||||||
_data = {
|
|
||||||
"Idle": SubResource("Animation_kdxam"),
|
|
||||||
"MoveDown": SubResource("Animation_dwpep"),
|
|
||||||
"MoveLeft": SubResource("Animation_2jvl5"),
|
|
||||||
"MoveRight": SubResource("Animation_4ig1u"),
|
|
||||||
"MoveUp": SubResource("Animation_pswkh"),
|
|
||||||
"RESET": SubResource("Animation_o3hln")
|
|
||||||
}
|
|
||||||
|
|
||||||
[node name="Player Movement" type="Node2D"]
|
|
||||||
|
|
||||||
[node name="Map Generator" type="TileMap" parent="."]
|
|
||||||
tile_set = ExtResource("1_wkp62")
|
|
||||||
cell_quadrant_size = 32
|
|
||||||
collision_visibility_mode = 1
|
|
||||||
format = 2
|
|
||||||
script = ExtResource("4_8st0q")
|
|
||||||
start_area_size = 3
|
|
||||||
start_area_corner_size = 1
|
|
||||||
|
|
||||||
[node name="Player" type="CharacterBody2D" parent="." node_paths=PackedStringArray("animation_player")]
|
|
||||||
position = Vector2(960, 512)
|
|
||||||
scale = Vector2(0.5, 0.5)
|
|
||||||
collision_layer = 0
|
|
||||||
script = ExtResource("1_x3102")
|
|
||||||
speed = 60
|
|
||||||
animation_player = NodePath("Player Animator")
|
|
||||||
|
|
||||||
[node name="Player Sprite" type="Sprite2D" parent="Player"]
|
|
||||||
position = Vector2(0, -20)
|
|
||||||
texture = ExtResource("4_e5cec")
|
|
||||||
hframes = 4
|
|
||||||
vframes = 4
|
|
||||||
|
|
||||||
[node name="Player Collider" type="CollisionPolygon2D" parent="Player"]
|
|
||||||
polygon = PackedVector2Array(12, 32, -16, 32, -16, -24, 12, -24)
|
|
||||||
|
|
||||||
[node name="Player Camera" type="Camera2D" parent="Player"]
|
|
||||||
zoom = Vector2(3, 3)
|
|
||||||
position_smoothing_enabled = true
|
|
||||||
drag_horizontal_enabled = true
|
|
||||||
drag_vertical_enabled = true
|
|
||||||
editor_draw_drag_margin = true
|
|
||||||
|
|
||||||
[node name="Player Animator" type="AnimationPlayer" parent="Player"]
|
|
||||||
libraries = {
|
|
||||||
"": SubResource("AnimationLibrary_bi1h3")
|
|
||||||
}
|
|
|
@ -1,53 +1,75 @@
|
||||||
extends CharacterBody2D
|
extends Node2D
|
||||||
class_name Bunny
|
class_name Bunny
|
||||||
|
|
||||||
@export var animation_player : AnimationPlayer
|
@export var animation_player : AnimationPlayer
|
||||||
@export var min_distance_to_player := 80.0
|
@export var min_distance_to_player := 20.0
|
||||||
@export var max_distance_to_player := 800.0
|
@export var max_distance_to_player := 500.0
|
||||||
@export var agent : NavigationAgent2D
|
@export var agent : NavigationAgent2D
|
||||||
@export var speed := 100.0
|
@export var speed := 3.0
|
||||||
|
|
||||||
var health : int
|
var health : int
|
||||||
var team : int
|
var team : int
|
||||||
var player : Node2D
|
var player : Node2D
|
||||||
|
|
||||||
var on_death_callbacks : Array
|
var on_death_callbacks : Array
|
||||||
|
var move_velocity : Vector2
|
||||||
|
|
||||||
|
var next_location : Vector2
|
||||||
|
var randomized_next_location : Vector2
|
||||||
var dir : Vector2
|
var dir : Vector2
|
||||||
var spread_time : float
|
|
||||||
var current_time : float
|
var time_since_got_player := 100.0
|
||||||
var collisions : int
|
var time_since_got_move_location := 100.0
|
||||||
|
var last_player_velocity := 0.0
|
||||||
|
var last_target_position : Vector2
|
||||||
|
|
||||||
|
var max_pos_check_time := 0.5
|
||||||
|
var max_pos_check_time_inactive_scalar := 10.0
|
||||||
|
var max_get_move_location_time := 0.125
|
||||||
|
|
||||||
|
var random_goal_spread_factor := 2.5
|
||||||
|
var random_move_location_spread_factor := 8.0
|
||||||
|
var random_angle_change := deg_to_rad(4.0)
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
seed(int(str(self)))
|
pass
|
||||||
spread_time = randf() * 2 + 0.1
|
|
||||||
current_time = spread_time
|
|
||||||
|
|
||||||
func _physics_process(delta):
|
func _physics_process(delta):
|
||||||
current_time -= delta
|
randomize()
|
||||||
if player != null and self.global_position.distance_to(player.global_position) < max_distance_to_player and collisions <= 3:
|
|
||||||
if current_time <= 0:
|
if abs(player.velocity.length() - last_player_velocity) > 100.0:
|
||||||
current_time = spread_time
|
time_since_got_player = max_pos_check_time
|
||||||
agent.target_position = player.global_position
|
if time_since_got_player >= max_pos_check_time and player.velocity.length() > 0.1:
|
||||||
if min_distance_to_player and agent.is_target_reachable():
|
time_since_got_player = randf() * max_pos_check_time * 0.5
|
||||||
var next_location = agent.get_next_path_position() + Vector2(randf() - 0.5 * 2, randf() - 0.5 * 2)
|
update_target_pos()
|
||||||
dir = self.global_position.direction_to(next_location).normalized()
|
if time_since_got_player >= max_pos_check_time * max_pos_check_time_inactive_scalar and player.velocity.length() < 0.1:
|
||||||
if self.global_position.distance_to(player.global_position) > min_distance_to_player:
|
time_since_got_player = -(randf() * max_pos_check_time * 0.5)
|
||||||
self.velocity = dir * delta * 60 * speed
|
update_target_pos()
|
||||||
|
if self.global_position.distance_to(player.global_position) < max_distance_to_player and time_since_got_move_location > max_get_move_location_time:
|
||||||
|
time_since_got_move_location = 0
|
||||||
|
if agent.is_target_reachable():
|
||||||
|
next_location = agent.get_next_path_position()
|
||||||
|
randomized_next_location = next_location + Vector2(randf() - 0.5, randf() - 0.5 ) * 2 * random_move_location_spread_factor
|
||||||
|
dir = self.global_position.direction_to(randomized_next_location).normalized().rotated((randf() - 0.5) * 2 * random_angle_change)
|
||||||
|
if self.global_position.distance_to(player.global_position) >= min_distance_to_player:
|
||||||
|
move_velocity = dir * delta * 60 * speed
|
||||||
update_animation()
|
update_animation()
|
||||||
if delta > 0.5:
|
if self.global_position.distance_to(next_location) < move_velocity.length():
|
||||||
print(delta)
|
self.global_position = next_location
|
||||||
move_and_slide()
|
time_since_got_player = 10.0
|
||||||
|
time_since_got_move_location = 10.0
|
||||||
|
else:
|
||||||
|
self.translate(move_velocity)
|
||||||
else:
|
else:
|
||||||
animation_player.stop()
|
animation_player.stop()
|
||||||
|
time_since_got_player += delta
|
||||||
|
time_since_got_move_location += delta
|
||||||
|
last_player_velocity = player.velocity.length()
|
||||||
|
last_target_position = agent.target_position
|
||||||
pass
|
pass
|
||||||
|
|
||||||
func _on_collision(body):
|
func update_target_pos():
|
||||||
if body != self: collisions += 1
|
agent.target_position = Vector2(player.global_position) + Vector2(randf() - 0.5 , randf() - 0.5) * 2 * random_goal_spread_factor
|
||||||
pass
|
|
||||||
|
|
||||||
func _of_collision(body):
|
|
||||||
if body != self: collisions-= 1
|
|
||||||
pass
|
pass
|
||||||
|
|
||||||
func damage(damage_amount : int):
|
func damage(damage_amount : int):
|
||||||
|
@ -69,13 +91,13 @@ func sub_on_death(callback : Callable):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
func update_animation():
|
func update_animation():
|
||||||
match self.velocity:
|
match self.move_velocity:
|
||||||
Vector2.ZERO: animation_player.play("Idle")
|
Vector2.ZERO: animation_player.play("Idle")
|
||||||
_:
|
_:
|
||||||
var left_dot = Vector2.LEFT.dot(self.velocity)
|
var left_dot = Vector2.LEFT.dot(self.move_velocity)
|
||||||
var right_dot = Vector2.RIGHT.dot(self.velocity)
|
var right_dot = Vector2.RIGHT.dot(self.move_velocity)
|
||||||
var up_dot = Vector2.UP.dot(self.velocity)
|
var up_dot = Vector2.UP.dot(self.move_velocity)
|
||||||
var down_dot = Vector2.DOWN.dot(self.velocity)
|
var down_dot = Vector2.DOWN.dot(self.move_velocity)
|
||||||
|
|
||||||
var max_dot = maxf(left_dot, maxf(right_dot, maxf(up_dot, down_dot)))
|
var max_dot = maxf(left_dot, maxf(right_dot, maxf(up_dot, down_dot)))
|
||||||
match max_dot:
|
match max_dot:
|
||||||
|
|
|
@ -17,7 +17,7 @@ func _process(_delta):
|
||||||
if bunnys.size() == 0 and !in_wave_gen:
|
if bunnys.size() == 0 and !in_wave_gen:
|
||||||
in_wave_gen = true
|
in_wave_gen = true
|
||||||
wave += 1
|
wave += 1
|
||||||
bunnys = await bunny_generator.spawn_batched_wave(5.0, 0.25, gen_data.free_tiles.duplicate(), TEAM.EVIL, wave * 10.0, 3)
|
bunnys = await bunny_generator.spawn_batched_wave(25, 0.25, gen_data.free_tiles.duplicate(), TEAM.EVIL, wave * 250, 3)
|
||||||
for bunny in bunnys:
|
for bunny in bunnys:
|
||||||
bunny.sub_on_death(func(bunny): bunnys.erase(bunny))
|
bunny.sub_on_death(func(bunny): bunnys.erase(bunny))
|
||||||
bunny.sub_on_death(func(bunny): bunny.queue_free())
|
bunny.sub_on_death(func(bunny): bunny.queue_free())
|
||||||
|
|
|
@ -2,20 +2,14 @@ extends Node
|
||||||
|
|
||||||
const SAVE_FILE : String = "user://SAVEFILE.save"
|
const SAVE_FILE : String = "user://SAVEFILE.save"
|
||||||
var game_data = {}
|
var game_data = {}
|
||||||
|
var default_game_data = {
|
||||||
func _ready():
|
|
||||||
load_data()
|
|
||||||
|
|
||||||
func load_data():
|
|
||||||
var file = FileAccess.open(SAVE_FILE, FileAccess.READ)
|
|
||||||
if file == null:
|
|
||||||
game_data = {
|
|
||||||
"display_mode": 0,
|
"display_mode": 0,
|
||||||
"vsync_on": false,
|
"vsync_on": false,
|
||||||
"current_resolution_index": 0,
|
"current_resolution_index": 0,
|
||||||
"master_volume": 0,
|
"master_volume": 0,
|
||||||
"music_volume": 0,
|
"music_volume": 0,
|
||||||
"sfx_volume": 0,
|
"sfx_volume": 0,
|
||||||
|
"controls": {
|
||||||
"move_up": KEY_W,
|
"move_up": KEY_W,
|
||||||
"move_left": KEY_A,
|
"move_left": KEY_A,
|
||||||
"move_down": KEY_S,
|
"move_down": KEY_S,
|
||||||
|
@ -31,6 +25,15 @@ func load_data():
|
||||||
"aim_down_controller": "j" + str(JOY_AXIS_RIGHT_Y) + "/1.00",
|
"aim_down_controller": "j" + str(JOY_AXIS_RIGHT_Y) + "/1.00",
|
||||||
"aim_right_controller": "j" + str(JOY_AXIS_RIGHT_X) + "/1.00",
|
"aim_right_controller": "j" + str(JOY_AXIS_RIGHT_X) + "/1.00",
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
load_data()
|
||||||
|
|
||||||
|
func load_data():
|
||||||
|
var file = FileAccess.open(SAVE_FILE, FileAccess.READ)
|
||||||
|
if file == null:
|
||||||
|
game_data = default_game_data
|
||||||
save_data()
|
save_data()
|
||||||
else:
|
else:
|
||||||
game_data = file.get_var()
|
game_data = file.get_var()
|
||||||
|
|
|
@ -81,10 +81,38 @@ func update_sfx_volume(vol : int) -> void:
|
||||||
# Controls
|
# Controls
|
||||||
func set_controls_from_save_file() -> void:
|
func set_controls_from_save_file() -> void:
|
||||||
for remappable_input_action in remappable_input_actions:
|
for remappable_input_action in remappable_input_actions:
|
||||||
var action = Save.game_data.keys().find(remappable_input_action)
|
var action = Save.game_data.controls.keys().find(remappable_input_action)
|
||||||
for key in InputMap.action_get_events(remappable_input_action):
|
for key in InputMap.action_get_events(remappable_input_action):
|
||||||
InputMap.action_erase_event(remappable_input_action, key)
|
InputMap.action_erase_event(remappable_input_action, key)
|
||||||
var binding = Save.game_data.values()[action]
|
var binding = Save.game_data.controls.values()[action]
|
||||||
|
var control_event
|
||||||
|
match str(binding)[0]:
|
||||||
|
"m":
|
||||||
|
binding = int(binding.right(binding.length()-1))
|
||||||
|
control_event = InputEventMouseButton.new()
|
||||||
|
control_event.button_index = binding
|
||||||
|
"b":
|
||||||
|
binding = int(binding.right(binding.length()-1))
|
||||||
|
control_event = InputEventJoypadButton.new()
|
||||||
|
control_event.button_index = binding
|
||||||
|
"j":
|
||||||
|
binding = binding.right(binding.length()-1)
|
||||||
|
binding = binding.split("/")
|
||||||
|
control_event = InputEventJoypadMotion.new()
|
||||||
|
control_event.axis = int(binding[0])
|
||||||
|
control_event.axis_value = float(binding[1])
|
||||||
|
_:
|
||||||
|
control_event = InputEventKey.new()
|
||||||
|
control_event.set_keycode(binding)
|
||||||
|
InputMap.action_add_event(remappable_input_action, control_event)
|
||||||
|
pass
|
||||||
|
|
||||||
|
func reset_controls_to_save_file() -> void:
|
||||||
|
for remappable_input_action in remappable_input_actions:
|
||||||
|
var action = Save.default_game_data.controls.keys().find(remappable_input_action)
|
||||||
|
for key in InputMap.action_get_events(remappable_input_action):
|
||||||
|
InputMap.action_erase_event(remappable_input_action, key)
|
||||||
|
var binding = Save.default_game_data.controls.values()[action]
|
||||||
var control_event
|
var control_event
|
||||||
match str(binding)[0]:
|
match str(binding)[0]:
|
||||||
"m":
|
"m":
|
||||||
|
|
|
@ -4,6 +4,7 @@ extends Node
|
||||||
@export var settings_scene : Resource
|
@export var settings_scene : Resource
|
||||||
@export var default_focus : Control
|
@export var default_focus : Control
|
||||||
@export var autostart_animations : Array[NodePath]
|
@export var autostart_animations : Array[NodePath]
|
||||||
|
@export var music_player : AudioStreamPlayer
|
||||||
|
|
||||||
# Engine Callbackss
|
# Engine Callbackss
|
||||||
func _ready():
|
func _ready():
|
||||||
|
@ -18,6 +19,7 @@ func _ready():
|
||||||
default_focus.grab_focus()
|
default_focus.grab_focus()
|
||||||
for animation in autostart_animations:
|
for animation in autostart_animations:
|
||||||
(get_node(animation) as AnimationPlayer).play("Autostart")
|
(get_node(animation) as AnimationPlayer).play("Autostart")
|
||||||
|
music_player.play(0.0)
|
||||||
pass
|
pass
|
||||||
|
|
||||||
func _on_play_button_pressed():
|
func _on_play_button_pressed():
|
||||||
|
|
|
@ -4,7 +4,8 @@ extends Button
|
||||||
@export var remap_controller : Node
|
@export var remap_controller : Node
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
display_key()
|
self.add_to_group("RemappableButton")
|
||||||
|
self.display_key()
|
||||||
|
|
||||||
func display_key ():
|
func display_key ():
|
||||||
self.text = "%s" % InputMap.action_get_events(input_action_name)[0].as_text()
|
self.text = "%s" % InputMap.action_get_events(input_action_name)[0].as_text()
|
||||||
|
|
|
@ -2,6 +2,7 @@ extends Control
|
||||||
class_name RemapController
|
class_name RemapController
|
||||||
|
|
||||||
@export var min_time_between_remaps := 0.4
|
@export var min_time_between_remaps := 0.4
|
||||||
|
@export var remap_buttons_holder : VBoxContainer
|
||||||
|
|
||||||
var remap_button : Button
|
var remap_button : Button
|
||||||
var remap_action : String
|
var remap_action : String
|
||||||
|
@ -52,14 +53,14 @@ func start_remap(button : Button, action : String):
|
||||||
func remap_key(event):
|
func remap_key(event):
|
||||||
match str(event.get_class()):
|
match str(event.get_class()):
|
||||||
"InputEventJoypadButton":
|
"InputEventJoypadButton":
|
||||||
Save.game_data["%s" % [remap_action]] = "b" + str(event.button_index)
|
Save.game_data.controls["%s" % [remap_action]] = "b" + str(event.button_index)
|
||||||
"InputEventJoypadMotion":
|
"InputEventJoypadMotion":
|
||||||
if abs(event.axis_value) < 0.5: return
|
if abs(event.axis_value) < 0.5: return
|
||||||
Save.game_data["%s" % [remap_action]] = "j" + str(event.axis) + str("/1.00" if event.axis_value > 0 else "/-1.00")
|
Save.game_data.controls["%s" % [remap_action]] = "j" + str(event.axis) + str("/1.00" if event.axis_value > 0 else "/-1.00")
|
||||||
"InputEventMouseButton":
|
"InputEventMouseButton":
|
||||||
Save.game_data["%s" % [remap_action]] = "m" + str(event.button_index)
|
Save.game_data.controls["%s" % [remap_action]] = "m" + str(event.button_index)
|
||||||
"InputEventKey":
|
"InputEventKey":
|
||||||
Save.game_data["%s" % [remap_action]] = event.keycode
|
Save.game_data.controls["%s" % [remap_action]] = event.keycode
|
||||||
set_process_unhandled_key_input(false)
|
set_process_unhandled_key_input(false)
|
||||||
for key in InputMap.action_get_events(remap_action):
|
for key in InputMap.action_get_events(remap_action):
|
||||||
InputMap.action_erase_event(remap_action, key)
|
InputMap.action_erase_event(remap_action, key)
|
||||||
|
@ -70,3 +71,10 @@ func remap_key(event):
|
||||||
time_since_remap = 0
|
time_since_remap = 0
|
||||||
remap_button = null
|
remap_button = null
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
func _on_reset_button_pressed():
|
||||||
|
GlobalSettings.reset_controls_to_save_file()
|
||||||
|
for child in remap_buttons_holder.get_children():
|
||||||
|
if child is Button and child.is_in_group("RemappableButton"):
|
||||||
|
child.display_key()
|
||||||
|
pass
|
||||||
|
|
|
@ -2,12 +2,17 @@ extends Area2D
|
||||||
|
|
||||||
@export var speed : float = 80.0
|
@export var speed : float = 80.0
|
||||||
@export var damage : int = 1
|
@export var damage : int = 1
|
||||||
|
@export var audio_pool := []
|
||||||
|
|
||||||
@export_flags_2d_physics var map_collision_layer : int
|
@export_flags_2d_physics var map_collision_layer : int
|
||||||
@export_flags_2d_physics var bunny_collision_layer : int
|
@export_flags_2d_physics var bunny_collision_layer : int
|
||||||
|
|
||||||
var dir : float
|
var dir : float
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
get_node(audio_pool[randi_range(0, 2)]).play()
|
||||||
|
pass
|
||||||
|
|
||||||
func _process(delta):
|
func _process(delta):
|
||||||
self.translate(Vector2(cos(dir), sin(dir)) * speed * delta)
|
self.translate(Vector2(cos(dir), sin(dir)) * speed * delta)
|
||||||
self.rotate(delta * 30)
|
self.rotate(delta * 30)
|
||||||
|
@ -23,8 +28,17 @@ func _on_collision(body):
|
||||||
|
|
||||||
if collided_layer & map_collision_layer:
|
if collided_layer & map_collision_layer:
|
||||||
queue_free()
|
queue_free()
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
func _on_area_entered(area):
|
||||||
|
var collided_layer = null;
|
||||||
|
|
||||||
|
if(area.has_method("get_collision_layer")):
|
||||||
|
collided_layer = area.get_collision_layer()
|
||||||
|
|
||||||
if collided_layer & bunny_collision_layer:
|
if collided_layer & bunny_collision_layer:
|
||||||
var bunny = body as Bunny
|
var bunny = area as Bunny
|
||||||
bunny.damage(damage)
|
bunny.damage(damage)
|
||||||
queue_free()
|
queue_free()
|
||||||
pass
|
pass
|
||||||
|
|
|
@ -11,7 +11,7 @@ config_version=5
|
||||||
[application]
|
[application]
|
||||||
|
|
||||||
config/name="HoppyEaster"
|
config/name="HoppyEaster"
|
||||||
run/main_scene="res://Scenes/Main Menu.tscn"
|
run/main_scene="res://Scenes/Main Menu Music Fix.tscn"
|
||||||
config/features=PackedStringArray("4.0", "GL Compatibility")
|
config/features=PackedStringArray("4.0", "GL Compatibility")
|
||||||
config/icon="res://icon.svg"
|
config/icon="res://icon.svg"
|
||||||
|
|
||||||
|
@ -26,8 +26,8 @@ Save="*res://Scripts/SaveSystem/GameDataSaver.gd"
|
||||||
|
|
||||||
[display]
|
[display]
|
||||||
|
|
||||||
window/size/viewport_width=640
|
window/size/viewport_width=1280
|
||||||
window/size/viewport_height=1000
|
window/size/viewport_height=800
|
||||||
window/stretch/mode="canvas_items"
|
window/stretch/mode="canvas_items"
|
||||||
window/stretch/aspect="expand"
|
window/stretch/aspect="expand"
|
||||||
|
|
||||||
|
@ -187,6 +187,7 @@ ui_tab_right={
|
||||||
2d_physics/layer_3="Bunny"
|
2d_physics/layer_3="Bunny"
|
||||||
2d_physics/layer_4="Projectile"
|
2d_physics/layer_4="Projectile"
|
||||||
2d_physics/layer_5="Layer 5"
|
2d_physics/layer_5="Layer 5"
|
||||||
|
2d_navigation/layer_5="Map Solid"
|
||||||
2d_physics/layer_7="bunny_check"
|
2d_physics/layer_7="bunny_check"
|
||||||
|
|
||||||
[rendering]
|
[rendering]
|
||||||
|
|