Add FallOnDetectionComponent and CleanupOnCollisionComponent; implement falling detection and cleanup on collision

This commit is contained in:
2025-09-13 22:04:36 +02:00
parent bc3108ea37
commit 3d8694377a
25 changed files with 1998 additions and 118 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

View File

@@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ccjihsk6w8sow"
path="res://.godot/imported/BFT - Mega Metroidvania Tileset.png-19c14f630afbe7f12271eafb441c25f8.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://sprites/BFT - Mega Metroidvania Tileset.png"
dest_files=["res://.godot/imported/BFT - Mega Metroidvania Tileset.png-19c14f630afbe7f12271eafb441c25f8.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

BIN
sprites/cave_tileset.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c04306ag4ro5j"
path="res://.godot/imported/cave_tileset.png-05ea12166d619def5fd5eeabed0dd0ad.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://sprites/cave_tileset.png"
dest_files=["res://.godot/imported/cave_tileset.png-05ea12166d619def5fd5eeabed0dd0ad.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

BIN
sprites/emotes.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

34
sprites/emotes.png.import Normal file
View File

@@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cbc5a7ckdduex"
path="res://.godot/imported/emotes.png-dc9b5f07b72b849d0b0397d26d9c24d6.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://sprites/emotes.png"
dest_files=["res://.godot/imported/emotes.png-dc9b5f07b72b849d0b0397d26d9c24d6.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

View File

@@ -1,105 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="192"
height="192"
viewBox="0 0 192 192"
version="1.1"
id="svg1"
inkscape:version="1.4.1 (93de688d07, 2025-03-30)"
sodipodi:docname="grass_tile.svg"
inkscape:export-filename="grass_tile.png"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview1"
pagecolor="#505050"
bordercolor="#ffffff"
borderopacity="1"
inkscape:showpageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="1"
inkscape:deskcolor="#505050"
inkscape:document-units="px"
inkscape:zoom="4.1513748"
inkscape:cx="39.986753"
inkscape:cy="96.474064"
inkscape:window-width="2560"
inkscape:window-height="1374"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="layer1"
showgrid="true">
<inkscape:grid
id="grid1"
units="px"
originx="0"
originy="0"
spacingx="8"
spacingy="8"
empcolor="#0099e5"
empopacity="0.30196078"
color="#0099e5"
opacity="0.14901961"
empspacing="8"
enabled="true"
visible="true" />
</sodipodi:namedview>
<defs
id="defs1">
<inkscape:path-effect
effect="fillet_chamfer"
id="path-effect2"
is_visible="true"
lpeversion="1"
nodesatellites_param="F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1"
radius="0"
unit="px"
method="auto"
mode="F"
chamfer_steps="1"
flexible="false"
use_knot_distance="true"
apply_no_radius="true"
apply_with_radius="true"
only_selected="false"
hide_knots="false" />
</defs>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1">
<rect
style="fill:#ff9959;stroke:none;stroke-width:0.687408"
id="rect2"
width="192"
height="144"
x="0"
y="48"
sodipodi:type="rect"
inkscape:label="mid"
ry="15.251407"
rx="0" />
<rect
style="fill:#bf6060;stroke:none;stroke-width:0.627513"
id="rect3"
width="160"
height="144"
x="16.000006"
y="24"
sodipodi:type="rect"
inkscape:label="bottom"
ry="12" />
<path
id="rect1"
style="display:inline;fill:#21a65d;stroke-width:1.6"
d="M 43,0 C 19,0 0,22.400001 0,51.2 V 64 H 192 V 51.2 C 192,22.400001 173,0 149,0 Z"
inkscape:label="top" />
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.8 KiB

BIN
sprites/nestle.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 133 KiB

34
sprites/nestle.png.import Normal file
View File

@@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bfs4i3guqvk1d"
path="res://.godot/imported/nestle.png-acabfd796145590e3624a1eec84d8be7.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://sprites/nestle.png"
dest_files=["res://.godot/imported/nestle.png-acabfd796145590e3624a1eec84d8be7.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