Compare commits

60 Commits
Author SHA1 Message Date
Debugman 231629d91e Began block restructure
ci/woodpecker/push/woodpecker Pipeline was successful
2026-11-07 15:16:33 -06:00
Debugman c40cbc4574 web_art
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 23:55:59 -05:00
TheRailGoat 6d428ea773 New Pirate Hat
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 23:51:08 -05:00
TheRailGoat 1b6d1bd09c Merge branch 'main' of https://git.nanoyagi.com/NanoYagi/JumpRopeOldTech
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 23:28:24 -05:00
Debugman 78d1c205de Update .gitignore
ci/woodpecker/push/woodpecker Pipeline was canceled
2026-10-18 23:28:18 -05:00
TheRailGoat 90b8cf1ca5 More Hats! 2026-10-18 23:28:15 -05:00
Debugman 83ed18c332 Hats
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 23:18:25 -05:00
yagigreg f79772cec3 Merge branch 'main' of ssh://git.egg:2222/NanoYagi/JumpRopeOldTech
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 23:04:00 -05:00
TheRailGoat 2efad0d7e8 Merge branch 'main' of https://git.nanoyagi.com/NanoYagi/JumpRopeOldTech
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 23:03:07 -05:00
TheRailGoat 20f58f89ca ??? 2026-10-18 23:03:02 -05:00
Debugman 105931a173 Wizard1
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 23:02:23 -05:00
yagigreg 0b68c7beb0 Add floor to quadrant c to help alleviate teleportal wonkiness 2026-10-18 23:01:54 -05:00
Debugman 04a643e140 Merge branch 'main' of http://git.nanoyagi.com/NanoYagi/JumpRopeOldTech
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 23:01:30 -05:00
Debugman 50566f8ee8 Push it real good 2026-10-18 23:01:23 -05:00
TheRailGoat 3abf25e1a0 Wizard Hat
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 22:59:28 -05:00
yagigreg a950e2b15f Merge branch 'main' of ssh://git.egg:2222/NanoYagi/JumpRopeOldTech 2026-10-18 22:50:01 -05:00
Debugman 5af8efa2d4 Favicon
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 22:27:33 -05:00
yagigreg 92f0cb57c0 Remove hidden teleportal class.
It doesn't do anything that the hidden group doesn't already, since the hidden logic is done in the player.
Also, hidden teleportal inherited the relative position bug that was since fixed in the regular one.
2026-10-18 21:57:35 -05:00
yagigreg 6848bd3d79 Merge branch 'main' of ssh://git.egg:2222/NanoYagi/JumpRopeOldTech
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 21:42:05 -05:00
TheRailGoat e363e614e7 Update world.tscn
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 21:45:45 -05:00
yagigreg abfb8002af Tweak quadrant C some more, add debug mode warp portals 2026-10-18 21:41:22 -05:00
Debugman 233bbcfacf Merge branch 'main' of http://git.nanoyagi.com/NanoYagi/JumpRopeOldTech
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 21:37:23 -05:00
Debugman 30b2ec013e Added hats 2026-10-18 21:37:11 -05:00
zozieee b86decec25 Update intro.gd
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 21:34:10 -05:00
Debugman ca04b528bc Merge branch 'main' of http://git.nanoyagi.com/NanoYagi/JumpRopeOldTech
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 21:16:08 -05:00
Debugman c3fd30b03c Less accidental crouching 2026-10-18 21:16:01 -05:00
TheRailGoat 97db316493 Merge branch 'main' of https://git.nanoyagi.com/NanoYagi/JumpRopeOldTech
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 21:11:11 -05:00
TheRailGoat 7dac88aba2 More Saw Stuff 2026-10-18 21:10:30 -05:00
zozieee 821cdf28fd Merge branch 'main' of https://git.nanoyagi.com/NanoYagi/JumpRopeOldTech
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 21:04:01 -05:00
zozieee ad7bd76027 level design 2026-10-18 21:03:53 -05:00
Debugman 722f600b20 Level stuff
ci/woodpecker/push/woodpecker Pipeline was canceled
2026-10-18 21:03:50 -05:00
Debugman 7f899d56b4 Merge branch 'main' of http://git.nanoyagi.com/NanoYagi/JumpRopeOldTech
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 20:43:20 -05:00
Debugman 4bf090754c Arrow keys 2026-10-18 20:43:14 -05:00
Debugman a673218fa9 Merge branch 'main' of http://git.nanoyagi.com/NanoYagi/JumpRopeOldTech
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 20:38:40 -05:00
Debugman 12ed9ae894 Music while meditating 2026-10-18 20:38:29 -05:00
yagigreg 0a2c8211fd Fix teleporting from teleportals that are nested in a node, by using global position rather than relative position.
ci/woodpecker/push/woodpecker Pipeline was canceled
2026-10-18 20:34:31 -05:00
zozieee 3a8b18f821 story updates
ci/woodpecker/push/woodpecker Pipeline was successful
added reddit comic
edited and formatted epilogue
2026-10-18 20:30:34 -05:00
TheRailGoat f94d68efef Saws!
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 20:13:23 -05:00
yagigreg d1fb937a93 Add a "hidden in editor" group that causes all nodes in that group to be shown when the level loads.
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 19:56:00 -05:00
yagigreg 457c6df5c0 Merge branch 'disk_3_zone'
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 19:51:48 -05:00
Debugman b535b67b9e Show world
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 19:55:55 -05:00
Debugman ecb1ac779a Merge branch 'main' of http://git.nanoyagi.com/NanoYagi/JumpRopeOldTech
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 19:46:02 -05:00
Debugman d9c0167b36 Spread disks around 2026-10-18 19:45:53 -05:00
yagigreg 5963dd8441 Merge branch 'main' into disk_3_zone 2026-10-18 19:45:33 -05:00
yagigreg c28463320a Teleportal fun 2026-10-18 19:41:03 -05:00
TheRailGoat 6eb19de382 New Saw Sprites
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 19:33:04 -05:00
Debugman 90bf329802 Smaller notepad
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 19:30:04 -05:00
yagigreg bafdae2cfd Merge remote-tracking branch 'origin' into disk_3_zone 2026-10-18 19:19:04 -05:00
yagigreg 5c8dccf9d7 Reduce scope of disk 3 quadrant, and make the hidden moving block also visible in editor. 2026-10-18 19:18:36 -05:00
Debugman 3fd117857c Text box art
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 19:04:09 -05:00
yagigreg 7072ddb73d initial stab at disk 3 area.
Also made hidden items visible by default since they will become hidden when the game starts anyway. This way they are visible in the editor.
2026-10-18 18:49:32 -05:00
Debugman 82ae4dfc7f Merge branch 'main' of http://git.nanoyagi.com/NanoYagi/JumpRopeOldTech
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 18:44:15 -05:00
Debugman 22abac2f11 Fixed moving blocks 2026-10-18 18:43:49 -05:00
TheRailGoat b35880212e Disk 2 Update
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 17:32:43 -05:00
Debugman e7e33fa481 Merge branch 'main' of http://git.nanoyagi.com/NanoYagi/JumpRopeOldTech
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 17:20:03 -05:00
Debugman 2342c5b372 Improved moving platform 2026-10-18 17:19:50 -05:00
TheRailGoat b9f972f713 Tablet 2 Section Update
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 17:14:49 -05:00
zozieee 8aa0978aa0 change to niceGoat image
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 17:02:32 -05:00
debugman18 7bcdfb1f7a Merge branch 'main' of http://git.nanoyagi.com/NanoYagi/JumpRopeOldTech
ci/woodpecker/push/woodpecker Pipeline was successful
2026-10-18 16:51:11 -05:00
debugman18 8fa42abc6f Moving block added (buggy) 2026-10-18 16:10:14 -05:00
96 changed files with 2988 additions and 343 deletions

No files matched your search

+2
View File
@@ -1,3 +1,5 @@
# Godot 4+ specific ignores # Godot 4+ specific ignores
.godot/ .godot/
/android/ /android/
/web_released
/web_released
+2 -2
View File
@@ -35,9 +35,9 @@ anchors_preset = 15
anchor_right = 1.0 anchor_right = 1.0
anchor_bottom = 1.0 anchor_bottom = 1.0
offset_left = 83.0 offset_left = 83.0
offset_top = 301.0 offset_top = 306.0
offset_right = -77.0 offset_right = -77.0
offset_bottom = -227.0 offset_bottom = -246.0
grow_horizontal = 2 grow_horizontal = 2
grow_vertical = 2 grow_vertical = 2
bbcode_enabled = true bbcode_enabled = true
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

@@ -2,16 +2,16 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://u2pls12umjb4" uid="uid://wbtg6085ukle"
path="res://.godot/imported/index.png-4e9e8d383724ead390b9cd460dfa0229.ctex" path="res://.godot/imported/FE0031B4.jpg-22e832d7b8cf85d577d1d3994d8e3ce0.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://web_released/index.png" source_file="res://FE0031B4.jpg"
dest_files=["res://.godot/imported/index.png-4e9e8d383724ead390b9cd460dfa0229.ctex"] dest_files=["res://.godot/imported/FE0031B4.jpg-22e832d7b8cf85d577d1d3994d8e3ce0.ctex"]
[params] [params]
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 250 KiB

@@ -2,16 +2,16 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://bexc8mxf4wunh" uid="uid://dbjb5a353bq5p"
path="res://.godot/imported/index.icon.png-cd84f171887b41d406500683c840dd56.ctex" path="res://.godot/imported/+Y6tTX.png-727916852968e76cc993d8b7d6d6d93a.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://web_released/index.icon.png" source_file="res://art/+Y6tTX.png"
dest_files=["res://.godot/imported/index.icon.png-cd84f171887b41d406500683c840dd56.ctex"] dest_files=["res://.godot/imported/+Y6tTX.png-727916852968e76cc993d8b7d6d6d93a.ctex"]
[params] [params]
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 255 KiB

+43
View File
@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cgyp2d3phoeqd"
path="res://.godot/imported/CwIZf+.png-d1acec1f682e0950ce7b5cc0bfb297db.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/CwIZf+.png"
dest_files=["res://.godot/imported/CwIZf+.png-d1acec1f682e0950ce7b5cc0bfb297db.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/high_quality_mode=0
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
mipmaps/preserve_alpha_test_coverage=false
mipmaps/alpha_test_threshold=0.5
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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.
Binary file not shown.

After

Width:  |  Height:  |  Size: 469 B

+43
View File
@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://0m5unjs5g54d"
path="res://.godot/imported/crystal_green.png-655a5b642e5889c347c47cc4bdb81efc.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/crystal_green.png"
dest_files=["res://.godot/imported/crystal_green.png-655a5b642e5889c347c47cc4bdb81efc.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/high_quality_mode=0
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
mipmaps/preserve_alpha_test_coverage=false
mipmaps/alpha_test_threshold=0.5
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 431 B

@@ -2,16 +2,16 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://cluf02f4cbby5" uid="uid://dcyvfmgsg1nm5"
path="res://.godot/imported/saw4.png-bd621fa9909b47415f5261a3f191e63a.ctex" path="res://.godot/imported/cap1.png-fc21e6cc068913c32843c2c7ea1072d3.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://art/saw4.png" source_file="res://art/hats/cap1.png"
dest_files=["res://.godot/imported/saw4.png-bd621fa9909b47415f5261a3f191e63a.ctex"] dest_files=["res://.godot/imported/cap1.png-fc21e6cc068913c32843c2c7ea1072d3.ctex"]
[params] [params]
Binary file not shown.

After

Width:  |  Height:  |  Size: 483 B

+43
View File
@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://yfsrxlyjud4t"
path="res://.godot/imported/hat_pirate.png-80de1beb90325d56da29d3964ab05f41.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/hats/hat_pirate.png"
dest_files=["res://.godot/imported/hat_pirate.png-80de1beb90325d56da29d3964ab05f41.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/high_quality_mode=0
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
mipmaps/preserve_alpha_test_coverage=false
mipmaps/alpha_test_threshold=0.5
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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.

After

Width:  |  Height:  |  Size: 951 B

+43
View File
@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://qm5i00us5qaf"
path="res://.godot/imported/pickup_sprite.png-9ccf730289cc3dabf540e4bf37dff84b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/hats/pickup_sprite.png"
dest_files=["res://.godot/imported/pickup_sprite.png-9ccf730289cc3dabf540e4bf37dff84b.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/high_quality_mode=0
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
mipmaps/preserve_alpha_test_coverage=false
mipmaps/alpha_test_threshold=0.5
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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.

After

Width:  |  Height:  |  Size: 486 B

+43
View File
@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://d3tqa3wkd5kf0"
path="res://.godot/imported/pope1.png-cad83b64a1f36e0b89fa07729920a666.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/hats/pope1.png"
dest_files=["res://.godot/imported/pope1.png-cad83b64a1f36e0b89fa07729920a666.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/high_quality_mode=0
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
mipmaps/preserve_alpha_test_coverage=false
mipmaps/alpha_test_threshold=0.5
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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.

After

Width:  |  Height:  |  Size: 463 B

+43
View File
@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://chpue8w8jicmd"
path="res://.godot/imported/wizard1.png-45a9eeec5a2f111970eb5e1ad17b4526.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/hats/wizard1.png"
dest_files=["res://.godot/imported/wizard1.png-45a9eeec5a2f111970eb5e1ad17b4526.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/high_quality_mode=0
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
mipmaps/preserve_alpha_test_coverage=false
mipmaps/alpha_test_threshold=0.5
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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.

After

Width:  |  Height:  |  Size: 463 B

+43
View File
@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cdjuphq2uwxpy"
path="res://.godot/imported/wizard2.png-19319b0dd95a8e0ef4163ec961dadcb2.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/hats/wizard2.png"
dest_files=["res://.godot/imported/wizard2.png-19319b0dd95a8e0ef4163ec961dadcb2.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/high_quality_mode=0
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
mipmaps/preserve_alpha_test_coverage=false
mipmaps/alpha_test_threshold=0.5
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 308 KiB

@@ -2,16 +2,16 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://bf3kv2cgp3joy" uid="uid://wfsj2b8bpr56"
path="res://.godot/imported/saw5.png-ed46765cd6d0897adf9e5347c71ffad8.ctex" path="res://.godot/imported/ie382o.png-08c93a780308d3a3514a4445a6140b23.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://art/saw5.png" source_file="res://art/ie382o.png"
dest_files=["res://.godot/imported/saw5.png-ed46765cd6d0897adf9e5347c71ffad8.ctex"] dest_files=["res://.godot/imported/ie382o.png-08c93a780308d3a3514a4445a6140b23.ctex"]
[params] [params]
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 660 B

After

Width:  |  Height:  |  Size: 588 B

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 664 B

After

Width:  |  Height:  |  Size: 578 B

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 635 B

After

Width:  |  Height:  |  Size: 575 B

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 638 B

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 639 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 340 KiB

+43
View File
@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c6pasbohqevvg"
path="res://.godot/imported/Obsessing.png-8b0f509d4e389e6ea44984fd546a9050.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/slides/Obsessing.png"
dest_files=["res://.godot/imported/Obsessing.png-8b0f509d4e389e6ea44984fd546a9050.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/high_quality_mode=0
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
mipmaps/preserve_alpha_test_coverage=false
mipmaps/alpha_test_threshold=0.5
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 150 KiB

+43
View File
@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://csh1o4w45h1i4"
path="res://.godot/imported/webAWfF.png-d26cdd1a41f44c0dc7f3e340c73643fe.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/webAWfF.png"
dest_files=["res://.godot/imported/webAWfF.png-d26cdd1a41f44c0dc7f3e340c73643fe.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/high_quality_mode=0
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
mipmaps/preserve_alpha_test_coverage=false
mipmaps/alpha_test_threshold=0.5
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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
-17
View File
@@ -1,17 +0,0 @@
[gd_scene format=3 uid="uid://ckqable762x8v"]
[ext_resource type="Texture2D" uid="uid://blbaaqyrt8dtk" path="res://art/block/block.png" id="1_im0tn"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_f3sb7"]
size = Vector2(16, 14)
[node name="Block" type="RigidBody2D" unique_id=1409784601]
gravity_scale = 0.0
freeze = true
[node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=1866755047]
shape = SubResource("RectangleShape2D_f3sb7")
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1680278216]
texture_filter = 1
texture = ExtResource("1_im0tn")
-1
View File
@@ -9,7 +9,6 @@ func _process(delta: float) -> void:
pass pass
func on_contact(body: Node2D) -> void: func on_contact(body: Node2D) -> void:
print(body)
$AudioStreamPlayer2D.play() $AudioStreamPlayer2D.play()
visible = false visible = false
%Player2D.coins += 1 %Player2D.coins += 1
+20
View File
@@ -0,0 +1,20 @@
extends Node2D
@export var hat_type:= ""
var hat_texture = load("res://art/hats/" + str(hat_type) + ".png")
func _ready() -> void:
hat_texture = load("res://art/hats/" + str(hat_type) + ".png")
func _process(delta: float) -> void:
pass
func on_contact(body: Node2D) -> void:
print("BODY: " + str(body))
%Player2D/HatSound.play()
visible = false
%Player2D/Sprite2D/HatSprite.texture = hat_texture
%Player2D/Sprite2D/HatSprite.show()
await get_tree().create_timer(0.2).timeout
queue_free()
+1
View File
@@ -0,0 +1 @@
uid://47y55iry2pd6
+21
View File
@@ -0,0 +1,21 @@
[gd_scene format=3 uid="uid://bnuiagw3bblfh"]
[ext_resource type="Script" uid="uid://47y55iry2pd6" path="res://hat_pickup.gd" id="1_fs7cl"]
[ext_resource type="Texture2D" uid="uid://qm5i00us5qaf" path="res://art/hats/pickup_sprite.png" id="2_fs7cl"]
[sub_resource type="CircleShape2D" id="CircleShape2D_y0cpo"]
[node name="HatPickup" type="Node2D" unique_id=1739014101]
script = ExtResource("1_fs7cl")
[node name="HatSprite" type="Sprite2D" parent="." unique_id=813041394]
position = Vector2(0, -8)
texture = ExtResource("2_fs7cl")
[node name="Area2D" type="Area2D" parent="." unique_id=726438646]
[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D" unique_id=278855113]
position = Vector2(0, -7)
shape = SubResource("CircleShape2D_y0cpo")
[connection signal="body_entered" from="Area2D" to="." method="on_contact"]
-1
View File
@@ -9,7 +9,6 @@ func _process(delta: float) -> void:
pass pass
func on_contact(body: Node2D) -> void: func on_contact(body: Node2D) -> void:
print(body)
$AudioStreamPlayer2D.play() $AudioStreamPlayer2D.play()
visible = false visible = false
%Player2D.coins += 1 %Player2D.coins += 1
+1 -1
View File
@@ -8,7 +8,7 @@
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_6qpsl"] [sub_resource type="CapsuleShape2D" id="CapsuleShape2D_6qpsl"]
height = 26.0 height = 26.0
[node name="HiddenCoin" type="Node2D" unique_id=1739014101] [node name="HiddenCoin" type="Node2D" unique_id=1739014101 groups=["Hidden"]]
visible = false visible = false
script = ExtResource("1_4tl78") script = ExtResource("1_4tl78")
+3 -2
View File
@@ -1,9 +1,10 @@
[gd_scene format=3 uid="uid://ch0417iiviaxb"] [gd_scene format=3 uid="uid://ch0417iiviaxb"]
[ext_resource type="Script" uid="uid://dcesonmhay5vo" path="res://hidden_vertical_long_block.gd" id="1_llak8"] [ext_resource type="Script" uid="uid://dcesonmhay5vo" path="res://hidden_vertical_long_block.gd" id="1_llak8"]
[ext_resource type="PackedScene" uid="uid://ckqable762x8v" path="res://block.tscn" id="2_se82m"] [ext_resource type="PackedScene" uid="uid://ckqable762x8v" path="res://level_editor/blocks/block_simple.tscn" id="2_se82m"]
[node name="HiddenHorizontalLongBlock" type="RigidBody2D" unique_id=925152188] [node name="HiddenHorizontalLongBlock" type="RigidBody2D" unique_id=925152188 groups=["Hidden"]]
modulate = Color(0, 0.54509807, 0.54509807, 1)
rotation = 3.1415927 rotation = 3.1415927
gravity_scale = 0.0 gravity_scale = 0.0
freeze = true freeze = true
+41
View File
@@ -0,0 +1,41 @@
extends RigidBody2D
@export var max_distance = 260.0
@export var moving = true
var alt_position = Vector2(position.x + max_distance,0)
@export var move_speed = 0.01
func _ready() -> void:
add_to_group("Hidden")
modulate = Color.DARK_CYAN
#Do not move collision boxes, it is fickle.
#on_leave(%Player2D)
alt_position = Vector2(position.x + max_distance,0)
add_to_group("MovingPlatform")
func _process(delta: float) -> void:
if position.x != alt_position.x:
position.x = move_toward(position.x, alt_position.x, move_speed)
else:
moving = false
%Player2D.is_on_moving_platform = false
#%Player2D.platform_speed = 0.0
func on_enter(body) -> void:
if %Player2D.is_on_floor() and body == %Player2D:
print("Player on moving platform.")
%Player2D.platform_speed = move_speed
%Player2D.is_on_moving_platform = true
elif body == %Player2D and !%Player2D.is_on_wall_only:
print("Player but has not landed")
%Player2D.platform_speed = move_speed
%Player2D.is_on_moving_platform = true
elif body == %Player2D:
print("SOMETHING IS WRONG WITH PLAYER")
%Player2D.platform_speed = move_speed
%Player2D.is_on_moving_platform = true
func on_leave(body) -> void:
if body == %Player2D:
%Player2D.is_on_moving_platform = false
#%Player2D.platform_speed = 0.0
+1
View File
@@ -0,0 +1 @@
uid://ckn8q0fyt01j3
+40
View File
@@ -0,0 +1,40 @@
[gd_scene format=3 uid="uid://b61sumdnt0qqh"]
[ext_resource type="Script" uid="uid://ckn8q0fyt01j3" path="res://hidden_horizontal_moving_block.gd" id="1_c4g4s"]
[ext_resource type="Texture2D" uid="uid://blbaaqyrt8dtk" path="res://art/block/block.png" id="2_c7hrt"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_f3sb7"]
size = Vector2(32, 13)
[sub_resource type="RectangleShape2D" id="RectangleShape2D_3uo2v"]
size = Vector2(32, 4.0000687)
[node name="HiddenHorizontalMovingBlock" type="RigidBody2D" unique_id=1409784601 groups=["Hidden"]]
modulate = Color(0, 0.54509807, 0.54509807, 1)
gravity_scale = 0.0
freeze = true
script = ExtResource("1_c4g4s")
[node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=1866755047]
position = Vector2(0, -1.5)
shape = SubResource("RectangleShape2D_f3sb7")
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1680278216]
texture_filter = 1
position = Vector2(-8, -2)
texture = ExtResource("2_c7hrt")
[node name="Sprite2D2" type="Sprite2D" parent="." unique_id=549053101]
texture_filter = 1
position = Vector2(8, -2)
texture = ExtResource("2_c7hrt")
[node name="Area2D" type="Area2D" parent="." unique_id=1910272404]
rotation = -6.834404e-05
[node name="ShapeCast2D" type="CollisionShape2D" parent="Area2D" unique_id=934904308]
position = Vector2(0.000615094, -8.999966)
shape = SubResource("RectangleShape2D_3uo2v")
[connection signal="body_entered" from="Area2D" to="." method="on_enter"]
[connection signal="body_exited" from="Area2D" to="." method="on_leave"]
+1 -1
View File
@@ -8,7 +8,7 @@
[sub_resource type="RectangleShape2D" id="RectangleShape2D_eumkw"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_eumkw"]
size = Vector2(26, 32) size = Vector2(26, 32)
[node name="HiddenSign" type="Node2D" unique_id=1201409437] [node name="HiddenSign" type="Node2D" unique_id=1201409437 groups=["Hidden"]]
script = ExtResource("1_a20ku") script = ExtResource("1_a20ku")
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1680278216] [node name="Sprite2D" type="Sprite2D" parent="." unique_id=1680278216]
+1 -1
View File
@@ -2,6 +2,7 @@ extends Node2D
func _ready() -> void: func _ready() -> void:
add_to_group("Hidden") add_to_group("Hidden")
modulate = Color.DARK_CYAN
func _process(delta: float) -> void: func _process(delta: float) -> void:
pass pass
@@ -11,4 +12,3 @@ func on_contact(body: Node2D) -> void:
print("SLASH KILL") print("SLASH KILL")
%Player2D/Jetpack/DeathSound.play() %Player2D/Jetpack/DeathSound.play()
%Player2D.on_death(false,%Player2D.position) %Player2D.on_death(false,%Player2D.position)
print(body)
+1 -1
View File
@@ -6,7 +6,7 @@
[sub_resource type="RectangleShape2D" id="RectangleShape2D_xfwl5"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_xfwl5"]
size = Vector2(15, 7.5) size = Vector2(15, 7.5)
[node name="HiddenSpike" type="Node2D" unique_id=1739014101] [node name="HiddenSpike" type="Node2D" unique_id=1739014101 groups=["Hidden"]]
visible = false visible = false
script = ExtResource("1_k2eht") script = ExtResource("1_k2eht")
-44
View File
@@ -1,44 +0,0 @@
extends Node2D
@export var paired_teleporter: String
var checked_teleport
var telecam_speed_mult = 4
var enabled = true
var cooldown = 2
func _ready() -> void:
modulate = Color.PURPLE
add_to_group("TELEPORTERS")
add_to_group("Hidden")
func check_for_pair() -> String:
print(paired_teleporter)
return paired_teleporter
func disable():
enabled = false
$Sprite2D.modulate = Color.DARK_ORANGE
func enable():
enabled = true
$Sprite2D.modulate = Color.WHITE
func _process(delta: float) -> void:
pass
func _physics_process(delta: float) -> void:
pass
func _on_contact(body) -> void:
#get_tree().call_group("TELEPORTERS","disable")
for teleporter in get_tree().get_nodes_in_group("TELEPORTERS"):
if teleporter != self:
if teleporter.paired_teleporter == paired_teleporter and enabled:
%Player2D.get_node("Camera2D").position_smoothing_enabled = false
if %Player2D.teleport_cooldown > 0:
return
body.set_position(teleporter.get_position())
%Player2D.on_teleport()
disable()
await get_tree().create_timer(cooldown).timeout
enable()
-1
View File
@@ -1 +0,0 @@
uid://btxx0p5ccar5f
-40
View File
@@ -1,40 +0,0 @@
[gd_scene format=3 uid="uid://7bjqgxckho"]
[ext_resource type="Script" uid="uid://btxx0p5ccar5f" path="res://hidden_teleporter.gd" id="1_52wed"]
[ext_resource type="Texture2D" uid="uid://d0tvtt4eu8jmt" path="res://art/block/portal.png" id="2_rx1y0"]
[ext_resource type="Texture2D" uid="uid://55ihxa2emnep" path="res://art/block/portal2.png" id="3_5admx"]
[ext_resource type="Texture2D" uid="uid://d4a5x8gwhl2wc" path="res://art/block/portal3.png" id="4_tfiuq"]
[sub_resource type="SpriteFrames" id="SpriteFrames_tuehi"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_rx1y0")
}, {
"duration": 1.0,
"texture": ExtResource("3_5admx")
}, {
"duration": 1.0,
"texture": ExtResource("4_tfiuq")
}],
"loop": 1,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="CircleShape2D" id="CircleShape2D_7k7bx"]
radius = 9.0
[node name="HiddenTeleporter" type="Node2D" unique_id=1201409437]
script = ExtResource("1_52wed")
[node name="Sprite2D" type="AnimatedSprite2D" parent="." unique_id=395479262]
sprite_frames = SubResource("SpriteFrames_tuehi")
autoplay = "default"
[node name="Area2D" type="Area2D" parent="Sprite2D" unique_id=2050186824]
[node name="CollisionShape2D" type="CollisionShape2D" parent="Sprite2D/Area2D" unique_id=1560168165]
shape = SubResource("CircleShape2D_7k7bx")
[connection signal="body_entered" from="Sprite2D/Area2D" to="." method="_on_contact"]
+3 -3
View File
@@ -1,10 +1,10 @@
[gd_scene format=3 uid="uid://b5ssjxl1l3fx0"] [gd_scene format=3 uid="uid://b5ssjxl1l3fx0"]
[ext_resource type="Script" uid="uid://dcesonmhay5vo" path="res://hidden_vertical_long_block.gd" id="1_tmhet"] [ext_resource type="Script" uid="uid://dcesonmhay5vo" path="res://hidden_vertical_long_block.gd" id="1_tmhet"]
[ext_resource type="PackedScene" uid="uid://ckqable762x8v" path="res://block.tscn" id="2_667v4"] [ext_resource type="PackedScene" uid="uid://ckqable762x8v" path="res://level_editor/blocks/block_simple.tscn" id="2_667v4"]
[node name="HiddenVerticalLongBlock" type="RigidBody2D" unique_id=925152188] [node name="HiddenVerticalLongBlock" type="RigidBody2D" unique_id=925152188 groups=["Hidden"]]
visible = false modulate = Color(0, 0.54509807, 0.54509807, 1)
rotation = 1.5707964 rotation = 1.5707964
gravity_scale = 0.0 gravity_scale = 0.0
freeze = true freeze = true
+39
View File
@@ -0,0 +1,39 @@
extends RigidBody2D
@export var max_distance = 260.0
@export var moving = true
var alt_position = Vector2(position.x + max_distance,0)
@export var move_speed = 0.01
func _ready() -> void:
#Do not move collision boxes, it is fickle.
#on_leave(%Player2D)
alt_position = Vector2(position.x + max_distance,0)
add_to_group("MovingPlatform")
func _process(delta: float) -> void:
if position.x != alt_position.x:
position.x = move_toward(position.x, alt_position.x, move_speed)
else:
moving = false
%Player2D.is_on_moving_platform = false
#%Player2D.platform_speed = 0.0
func on_enter(body) -> void:
if %Player2D.is_on_floor() and body == %Player2D:
print("Player on moving platform.")
%Player2D.platform_speed = move_speed
%Player2D.is_on_moving_platform = true
elif body == %Player2D and !%Player2D.is_on_wall_only:
print("Player but has not landed")
%Player2D.platform_speed = move_speed
%Player2D.is_on_moving_platform = true
elif body == %Player2D:
print("SOMETHING IS WRONG WITH PLAYER")
%Player2D.platform_speed = move_speed
%Player2D.is_on_moving_platform = true
func on_leave(body) -> void:
if body == %Player2D:
%Player2D.is_on_moving_platform = false
#%Player2D.platform_speed = 0.0
+1
View File
@@ -0,0 +1 @@
uid://yaqgvctkobnq
+39
View File
@@ -0,0 +1,39 @@
[gd_scene format=3 uid="uid://div6quttr84u1"]
[ext_resource type="Script" uid="uid://yaqgvctkobnq" path="res://horizontal_moving_block.gd" id="1_3uo2v"]
[ext_resource type="Texture2D" uid="uid://blbaaqyrt8dtk" path="res://art/block/block.png" id="1_m1vtb"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_f3sb7"]
size = Vector2(32, 13)
[sub_resource type="RectangleShape2D" id="RectangleShape2D_3uo2v"]
size = Vector2(32, 4.0000687)
[node name="HorizontalMovingBlock" type="RigidBody2D" unique_id=1409784601]
gravity_scale = 0.0
freeze = true
script = ExtResource("1_3uo2v")
[node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=1866755047]
position = Vector2(0, -1.5)
shape = SubResource("RectangleShape2D_f3sb7")
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1680278216]
texture_filter = 1
position = Vector2(-8, -2)
texture = ExtResource("1_m1vtb")
[node name="Sprite2D2" type="Sprite2D" parent="." unique_id=549053101]
texture_filter = 1
position = Vector2(8, -2)
texture = ExtResource("1_m1vtb")
[node name="Area2D" type="Area2D" parent="." unique_id=1910272404]
rotation = -6.834404e-05
[node name="ShapeCast2D" type="CollisionShape2D" parent="Area2D" unique_id=934904308]
position = Vector2(0.000615094, -8.999966)
shape = SubResource("RectangleShape2D_3uo2v")
[connection signal="body_entered" from="Area2D" to="." method="on_enter"]
[connection signal="body_exited" from="Area2D" to="." method="on_leave"]
+4 -1
View File
@@ -1 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" width="128" height="128"><rect width="124" height="124" x="2" y="2" fill="#363d52" stroke="#212532" stroke-width="4" rx="14"/><g fill="#fff" transform="translate(12.322 12.322)scale(.101)"><path d="M105 673v33q407 354 814 0v-33z"/><path fill="#478cbf" d="m105 673 152 14q12 1 15 14l4 67 132 10 8-61q2-11 15-15h162q13 4 15 15l8 61 132-10 4-67q3-13 15-14l152-14V427q30-39 56-81-35-59-83-108-43 20-82 47-40-37-88-64 7-51 8-102-59-28-123-42-26 43-46 89-49-7-98 0-20-46-46-89-64 14-123 42 1 51 8 102-48 27-88 64-39-27-82-47-48 49-83 108 26 42 56 81zm0 33v39c0 276 813 276 814 0v-39l-134 12-5 69q-2 10-14 13l-162 11q-12 0-16-11l-10-65H446l-10 65q-4 11-16 11l-162-11q-12-3-14-13l-5-69z"/><path d="M483 600c0 34 58 34 58 0v-86c0-34-58-34-58 0z"/><circle cx="725" cy="526" r="90"/><circle cx="299" cy="526" r="90"/></g><g fill="#414042" transform="translate(12.322 12.322)scale(.101)"><circle cx="307" cy="532" r="60"/><circle cx="717" cy="532" r="60"/></g></svg> <?xml version="1.0" encoding="UTF-8"?>
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 96 64">
<image width="96" height="64" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABACAYAAADlNHIOAAAACXBIWXMAAAsSAAALEgHS3X78AAABpklEQVR4nO3cMUoDQRTG8VnxPl7AYttgZyVYW3iAYBfBTnIAF0SshKQRUoS0i+QCHmXNAdZ6HrjDMMl+M+7/BykGks0kHy8vOztJ5ZzrHWTOeOu1CECMAMQIQIwAxAhA7Ly0Ce8+lhnM4m+z23nU/akAMQIQIwCx4npASPdzyHuCBhUgRgBiBCD273qAWl3X3gzath2cERUgRgBiBCCWfQ/Ife0nFRUgRgBiBCBW3HnA8+vWGz/cXQ3e/+b+yRv3vb8LZ908nvTxIVSAGAGIEYDY5AKoqsq7jf14iwoQIwAxAhDLfnt67FqQ+ppws/7yxlwPyBwBiBGAWPZrQaG9lqVfL6ACxAhAjADEknvA8nM36iuYX8+Oejy73m+tXhZHfT6LChAjADECEJv83tDUz3i79hOLChAjADECECu+B8T+Ltey+/ljhdb7Q6gAMQIQIwCxk/eAQ9d54+/98Gfm5q3xxnatyY73203yHJPQA8pGAGIEIDb6ecDFpf+9O9QTYo9n2ePbHrN4XyU9vz1eLCpAjADECECMvy4WowLECECMADBhzrlf4+1RaAhPjVAAAAAASUVORK5CYII="/>
</svg>

Before

Width:  |  Height:  |  Size: 995 B

After

Width:  |  Height:  |  Size: 920 B

+14 -10
View File
@@ -3,22 +3,26 @@ extends Control
# Called when the node enters the scene tree for the first time. # Called when the node enters the scene tree for the first time.
func _ready() -> void: func _ready() -> void:
$Slideshower.play_slideshow([ $Slideshower.play_slideshow([
{ "image": "Daydreaming",
"text": "Ever since he was a wee lad, Mr. Rhombini had always had one dream - to fly around in a blinged up jetpack." }, { "image": "Obsessing",
"text": "Mr.Rhombini heard rumors online of Ancient Technology hidden in the ruins of an ancient society." },
{ "image": "res://art/keyart_thumb.png", { "image": "res://art/keyart_thumb.png",
"text": "The internet has been abuzz with talks of a legendary Pharaoh's jetpack. Mr. Rhombini's day has come." }, "text": "When Mr. Rhombini heard of the legendary Pharaoh's jetpack, he could feel himself becoming obsessed." },
{ "image": "Journey", { "image": "Journey",
"text": "Under the cover of night, Mr. Rhombini sneaks into the famous pharaoh's pyramid. This night, of all nights, it seems to glow with strange energy." }, "text": "Under the cover of night, Mr. Rhombini decided to sneak into the pyramid." },
{ "image": "Goatcaphagus", { "image": "Goatcaphagus",
"text": "Mr. Rhombini stumbles upon an unusual sarcophagus, a blend of ancient craftsmanship and advanced technology. The antenna have been disconnected." }, "text": "Mr. Rhombini stumbled upon an unusual sarcophagus.
He notices that the antennae have been disconnected." },
{ "image": "Activate", { "image": "Activate",
"text": "Mr. Rhombini excitedly connects the antenna. The sarcophagus begins to hum." }, "text": "Mr. Rhombini excitedly connects the second antenna. He hears the Ancient Technoloy begin to hum." },
{ "image": "Opensofar", { "image": "Nicegoat",
"text": "The sarcophagus swings open to reveal, not a dead body, but an old computer. The computer begins to boot up, but an error message is visible on the main screen." }, "text": "The sarcophagus swings open to reveal, not a dead body, but a mysterious machine.
The Ancient Technology begins to boot up, but an error message is visible on the main screen." },
{ "images": ["PossessedbyOC", "Power_source"], { "images": ["PossessedbyOC", "Power_source"],
"text": "However, Mr. Rhombini's attention is instantly grabbed by the other object inside the open sarcophagus." }, "text": "Mr. Rhombini's attention is instantly grabbed by the other object inside the open sarcophagus." },
{ "image": "Glow", { "image": "Glow",
"text": "The Pharaoh's jetpack! Mr. Rhombini wastes no time in putting it on." } "text": "The Pharaoh's jetpack! The legends were true! ( It's definitely not cursed! )
Mr. Rhombini wastes no time putting on the Pharaoh's Jetpack." }
]) ])
func _on_slideshower_finished_playing() -> void: func _on_slideshower_finished_playing() -> void:
+49
View File
@@ -0,0 +1,49 @@
class_name Block_Simple
extends RigidBody2D
# Last known sprite. In edge cases involving states.
# Block type refers to our specific block script.
# They should always extend eventually from block_simple.
@export var block_type:Script
# Set the animation (sprite sheet) to the specfied block types.
func SetSpriteSheet(animation):
$Sprite.animation = animation
# If this is false (default) then the block is horizontally facing.
@export var is_vertical:bool
# Tags the block has. These dictate interactions.
# These must be strings.
@export var tags:Array = [str]
# Rotate the block in a way that we can control.
# Default to 90 because that's a common use case.
func rotate_block(degrees:int = 90):
rotate(degrees)
# This runs BEFORE the instance is loaded.
# There's a lot you can't do here, as it doesn't exist yet.
func _init():
pass
#SetSpriteSheet(str(block_type))
#set_script(block_type)
# This runs AFTER the instance is loaded.
# This runs BEFORE the instance is added to the scene tree.
func _ready() -> void:
if is_vertical:
rotate_block(90)
set_script(block_type)
# This runs every frame. Expensive.
func _process(delta: float) -> void:
var _last_known_delta = delta
func on_player_near(body: Node2D) -> void:
print("Player is touching block with tags: " + str(tags))
func on_player_leave(body: Node2D) -> void:
print("Player is leaving block with tags: " + str(tags))
+1
View File
@@ -0,0 +1 @@
uid://b65ci82qp1pa0
+54
View File
@@ -0,0 +1,54 @@
[gd_scene format=3 uid="uid://ckqable762x8v"]
[ext_resource type="Script" uid="uid://b65ci82qp1pa0" path="res://level_editor/blocks/block_simple.gd" id="1_64qyq"]
[ext_resource type="Script" uid="uid://2nvcig3fqetr" path="res://level_editor/blocks/block_spike.gd" id="2_rhp63"]
[ext_resource type="Texture2D" uid="uid://blbaaqyrt8dtk" path="res://art/block/block.png" id="2_xmhd5"]
[ext_resource type="Texture2D" uid="uid://bu5wgerfu7cbc" path="res://art/spike.png" id="3_rhp63"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_f3sb7"]
size = Vector2(16, 14)
[sub_resource type="SpriteFrames" id="SpriteFrames_q6akc"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("2_xmhd5")
}],
"loop": 1,
"name": &"block_simple",
"speed": 5.0
}, {
"frames": [{
"duration": 1.0,
"texture": ExtResource("3_rhp63")
}],
"loop": 1,
"name": &"block_spike",
"speed": 5.0
}]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_lxo14"]
[node name="Block_Simple" type="RigidBody2D" unique_id=1409784601]
gravity_scale = 0.0
freeze = true
script = ExtResource("1_64qyq")
block_type = ExtResource("2_rhp63")
tags = [null]
[node name="BlockShape" type="CollisionShape2D" parent="." unique_id=1866755047]
shape = SubResource("RectangleShape2D_f3sb7")
[node name="Sprite" type="AnimatedSprite2D" parent="." unique_id=321127444]
texture_filter = 1
sprite_frames = SubResource("SpriteFrames_q6akc")
animation = &"block_simple"
autoplay = "block_simple"
[node name="EffectCollision" type="Area2D" parent="." unique_id=1756054567]
[node name="EffectShape" type="CollisionShape2D" parent="EffectCollision" unique_id=392861580]
shape = SubResource("RectangleShape2D_lxo14")
[connection signal="body_entered" from="EffectCollision" to="." method="on_player_near"]
[connection signal="body_exited" from="EffectCollision" to="." method="on_player_leave"]
+25
View File
@@ -0,0 +1,25 @@
class_name Block_Spike
extends Block_Simple
# This runs BEFORE the instance is loaded.
# There's a lot you can't do here, as it doesn't exist yet.
func _init():
is_vertical = false
tags = ["Spike","Hazard"]
# This runs AFTER the instance is loaded.
# This runs BEFORE the instance is added to the scene tree.
func _ready() -> void:
if is_vertical:
rotate_block(90)
# This runs every frame. Expensive.
func _process(delta: float) -> void:
var _last_known_delta = delta
func on_player_near(body: Node2D) -> void:
print("Player is touching block with tags: " + str(tags))
func on_player_leave(body: Node2D) -> void:
print("Player is leaving block with tags: " + str(tags))
+1
View File
@@ -0,0 +1 @@
uid://2nvcig3fqetr
+1 -1
View File
@@ -1,6 +1,6 @@
[gd_scene format=3 uid="uid://dx4pfup3sbk0f"] [gd_scene format=3 uid="uid://dx4pfup3sbk0f"]
[ext_resource type="PackedScene" uid="uid://ckqable762x8v" path="res://block.tscn" id="1_r8bmj"] [ext_resource type="PackedScene" uid="uid://ckqable762x8v" path="res://level_editor/blocks/block_simple.tscn" id="1_r8bmj"]
[node name="LongBlock" type="Node2D" unique_id=426800863] [node name="LongBlock" type="Node2D" unique_id=426800863]
-1
View File
@@ -11,4 +11,3 @@ func on_contact(body: Node2D) -> void:
print("SLASH KILL") print("SLASH KILL")
%Player2D/Jetpack/DeathSound.play() %Player2D/Jetpack/DeathSound.play()
%Player2D.on_death(false,%Player2D.position) %Player2D.on_death(false,%Player2D.position)
print(body)
+1 -1
View File
@@ -1,6 +1,6 @@
[gd_scene format=3 uid="uid://biot4cuwgohvo"] [gd_scene format=3 uid="uid://biot4cuwgohvo"]
[ext_resource type="PackedScene" uid="uid://ckqable762x8v" path="res://block.tscn" id="1_plc11"] [ext_resource type="PackedScene" uid="uid://ckqable762x8v" path="res://level_editor/blocks/block_simple.tscn" id="1_plc11"]
[node name="LongerBlock" type="Node2D" unique_id=426800863] [node name="LongerBlock" type="Node2D" unique_id=426800863]
+2
View File
@@ -12,5 +12,7 @@ func _on_toggled(toggled_on: bool) -> void:
if !first_press: if !first_press:
first_press = true first_press = true
%Player2D.get_node("BackgroundMusic").play() %Player2D.get_node("BackgroundMusic").play()
%Player2D.get_node("MeditateMusic").play()
toggled_on = !toggled_on toggled_on = !toggled_on
%Player2D.get_node("BackgroundMusic").stream_paused = !%Player2D.get_node("BackgroundMusic").stream_paused %Player2D.get_node("BackgroundMusic").stream_paused = !%Player2D.get_node("BackgroundMusic").stream_paused
%Player2D.get_node("MeditateMusic").stream_paused = !%Player2D.get_node("MeditateMusic").stream_paused
-1
View File
@@ -12,7 +12,6 @@ func _process(delta: float) -> void:
pass pass
func on_contact(body: Node2D) -> void: func on_contact(body: Node2D) -> void:
print(body)
$AudioStreamPlayer2D.play(0) $AudioStreamPlayer2D.play(0)
visible = false visible = false
picked_up.emit() picked_up.emit()
+47 -14
View File
@@ -1,3 +1,4 @@
class_name PlayerClassextends
extends CharacterBody2D extends CharacterBody2D
var controller_ui = false var controller_ui = false
@@ -11,6 +12,9 @@ const JUMP_VELOCITY = -410.0
const DASH_LENGTH = 0.2 const DASH_LENGTH = 0.2
const BACKGROUND_COLOR = Color(Color.ORANGE.r + 0.80,Color.ORANGE.g + 0.20,Color.ORANGE.b - 0.10) const BACKGROUND_COLOR = Color(Color.ORANGE.r + 0.80,Color.ORANGE.g + 0.20,Color.ORANGE.b - 0.10)
var is_on_moving_platform = false
var platform_speed = 0.0
var death_cooldown = 0.0 var death_cooldown = 0.0
var fall_timer = 0.0 var fall_timer = 0.0
var teleport_cooldown = 0 var teleport_cooldown = 0
@@ -30,6 +34,16 @@ func _ready() -> void:
spawn_point = position spawn_point = position
DisplayServer.window_set_title("JUMPS EQUALS JUMPS") DisplayServer.window_set_title("JUMPS EQUALS JUMPS")
give_objective("sarc", 0, "Open the Sarcophagus") give_objective("sarc", 0, "Open the Sarcophagus")
for hidden_object in get_tree().get_nodes_in_group("Hidden in editor"):
hidden_object.show()
for hidden_object in get_tree().get_nodes_in_group("Hidden"):
hidden_object.hide()
if not OS.is_debug_build():
for object in get_tree().get_nodes_in_group("Debug Mode Only"):
object.queue_free()
#%Dialogue.show_text("Hello world!").dismiss_after(2) #%Dialogue.show_text("Hello world!").dismiss_after(2)
func refresh_dash(new_dashes): func refresh_dash(new_dashes):
@@ -93,8 +107,6 @@ func spawn_ghost(ghost_position):
var ghost = preload("res://ghost.tscn") var ghost = preload("res://ghost.tscn")
ghost = ghost.instantiate() ghost = ghost.instantiate()
get_parent().add_child(ghost) get_parent().add_child(ghost)
print(ghost)
print(ghost.position)
ghost.position = ghost_position ghost.position = ghost_position
func on_death(instant = false, player_position = position): func on_death(instant = false, player_position = position):
@@ -116,16 +128,19 @@ func on_death(instant = false, player_position = position):
#position = %LevelStart.position #position = %LevelStart.position
velocity = Vector2(0,0) velocity = Vector2(0,0)
position = spawn_point + Vector2(0,-100) var fall_offset = Vector2(0,-100)
position = spawn_point# + fall_offset
await get_tree().create_timer(0.1).timeout await get_tree().create_timer(0.1).timeout
death_cooldown = 0 death_cooldown = 0
func _process(delta: float) -> void: func _process(delta: float) -> void:
if is_on_moving_platform:
position.x = position.x + platform_speed
if Input.is_key_pressed(Key.KEY_W) or Input.is_key_pressed(Key.KEY_A) or Input.is_key_pressed(Key.KEY_S) or Input.is_key_pressed(Key.KEY_D): if Input.is_key_pressed(Key.KEY_W) or Input.is_key_pressed(Key.KEY_A) or Input.is_key_pressed(Key.KEY_S) or Input.is_key_pressed(Key.KEY_D):
print("KEYBOARD")
controller_ui = false controller_ui = false
elif Input.get_action_strength("move_horizontal") > 0: elif Input.get_action_strength("move_horizontal") > 0:
print("CONTROLLER")
controller_ui = true controller_ui = true
if Input.is_action_just_released("restart") or (Input.is_action_pressed("controller_restart_left") and Input.is_action_pressed("controller_restart_right")): if Input.is_action_just_released("restart") or (Input.is_action_pressed("controller_restart_left") and Input.is_action_pressed("controller_restart_right")):
@@ -147,23 +162,29 @@ func _process(delta: float) -> void:
if Input.is_action_just_pressed("jump"): if Input.is_action_just_pressed("jump"):
%OldComputer.close() %OldComputer.close()
# Single jump from floor.
if is_on_floor(): if is_on_floor():
velocity.y = JUMP_VELOCITY velocity.y = JUMP_VELOCITY
# Air jump, if we have any left.
elif !is_on_floor() and jumps >= 1: elif !is_on_floor() and jumps >= 1:
#Air/double jump
jumps -= 1 jumps -= 1
velocity.y = JUMP_VELOCITY velocity.y = JUMP_VELOCITY
$Jetpack/DoubleJumpSound.play() $Jetpack/DoubleJumpSound.play()
if jumps == 0: if jumps == 0:
$Jetpack/JumpIndicator.hide() $Jetpack/JumpIndicator.hide()
# Pull the player down more quickly when they let go of the jump key.
# This improves responsiveness.
if Input.is_action_just_released("jump"): if Input.is_action_just_released("jump"):
velocity.y = -(0.001 * JUMP_VELOCITY) velocity.y = -(0.001 * JUMP_VELOCITY)
# Eventual wall grabs
if Input.is_action_pressed("jump") and is_on_wall_only(): if Input.is_action_pressed("jump") and is_on_wall_only():
print("WALL HANGING") print("Spider Rhombini, Spider Rhombini...")
#velocity.y = 0
#velocity.x = 0 # Eventual ceiling grabs
if Input.is_action_pressed("jump") and is_on_ceiling_only():
print("Does whatever, a Spider Rhombini does...")
var direction = Input.get_axis("move_left","move_right") var direction = Input.get_axis("move_left","move_right")
@@ -178,6 +199,9 @@ func _process(delta: float) -> void:
$Sprite2D.play("crouch") $Sprite2D.play("crouch")
$Parallax2D/Sprite2D.modulate = Color.CYAN $Parallax2D/Sprite2D.modulate = Color.CYAN
$MeditateMusic.volume_db = 0
$BackgroundMusic.volume_db = -100
for hidden_object in get_tree().get_nodes_in_group("Hidden"): for hidden_object in get_tree().get_nodes_in_group("Hidden"):
hidden_object.show() hidden_object.show()
@@ -193,26 +217,35 @@ func _process(delta: float) -> void:
if dashes == 0: if dashes == 0:
$Jetpack/DashIndicator.hide() $Jetpack/DashIndicator.hide()
# Slow the player down if they're on keyboard.
elif direction and !dashing: elif direction and !dashing:
velocity.x = direction * SPEED if controller_ui:
velocity.x = direction * SPEED
else:
velocity.x = direction * SPEED * 0.75
$Sprite2D.play("running") $Sprite2D.play("running")
$Sprite2D/HatSprite.play("running") #$Sprite2D/HatSprite.play("running")
elif !dashing: elif !dashing and !is_on_moving_platform:
velocity.x = move_toward(velocity.x, 0, FRICTION) velocity.x = move_toward(velocity.x, 0, FRICTION)
$Sprite2D.play("idle") $Sprite2D.play("idle")
$Sprite2D/HatSprite.play("idle") #$Sprite2D/HatSprite.play("idle")
$Parallax2D/Sprite2D.modulate = BACKGROUND_COLOR $Parallax2D/Sprite2D.modulate = BACKGROUND_COLOR
$MeditateMusic.volume_db = -100
$BackgroundMusic.volume_db = 0
if get_tree(): if get_tree():
for hidden_object in get_tree().get_nodes_in_group("Hidden"): for hidden_object in get_tree().get_nodes_in_group("Hidden"):
hidden_object.hide() hidden_object.hide()
#Falling to death. #Falling to death.
if position.y >= death_threshold: if position.y >= death_threshold:
print("SLASH KILL") print("SLASH KILL")
on_death(true) on_death(true)
#func get_floor_tags():
fall_timer += 1*delta fall_timer += 1*delta
if is_on_floor(): if is_on_floor():
fall_timer = 0 fall_timer = 0
File renamed without changes.
+67 -82
View File
@@ -1,35 +1,35 @@
[gd_scene format=3 uid="uid://pmnwck5v0ntm"] [gd_scene format=3 uid="uid://pmnwck5v0ntm"]
[ext_resource type="Script" uid="uid://cojhnj15psd2x" path="res://player_2d.gd" id="1_sy00s"] [ext_resource type="Script" uid="uid://cojhnj15psd2x" path="res://playerclass.gd" id="1_5duxp"]
[ext_resource type="Shader" uid="uid://mmf86jusrkrr" path="res://shaders/warp_shader.gdshader" id="3_gt2ls"] [ext_resource type="AudioStream" uid="uid://bkiipooikacjj" path="res://sound/patience.wav" id="2_stm81"]
[ext_resource type="Texture2D" uid="uid://dpdxs6gjmexgh" path="res://art/background.png" id="3_p3026"] [ext_resource type="Script" uid="uid://544kxhmunfcp" path="res://background_music.gd" id="3_ttanp"]
[ext_resource type="Script" uid="uid://544kxhmunfcp" path="res://background_music.gd" id="3_sxtm6"] [ext_resource type="AudioStream" uid="uid://8iiafankqo4i" path="res://sound/stepping.wav" id="4_yip33"]
[ext_resource type="Texture2D" uid="uid://biv3f67rqumak" path="res://art/level_start.png" id="4_nj6as"] [ext_resource type="Shader" uid="uid://mmf86jusrkrr" path="res://shaders/warp_shader.gdshader" id="5_neyal"]
[ext_resource type="Script" uid="uid://3bqq3mfbby2c" path="res://warp_shader.gd" id="4_pmt5n"] [ext_resource type="Script" uid="uid://3bqq3mfbby2c" path="res://warp_shader.gd" id="6_6fvs5"]
[ext_resource type="Texture2D" uid="uid://ddhhtwgtowokp" path="res://art/player/crouch/frame1.png" id="6_3prq1"] [ext_resource type="Texture2D" uid="uid://biv3f67rqumak" path="res://art/level_start.png" id="7_edptc"]
[ext_resource type="Texture2D" uid="uid://do1kisv06nhnk" path="res://art/player/crouch/frame0.png" id="6_lu0ka"] [ext_resource type="Texture2D" uid="uid://dpdxs6gjmexgh" path="res://art/background.png" id="8_mjiju"]
[ext_resource type="Texture2D" uid="uid://dyxbitw8hbd3s" path="res://art/player/crouch/frame2.png" id="7_lu0ka"] [ext_resource type="Texture2D" uid="uid://do1kisv06nhnk" path="res://art/player/crouch/frame0.png" id="9_2cwu2"]
[ext_resource type="Texture2D" uid="uid://bfyd1tro3s0gl" path="res://art/player/crystal2.png" id="7_oy4pt"] [ext_resource type="Texture2D" uid="uid://ddhhtwgtowokp" path="res://art/player/crouch/frame1.png" id="10_1fojg"]
[ext_resource type="Texture2D" uid="uid://dh7a1knyqn5nd" path="res://art/player/running/frame3.png" id="7_pmt5n"] [ext_resource type="Texture2D" uid="uid://dyxbitw8hbd3s" path="res://art/player/crouch/frame2.png" id="11_q60t1"]
[ext_resource type="Texture2D" uid="uid://lk0f1qyswyxv" path="res://art/player/running/frame1.png" id="8_3prq1"] [ext_resource type="Texture2D" uid="uid://m5djssna67e1" path="res://art/player/crouch/frame3.png" id="12_shx8o"]
[ext_resource type="Texture2D" uid="uid://yf13nw31k8ua" path="res://art/player/running/frame4.png" id="8_nj6as"] [ext_resource type="Texture2D" uid="uid://lk0f1qyswyxv" path="res://art/player/running/frame1.png" id="13_86mff"]
[ext_resource type="Texture2D" uid="uid://du5i0tg6u1lal" path="res://art/player/crystal3.png" id="8_ukfft"] [ext_resource type="Texture2D" uid="uid://lmje8plw76e1" path="res://art/player/running/frame2.png" id="14_x1dp2"]
[ext_resource type="Texture2D" uid="uid://lmje8plw76e1" path="res://art/player/running/frame2.png" id="9_lu0ka"] [ext_resource type="Texture2D" uid="uid://dh7a1knyqn5nd" path="res://art/player/running/frame3.png" id="15_ih5k4"]
[ext_resource type="Texture2D" uid="uid://bko8dvawpul3c" path="res://art/player/crystal4.png" id="9_ur4nw"] [ext_resource type="Texture2D" uid="uid://yf13nw31k8ua" path="res://art/player/running/frame4.png" id="16_uko10"]
[ext_resource type="Texture2D" uid="uid://m5djssna67e1" path="res://art/player/crouch/frame3.png" id="9_w0gjo"] [ext_resource type="Texture2D" uid="uid://dgq8el2qldlui" path="res://art/player/crystal.png" id="17_qiwkp"]
[ext_resource type="Texture2D" uid="uid://ba4kjeulthw1g" path="res://art/hats/dunce1.png" id="10_5s8kx"] [ext_resource type="Texture2D" uid="uid://bfyd1tro3s0gl" path="res://art/player/crystal2.png" id="18_0xmip"]
[ext_resource type="Texture2D" uid="uid://cn31x2l44je2t" path="res://art/dash_glow.png" id="10_ur4nw"] [ext_resource type="Texture2D" uid="uid://du5i0tg6u1lal" path="res://art/player/crystal3.png" id="19_kbmrq"]
[ext_resource type="Texture2D" uid="uid://biscdhn8jh8ha" path="res://art/jump_glow.png" id="11_3lee2"] [ext_resource type="Texture2D" uid="uid://bko8dvawpul3c" path="res://art/player/crystal4.png" id="20_eo5qq"]
[ext_resource type="Texture2D" uid="uid://cp1v5uhvbfws6" path="res://art/hats/dunce2.png" id="11_4apft"] [ext_resource type="Texture2D" uid="uid://d1tj8sw2hiwgw" path="res://art/dash_particle.png" id="21_esbp8"]
[ext_resource type="Texture2D" uid="uid://dgq8el2qldlui" path="res://art/player/crystal.png" id="12_4apft"] [ext_resource type="Texture2D" uid="uid://cn31x2l44je2t" path="res://art/dash_glow.png" id="22_ek43q"]
[ext_resource type="AudioStream" uid="uid://bkiipooikacjj" path="res://sound/patience.wav" id="12_5s8kx"] [ext_resource type="Texture2D" uid="uid://deacp021ytuew" path="res://art/jump_particle.png" id="23_lbx0d"]
[ext_resource type="Texture2D" uid="uid://d1tj8sw2hiwgw" path="res://art/dash_particle.png" id="16_ur4nw"] [ext_resource type="Texture2D" uid="uid://biscdhn8jh8ha" path="res://art/jump_glow.png" id="24_k0rqh"]
[ext_resource type="Texture2D" uid="uid://deacp021ytuew" path="res://art/jump_particle.png" id="18_fat58"] [ext_resource type="AudioStream" uid="uid://dc7bd22vwkf34" path="res://sound/death.wav" id="25_g8wc1"]
[ext_resource type="AudioStream" uid="uid://b4dkj4gmvk7bg" path="res://sound/double_jump.wav" id="20_1741q"] [ext_resource type="AudioStream" uid="uid://b4dkj4gmvk7bg" path="res://sound/double_jump.wav" id="26_mlgy2"]
[ext_resource type="AudioStream" uid="uid://dc7bd22vwkf34" path="res://sound/death.wav" id="20_l50qk"] [ext_resource type="AudioStream" uid="uid://q7eau835xuja" path="res://sound/secret.wav" id="27_ng6ly"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_pmt5n"] [sub_resource type="ShaderMaterial" id="ShaderMaterial_pmt5n"]
shader = ExtResource("3_gt2ls") shader = ExtResource("5_neyal")
[sub_resource type="QuadMesh" id="QuadMesh_nj6as"] [sub_resource type="QuadMesh" id="QuadMesh_nj6as"]
size = Vector2(1280, 720) size = Vector2(1280, 720)
@@ -38,16 +38,16 @@ size = Vector2(1280, 720)
animations = [{ animations = [{
"frames": [{ "frames": [{
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("6_lu0ka") "texture": ExtResource("9_2cwu2")
}, { }, {
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("6_3prq1") "texture": ExtResource("10_1fojg")
}, { }, {
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("7_lu0ka") "texture": ExtResource("11_q60t1")
}, { }, {
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("9_w0gjo") "texture": ExtResource("12_shx8o")
}], }],
"loop": 1, "loop": 1,
"name": &"crouch", "name": &"crouch",
@@ -55,10 +55,10 @@ animations = [{
}, { }, {
"frames": [{ "frames": [{
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("8_3prq1") "texture": ExtResource("13_86mff")
}, { }, {
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("9_lu0ka") "texture": ExtResource("14_x1dp2")
}], }],
"loop": 1, "loop": 1,
"name": &"idle", "name": &"idle",
@@ -66,58 +66,36 @@ animations = [{
}, { }, {
"frames": [{ "frames": [{
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("7_pmt5n") "texture": ExtResource("15_ih5k4")
}, { }, {
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("8_nj6as") "texture": ExtResource("16_uko10")
}, { }, {
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("8_3prq1") "texture": ExtResource("13_86mff")
}, { }, {
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("9_lu0ka") "texture": ExtResource("14_x1dp2")
}], }],
"loop": 1, "loop": 1,
"name": &"running", "name": &"running",
"speed": 12.0 "speed": 12.0
}] }]
[sub_resource type="SpriteFrames" id="SpriteFrames_pmt5n"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("10_5s8kx")
}],
"loop": 1,
"name": &"idle",
"speed": 6.0
}, {
"frames": [{
"duration": 1.0,
"texture": ExtResource("11_4apft")
}, {
"duration": 1.0,
"texture": ExtResource("10_5s8kx")
}],
"loop": 1,
"name": &"running",
"speed": 6.0
}]
[sub_resource type="SpriteFrames" id="SpriteFrames_5s8kx"] [sub_resource type="SpriteFrames" id="SpriteFrames_5s8kx"]
animations = [{ animations = [{
"frames": [{ "frames": [{
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("12_4apft") "texture": ExtResource("17_qiwkp")
}, { }, {
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("7_oy4pt") "texture": ExtResource("18_0xmip")
}, { }, {
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("8_ukfft") "texture": ExtResource("19_kbmrq")
}, { }, {
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("9_ur4nw") "texture": ExtResource("20_eo5qq")
}], }],
"loop": 1, "loop": 1,
"name": &"idle", "name": &"idle",
@@ -128,14 +106,22 @@ animations = [{
radius = 6.0 radius = 6.0
height = 12.0 height = 12.0
[node name="Player2D" type="CharacterBody2D" unique_id=889851478] [node name="PlayerClass" type="CharacterBody2D" unique_id=889851478]
safe_margin = 0.06 safe_margin = 0.06
script = ExtResource("1_sy00s") script = ExtResource("1_5duxp")
[node name="BackgroundMusic" type="AudioStreamPlayer2D" parent="." unique_id=299359239] [node name="BackgroundMusic" type="AudioStreamPlayer2D" parent="." unique_id=299359239]
stream = ExtResource("12_5s8kx") stream = ExtResource("2_stm81")
autoplay = true
playback_type = 1 playback_type = 1
script = ExtResource("3_sxtm6") script = ExtResource("3_ttanp")
[node name="MeditateMusic" type="AudioStreamPlayer2D" parent="." unique_id=1027402564]
stream = ExtResource("4_yip33")
volume_db = -80.0
autoplay = true
playback_type = 1
script = ExtResource("3_ttanp")
[node name="CanvasLayer2" type="CanvasLayer" parent="." unique_id=1854423107] [node name="CanvasLayer2" type="CanvasLayer" parent="." unique_id=1854423107]
@@ -143,11 +129,11 @@ script = ExtResource("3_sxtm6")
material = SubResource("ShaderMaterial_pmt5n") material = SubResource("ShaderMaterial_pmt5n")
position = Vector2(0, -1) position = Vector2(0, -1)
mesh = SubResource("QuadMesh_nj6as") mesh = SubResource("QuadMesh_nj6as")
script = ExtResource("4_pmt5n") script = ExtResource("6_6fvs5")
[node name="Sprite2D" type="Sprite2D" parent="CanvasLayer2/WarpShader" unique_id=1651549733] [node name="Sprite2D" type="Sprite2D" parent="CanvasLayer2/WarpShader" unique_id=1651549733]
visible = false visible = false
texture = ExtResource("4_nj6as") texture = ExtResource("7_edptc")
[node name="Parallax2D" type="Parallax2D" parent="." unique_id=270393374] [node name="Parallax2D" type="Parallax2D" parent="." unique_id=270393374]
repeat_size = Vector2(1280, 720) repeat_size = Vector2(1280, 720)
@@ -157,7 +143,7 @@ ignore_camera_scroll = true
[node name="Sprite2D" type="Sprite2D" parent="Parallax2D" unique_id=1267606565] [node name="Sprite2D" type="Sprite2D" parent="Parallax2D" unique_id=1267606565]
scale = Vector2(3, 3) scale = Vector2(3, 3)
texture = ExtResource("3_p3026") texture = ExtResource("8_mjiju")
[node name="Camera2D" type="Camera2D" parent="." unique_id=962368438] [node name="Camera2D" type="Camera2D" parent="." unique_id=962368438]
zoom = Vector2(2.2, 2.2) zoom = Vector2(2.2, 2.2)
@@ -173,14 +159,10 @@ animation = &"crouch"
autoplay = "idle" autoplay = "idle"
frame_progress = 0.030440537 frame_progress = 0.030440537
[node name="HatSprite" type="AnimatedSprite2D" parent="Sprite2D" unique_id=1954184475] [node name="HatSprite" type="Sprite2D" parent="Sprite2D" unique_id=122612770]
visible = false visible = false
position = Vector2(0, -13) position = Vector2(0, -13)
scale = Vector2(0.9, 0.9) scale = Vector2(0.9, 0.9)
sprite_frames = SubResource("SpriteFrames_pmt5n")
animation = &"running"
autoplay = "idle"
frame_progress = 0.8061519
[node name="DaydreamSprite" type="Sprite2D" parent="Sprite2D" unique_id=67766652] [node name="DaydreamSprite" type="Sprite2D" parent="Sprite2D" unique_id=67766652]
@@ -192,36 +174,39 @@ autoplay = "idle"
[node name="DashIndicator" type="CPUParticles2D" parent="Jetpack" unique_id=1424397604] [node name="DashIndicator" type="CPUParticles2D" parent="Jetpack" unique_id=1424397604]
position = Vector2(-11, -2) position = Vector2(-11, -2)
texture = ExtResource("16_ur4nw") texture = ExtResource("21_esbp8")
lifetime = 0.1 lifetime = 0.1
gravity = Vector2(0, 0) gravity = Vector2(0, 0)
[node name="DashIndicatorGlow" type="PointLight2D" parent="Jetpack/DashIndicator" unique_id=1334369973] [node name="DashIndicatorGlow" type="PointLight2D" parent="Jetpack/DashIndicator" unique_id=1334369973]
position = Vector2(-1, 0) position = Vector2(-1, 0)
energy = 10.0 energy = 10.0
texture = ExtResource("10_ur4nw") texture = ExtResource("22_ek43q")
[node name="JumpIndicator" type="CPUParticles2D" parent="Jetpack" unique_id=1519478958] [node name="JumpIndicator" type="CPUParticles2D" parent="Jetpack" unique_id=1519478958]
position = Vector2(13, -2) position = Vector2(13, -2)
texture = ExtResource("18_fat58") texture = ExtResource("23_lbx0d")
lifetime = 0.1 lifetime = 0.1
gravity = Vector2(0, 0) gravity = Vector2(0, 0)
[node name="JumpIndicatorGlow" type="PointLight2D" parent="Jetpack/JumpIndicator" unique_id=920409859] [node name="JumpIndicatorGlow" type="PointLight2D" parent="Jetpack/JumpIndicator" unique_id=920409859]
position = Vector2(-1, 0) position = Vector2(-1, 0)
energy = 10.0 energy = 10.0
texture = ExtResource("11_3lee2") texture = ExtResource("24_k0rqh")
[node name="JumpSound" type="AudioStreamPlayer2D" parent="Jetpack" unique_id=2009313321] [node name="JumpSound" type="AudioStreamPlayer2D" parent="Jetpack" unique_id=2009313321]
[node name="DashSound" type="AudioStreamPlayer2D" parent="Jetpack" unique_id=403353396] [node name="DashSound" type="AudioStreamPlayer2D" parent="Jetpack" unique_id=403353396]
[node name="DeathSound" type="AudioStreamPlayer2D" parent="Jetpack" unique_id=1365918564] [node name="DeathSound" type="AudioStreamPlayer2D" parent="Jetpack" unique_id=1365918564]
stream = ExtResource("20_l50qk") stream = ExtResource("25_g8wc1")
[node name="DoubleJumpSound" type="AudioStreamPlayer2D" parent="Jetpack" unique_id=1131911389] [node name="DoubleJumpSound" type="AudioStreamPlayer2D" parent="Jetpack" unique_id=1131911389]
stream = ExtResource("20_1741q") stream = ExtResource("26_mlgy2")
[node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=1294571021] [node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=1294571021]
position = Vector2(0, 3) position = Vector2(0, 3)
shape = SubResource("CapsuleShape2D_ix7pg") shape = SubResource("CapsuleShape2D_ix7pg")
[node name="HatSound" type="AudioStreamPlayer2D" parent="." unique_id=508539941]
stream = ExtResource("27_ng6ly")
+88 -1
View File
@@ -25,6 +25,8 @@ window/stretch/mode="canvas_items"
[global_group] [global_group]
Hidden="" Hidden=""
"Hidden in editor"=""
"Debug Mode Only"=""
[gui] [gui]
@@ -205,10 +207,27 @@ dash={
"location": 0, "location": 0,
"echo": false, "echo": false,
"script": null "script": null
), Object(InputEventKey,
"resource_local_to_scene": false,
"resource_name": "",
"device": -1,
"window_id": 0,
"alt_pressed": false,
"shift_pressed": true,
"ctrl_pressed": false,
"meta_pressed": false,
"pressed": false,
"keycode": 0,
"physical_keycode": 4194325,
"key_label": 0,
"unicode": 0,
"location": 0,
"echo": false,
"script": null
)] )]
} }
dash_down={ dash_down={
"deadzone": 0.2, "deadzone": 0.4,
"events": [Object(InputEventJoypadMotion, "events": [Object(InputEventJoypadMotion,
"resource_local_to_scene": false, "resource_local_to_scene": false,
"resource_name": "", "resource_name": "",
@@ -233,6 +252,23 @@ dash_down={
"location": 0, "location": 0,
"echo": false, "echo": false,
"script": null "script": null
), Object(InputEventKey,
"resource_local_to_scene": false,
"resource_name": "",
"device": -1,
"window_id": 0,
"alt_pressed": false,
"shift_pressed": false,
"ctrl_pressed": false,
"meta_pressed": false,
"pressed": false,
"keycode": 0,
"physical_keycode": 4194322,
"key_label": 0,
"unicode": 0,
"location": 0,
"echo": false,
"script": null
)] )]
} }
dash_left={ dash_left={
@@ -261,6 +297,23 @@ dash_left={
"location": 0, "location": 0,
"echo": false, "echo": false,
"script": null "script": null
), Object(InputEventKey,
"resource_local_to_scene": false,
"resource_name": "",
"device": -1,
"window_id": 0,
"alt_pressed": false,
"shift_pressed": false,
"ctrl_pressed": false,
"meta_pressed": false,
"pressed": false,
"keycode": 0,
"physical_keycode": 4194319,
"key_label": 0,
"unicode": 0,
"location": 0,
"echo": false,
"script": null
)] )]
} }
dash_right={ dash_right={
@@ -289,6 +342,23 @@ dash_right={
"location": 0, "location": 0,
"echo": false, "echo": false,
"script": null "script": null
), Object(InputEventKey,
"resource_local_to_scene": false,
"resource_name": "",
"device": -1,
"window_id": 0,
"alt_pressed": false,
"shift_pressed": false,
"ctrl_pressed": false,
"meta_pressed": false,
"pressed": false,
"keycode": 0,
"physical_keycode": 4194321,
"key_label": 0,
"unicode": 0,
"location": 0,
"echo": false,
"script": null
)] )]
} }
dash_up={ dash_up={
@@ -317,6 +387,23 @@ dash_up={
"location": 0, "location": 0,
"echo": false, "echo": false,
"script": null "script": null
), Object(InputEventKey,
"resource_local_to_scene": false,
"resource_name": "",
"device": -1,
"window_id": 0,
"alt_pressed": false,
"shift_pressed": false,
"ctrl_pressed": false,
"meta_pressed": false,
"pressed": false,
"keycode": 0,
"physical_keycode": 4194320,
"key_label": 0,
"unicode": 0,
"location": 0,
"echo": false,
"script": null
)] )]
} }
restart={ restart={
+23
View File
@@ -0,0 +1,23 @@
extends Node2D
@export var max_distance = 260.0
@export var moving = true
var alt_position = Vector2(position.x + max_distance,0)
@export var move_speed = 0.0
func _ready() -> void:
alt_position = Vector2(position.x + max_distance,0)
func _process(delta: float) -> void:
if position.x != alt_position.x:
position.x = move_toward(position.x, alt_position.x, move_speed)
else:
moving = false
%Player2D.is_on_moving_platform = false
#%Player2D.platform_speed = 0.0
func on_contact(body: Node2D) -> void:
if body==%Player2D and %Player2D.death_cooldown == 0:
print("SLASH KILL")
%Player2D/Jetpack/DeathSound.play()
%Player2D.on_death(false,%Player2D.position)
+1
View File
@@ -0,0 +1 @@
uid://dxgg37v8cxi76
+54
View File
@@ -0,0 +1,54 @@
[gd_scene format=3 uid="uid://c13khrhjy5nrj"]
[ext_resource type="Script" uid="uid://dxgg37v8cxi76" path="res://saw.gd" id="1_reoe3"]
[ext_resource type="Texture2D" uid="uid://cpftgnwkpx1rp" path="res://art/saw.png" id="2_b8b65"]
[ext_resource type="Texture2D" uid="uid://dfdjachaibh2u" path="res://art/saw2.png" id="3_tse5f"]
[ext_resource type="Texture2D" uid="uid://cwvvgwo87pct0" path="res://art/saw3.png" id="4_yv4k5"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_f3sb7"]
size = Vector2(32, 26)
[sub_resource type="SpriteFrames" id="SpriteFrames_lmieu"]
animations = [{
"frames": [{
"duration": 0.3,
"texture": ExtResource("2_b8b65")
}, {
"duration": 0.3,
"texture": ExtResource("3_tse5f")
}, {
"duration": 0.3,
"texture": ExtResource("4_yv4k5")
}],
"loop": 1,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_3uo2v"]
size = Vector2(34, 28)
[node name="Saw" type="RigidBody2D" unique_id=1409784601]
gravity_scale = 0.0
freeze = true
script = ExtResource("1_reoe3")
[node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=1866755047]
shape = SubResource("RectangleShape2D_f3sb7")
[node name="Sprite2D" type="AnimatedSprite2D" parent="." unique_id=790714481]
texture_filter = 1
sprite_frames = SubResource("SpriteFrames_lmieu")
autoplay = "default"
frame_progress = 0.39573506
[node name="Area2D" type="Area2D" parent="." unique_id=1910272404]
position = Vector2(19, 7)
rotation = -6.834404e-05
[node name="ShapeCast2D" type="CollisionShape2D" parent="Area2D" unique_id=934904308]
position = Vector2(-18.999523, -7.0012984)
shape = SubResource("RectangleShape2D_3uo2v")
[connection signal="body_entered" from="Area2D" to="." method="on_contact"]
[connection signal="body_exited" from="Area2D" to="." method="on_leave"]
+1
View File
@@ -0,0 +1 @@
uDgnAB+LCAAAAAAAAArt3VtvG1eWgNG/YvDZCVjUjfJbYqcv6KRjWJ7OQyMPZapkF0yxBJJy2gjy36eKF92czojdU/bZPCuYARJ+JUUXmutkNmv2r4MP1XxRN7PBs8HR18PB08G8ah95M3i2nF9XTwdvp82bcvpq9dg3l831bDl4Nvz66OngzdXl4FkxGj4dLOvL6qx+OyuX1/Pq26pcLgbPDp8OFpNyWv31fPBsdHDwdPChmV5fVu1HfN19xLycvH9Zzs6Wzbx8W/1j+xUUt6n9HP8cttf+l//789PB9aKan5WXV9Oq+5zbBz7Olu9ezqtFtdw8+mbaTN53f//roF58d3m1/Dh4dlFOF1X3E7lqv6ubf1wsy2X7nZyePh1Muu9qtv6o7VXrn9usWVZn1fJs+0P4qvjtaexrNt/9f3pR+yM+n19frn9W3S97/e+srifT+rwqZzcfW16f183zaX3VfeBx+0R6s35KtU+OadNcrZ5bzcVF+5trn4m3T6zh1+PT1V8nx8XRuDgctddfdU+xal41XW6vvVr9wttn+t/qyfsnRftkX7TP6POz5no+aT/F4KKctM/Ij9vHuy/gwaUv22fn6uHtAz/Ui0U9e3v75Lh9Yv3Y/pmZt9/b4Nmvm3/z9iNnZfcVd39XL160P5Sbj35fz7pLls2sauMv5YfuskX5y+DBH6Crejl5t/n7ZrJcXdf+7Xm1vJ5V22/2uv2UP9Xny3ebP7EXl7d/gIfdP74ql3X7oxl1/7S4frN5fNbUi+3naBaTejot2x/Ktz9tvph69aXdhh/qf3168Y+3X9OdR8+qy3r1rX1y/Yu7X/j1rF40s3809aRa/9rXD9y7plwu29/E6h+Go+H6r9PD0/Z/hqNx94OYlB+7WozX7aQ4Gh0dnRyMu++0/QNcz7p6fPjwGTOvplW5+fZP1s+n8agoxsfD4+PNj/272Ydq2lzd/Ji7x15s/32/80EX9bR9Dv7QdE+E9hn8y1W5WAy2D5+tP1Mxal9Lrpft07r7JCfr72g0Pi6Go9HpUfdltT+AcjZZ/UuLYvNEPyhOTk6H3evQ+pPd/cpGR9tH/1Z9fN29qK6epasv+Xxef1h/ps1Prmh/bEVx3H0Vl835N3/8s22vuPl2u39L+89ntz/S4eqBV7c/xuJo/RmOTo+Hh8eHh6erC143L9dP4e1HvG7+tPpq7z1yefMFX19+25x//L5laLp52nePtd/XbFFXs+UmDD8Jt7+YYvOtFMPDg+G4GJ0+uHLz9Ry2l20/y9+7Pwl3fhp3Hr35vL/zy7i56HkzbeabP3yLu69D02r2drn687v5og5PjscH7XO0++HU5/XLefN2Xrbf/bhYP/Bi9Sk7dQ5unlHfXzSvVhDd/WW3D76orpbbH+zNg2fvyqs7f3xXT9qbT3B08zx+8OGL7qMePLa97sFnbIG9+Xyr38/6gXsfWc4ePLK+5sFnml40r6vLq6YlerJ5YfytI+bRZhTDg17QOJuV8+qRajy4FhvYwAY2sJEuG0f9qPGX+qt35fKRbDy8mBvc4AY3uJGuG4fjftwoZ+dPnk/Lq8fS8en19KAHPehBj3T16P4c96DH82b2tnykHA+upQY1qEENanxeNX5uXypnixaNy/ZX9XBM/kcI3B9+nJ7cYeBVtZw3T1Zvdnhy+gkGk3f11eoF564Gv/shTGACE5jAhM9qQnvpZNJctp+h7lBYvb4fDR88uiVi/Vr7zf00eNm9HD4Zdqf7cn5VvX1bd688q//yGN976ObFePN57pbBy//5/uy71X8irF92f9z858lXxb3/VOne9vXiet69vs5uv/vtf6F81T4wLk6GxfHB8UFxeHA6Gp7e/2+lRys3Kg7/jXKj492Zu/0YznGOc5zj3Bd3bnSwk3M/Lpb1rH2xeTI8/JS60+739ljrPkFuuINx7T//h6Qd3/3vtj9f18ty/sj/+93DiyEGMYhBDGJfGrG1O/elui/PA8Vi0tXd33VD13fTarKc15MnL+ty1jySsH/3QShDGcpQhjKUfRbKju5I9m37yvFIv+5fSi1qUYta1KLWZ1FrNRS8vU91NdR65H2q968lF7nIRS5ykcvUC13oQhe60IUuUy+UoQxlKEPZ3lFm6kUtalGLWtSKo5apF7nIRS5ykSuWXKZe6EIXutCFrmB0mXqhDGUoQxnKkqHs5/VF6/+nid0f1Em9/Lh9Xt18ZLFGT9d1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1XU+1F4l/fbrnh55u9/zQPT90zw/d80P3/NBT6p4fuq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7H7Scnp91fJ8XB+PTkZHiU+Jere7roYbqni+7ponu66F+8e7roni66p4uu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu6/ofdLdL6Z4uuqeL/sW7p4vu6aJ7uuhfvHu66J4uuq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7n190upXu66J4u+hfvni66p4vu6aJ/8e7ponu66Lqu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67q+r71I/OvTdT3d7vVD13WvH7que/3QdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdX1fe5H416frerrd64eu614/dF33+qHruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruq7ruv64XiT+9em6nm73+qHrutcPXde9fui6ruu6ruu6ruu6ruu6ruu6ruu6ruu6ruu6ruu6ruu6ruu6ruu6ruv6/92LxL8+3fNDT7d7fuieH7rnh+75oXt+6Cl1zw9d13Vd13Vd13Vd13Vd13Vd13Vd13Vd13Vd13Vd13Vd13Vd13Vd1+P2k5PT7q+T4mB8enIyPEr8y9U9XfQw3dNF93TRPV30L949XXRPF93TRdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1/Q+626V0Txfd00X/4t3TRfd00T1d9C/ePV10Txdd13Vd13Vd13Vd13Vd13Vd13Vd13Vd13Vd13Vd13Vd13Vd13Vd1/PrbpfSPV10Txf9i3dPF93TRfd00b9493TRPV10Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdd1Xdf1GH1crNZtn47GhyeHh6PjxL9cXdfT7V5OdF33cqLrelrdy4mu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu63vS3S6l67qXE13X0+peTnRd93Ki67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu67qu63oe3f87ZV3XvZzoup5W93Ki67qXE13XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3XdV3Line truncated
Binary file not shown.
+24
View File
@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://clwejc75syhn6"
path="res://.godot/imported/chiptune_await.wav-b980b3ef496cc8acae8793155492f246.sample"
[deps]
source_file="res://sound/chiptune_await.wav"
dest_files=["res://.godot/imported/chiptune_await.wav-b980b3ef496cc8acae8793155492f246.sample"]
[params]
force/8_bit=true
force/mono=true
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=2
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0
+4 -4
View File
@@ -12,13 +12,13 @@ dest_files=["res://.godot/imported/fog.wav-eb476345f22c2abcdb6da3b27b036a4b.samp
[params] [params]
force/8_bit=false force/8_bit=true
force/mono=false force/mono=true
force/max_rate=false force/max_rate=false
force/max_rate_hz=44100 force/max_rate_hz=44100
edit/trim=false edit/trim=false
edit/normalize=false edit/normalize=false
edit/loop_mode=0 edit/loop_mode=2
edit/loop_begin=0 edit/loop_begin=0
edit/loop_end=-1 edit/loop_end=-1
compress/mode=2 compress/mode=0
+3 -3
View File
@@ -12,8 +12,8 @@ dest_files=["res://.godot/imported/stepping.wav-b54d66075ebecd62d08e6d57f5a8c5df
[params] [params]
force/8_bit=false force/8_bit=true
force/mono=false force/mono=true
force/max_rate=false force/max_rate=false
force/max_rate_hz=44100 force/max_rate_hz=44100
edit/trim=false edit/trim=false
@@ -21,4 +21,4 @@ edit/normalize=false
edit/loop_mode=2 edit/loop_mode=2
edit/loop_begin=0 edit/loop_begin=0
edit/loop_end=-1 edit/loop_end=-1
compress/mode=2 compress/mode=0
+4 -4
View File
@@ -12,13 +12,13 @@ dest_files=["res://.godot/imported/stones.wav-7997832a36ac3b5f76c1d2e10e25b972.s
[params] [params]
force/8_bit=false force/8_bit=true
force/mono=false force/mono=true
force/max_rate=false force/max_rate=false
force/max_rate_hz=44100 force/max_rate_hz=44100
edit/trim=false edit/trim=false
edit/normalize=false edit/normalize=false
edit/loop_mode=0 edit/loop_mode=2
edit/loop_begin=0 edit/loop_begin=0
edit/loop_end=-1 edit/loop_end=-1
compress/mode=2 compress/mode=0
-1
View File
@@ -11,4 +11,3 @@ func on_contact(body: Node2D) -> void:
print("SLASH KILL") print("SLASH KILL")
%Player2D/Jetpack/DeathSound.play() %Player2D/Jetpack/DeathSound.play()
%Player2D.on_death(false,%Player2D.position) %Player2D.on_death(false,%Player2D.position)
print(body)
+15 -11
View File
@@ -11,7 +11,6 @@ func _ready() -> void:
add_to_group("TELEPORTERS") add_to_group("TELEPORTERS")
func check_for_pair() -> String: func check_for_pair() -> String:
#print(paired_teleporter)
return paired_teleporter return paired_teleporter
func disable(): func disable():
@@ -29,15 +28,20 @@ func _physics_process(delta: float) -> void:
pass pass
func _on_contact(body) -> void: func _on_contact(body) -> void:
if not enabled:
return
#get_tree().call_group("TELEPORTERS","disable") #get_tree().call_group("TELEPORTERS","disable")
for teleporter in get_tree().get_nodes_in_group("TELEPORTERS"): for teleporter in get_tree().get_nodes_in_group("TELEPORTERS"):
if teleporter != self: if teleporter == self:
if teleporter.paired_teleporter == paired_teleporter and enabled: continue
%Player2D.get_node("Camera2D").position_smoothing_enabled = false
if %Player2D.teleport_cooldown > 0: if teleporter.paired_teleporter == paired_teleporter:
return %Player2D.get_node("Camera2D").position_smoothing_enabled = false
body.set_position(teleporter.get_position()) if %Player2D.teleport_cooldown > 0:
%Player2D.on_teleport() return
disable() body.set_position(teleporter.global_position)
await get_tree().create_timer(cooldown).timeout %Player2D.on_teleport()
enable() disable()
await get_tree().create_timer(cooldown).timeout
enable()
+1 -1
View File
@@ -1,7 +1,7 @@
[gd_scene format=3 uid="uid://bos6oh7nwyeca"] [gd_scene format=3 uid="uid://bos6oh7nwyeca"]
[ext_resource type="Script" uid="uid://0o8303qahgvi" path="res://vertical_long_block.gd" id="1_23eij"] [ext_resource type="Script" uid="uid://0o8303qahgvi" path="res://vertical_long_block.gd" id="1_23eij"]
[ext_resource type="PackedScene" uid="uid://ckqable762x8v" path="res://block.tscn" id="1_noju1"] [ext_resource type="PackedScene" uid="uid://ckqable762x8v" path="res://level_editor/blocks/block_simple.tscn" id="1_noju1"]
[node name="VerticalLongBlock" type="RigidBody2D" unique_id=925152188] [node name="VerticalLongBlock" type="RigidBody2D" unique_id=925152188]
rotation = 1.5707964 rotation = 1.5707964
-2
View File
@@ -10,7 +10,5 @@ func _ready() -> void:
# Called every frame. 'delta' is the elapsed time since the previous frame. # Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void: func _process(delta: float) -> void:
#print(DisplayServer.window_get_size().x)
#print(DisplayServer.window_get_size().y)
mesh.size.x = DisplayServer.window_get_size().x * 4 mesh.size.x = DisplayServer.window_get_size().x * 4
mesh.size.y = DisplayServer.window_get_size().y * 4 mesh.size.y = DisplayServer.window_get_size().y * 4
Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

@@ -1,43 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cw13qw66wv4bv"
path="res://.godot/imported/index.apple-touch-icon.png-4f839b98ddf0f20283844c698bece728.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://web_released/index.apple-touch-icon.png"
dest_files=["res://.godot/imported/index.apple-touch-icon.png-4f839b98ddf0f20283844c698bece728.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/high_quality_mode=0
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
mipmaps/preserve_alpha_test_coverage=false
mipmaps/alpha_test_threshold=0.5
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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 -1
View File
@@ -111,7 +111,7 @@ body {
<script src="index.js"></script> <script src="index.js"></script>
<script> <script>
const GODOT_CONFIG = {"args":[],"canvasResizePolicy":2,"emscriptenPoolSize":8,"ensureCrossOriginIsolationHeaders":true,"executable":"index","experimentalVK":false,"fileSizes":{"index.pck":15227116,"index.wasm":32537295},"focusCanvas":true,"gdextensionLibs":[],"godotPoolSize":4}; const GODOT_CONFIG = {"args":[],"canvasResizePolicy":2,"emscriptenPoolSize":8,"ensureCrossOriginIsolationHeaders":true,"executable":"index","experimentalVK":false,"fileSizes":{"index.pck":19255648,"index.wasm":32537295},"focusCanvas":true,"gdextensionLibs":[],"godotPoolSize":4};
const GODOT_THREADS_ENABLED = false; const GODOT_THREADS_ENABLED = false;
const engine = new Engine(GODOT_CONFIG); const engine = new Engine(GODOT_CONFIG);
Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 496 B

Binary file not shown.
Binary file not shown.
Binary file not shown.
+1857 -25
View File
File diff suppressed because it is too large. Load diff
+26 -5
View File
@@ -2,13 +2,15 @@
[ext_resource type="Script" uid="uid://boovn4st1uq41" path="res://rich_text_label.gd" id="1_xdth8"] [ext_resource type="Script" uid="uid://boovn4st1uq41" path="res://rich_text_label.gd" id="1_xdth8"]
[ext_resource type="Script" uid="uid://bds4m5we8nwe3" path="res://fps_label.gd" id="2_vef27"] [ext_resource type="Script" uid="uid://bds4m5we8nwe3" path="res://fps_label.gd" id="2_vef27"]
[ext_resource type="PackedScene" uid="uid://pmnwck5v0ntm" path="res://player_2d.tscn" id="3_mu6c3"] [ext_resource type="PackedScene" uid="uid://pmnwck5v0ntm" path="res://playerclass.tscn" id="3_mu6c3"]
[ext_resource type="PackedScene" uid="uid://ckqable762x8v" path="res://block.tscn" id="4_46256"] [ext_resource type="PackedScene" uid="uid://ckqable762x8v" path="res://level_editor/blocks/block_simple.tscn" id="4_46256"]
[ext_resource type="PackedScene" uid="uid://dx4pfup3sbk0f" path="res://long_block.tscn" id="5_mu6c3"] [ext_resource type="PackedScene" uid="uid://dx4pfup3sbk0f" path="res://long_block.tscn" id="5_mu6c3"]
[ext_resource type="PackedScene" uid="uid://bos6oh7nwyeca" path="res://vertical_long_block.tscn" id="6_46256"] [ext_resource type="PackedScene" uid="uid://bos6oh7nwyeca" path="res://vertical_long_block.tscn" id="6_46256"]
[ext_resource type="PackedScene" uid="uid://dbk4f76ux6dsv" path="res://wallspike.tscn" id="7_46256"] [ext_resource type="PackedScene" uid="uid://dbk4f76ux6dsv" path="res://wallspike.tscn" id="7_46256"]
[ext_resource type="PackedScene" uid="uid://b1ccvtwwb1cl7" path="res://long_floor_spike.tscn" id="8_xjnkp"] [ext_resource type="PackedScene" uid="uid://b1ccvtwwb1cl7" path="res://long_floor_spike.tscn" id="8_xjnkp"]
[ext_resource type="PackedScene" uid="uid://biot4cuwgohvo" path="res://longer_block.tscn" id="9_mf6h1"] [ext_resource type="PackedScene" uid="uid://biot4cuwgohvo" path="res://longer_block.tscn" id="9_mf6h1"]
[ext_resource type="PackedScene" uid="uid://byh115n12sgvt" path="res://teleporter.tscn" id="10_mf6h1"]
[ext_resource type="PackedScene" uid="uid://dr8h8xij3qw2h" path="res://pharaoh.tscn" id="11_k023l"]
[node name="World" type="Node2D" unique_id=1327991900] [node name="World" type="Node2D" unique_id=1327991900]
process_mode = 3 process_mode = 3
@@ -98,7 +100,7 @@ position = Vector2(1150, 262)
position = Vector2(1283, 353) position = Vector2(1283, 353)
[node name="VerticalLongBlock7" parent="Tutorial2" unique_id=609940648 instance=ExtResource("6_46256")] [node name="VerticalLongBlock7" parent="Tutorial2" unique_id=609940648 instance=ExtResource("6_46256")]
position = Vector2(1383, -773) position = Vector2(1383, -693)
[node name="VerticalLongBlock8" parent="Tutorial2" unique_id=310353136 instance=ExtResource("6_46256")] [node name="VerticalLongBlock8" parent="Tutorial2" unique_id=310353136 instance=ExtResource("6_46256")]
position = Vector2(1520, -978) position = Vector2(1520, -978)
@@ -243,7 +245,7 @@ position = Vector2(1306, -1932.4297)
rotation = -1.5707964 rotation = -1.5707964
[node name="WallSpike52" parent="Tutorial2" unique_id=387238972 instance=ExtResource("7_46256")] [node name="WallSpike52" parent="Tutorial2" unique_id=387238972 instance=ExtResource("7_46256")]
position = Vector2(1457, -1918) position = Vector2(1306, -1918)
rotation = -1.5707964 rotation = -1.5707964
[node name="WallSpike53" parent="Tutorial2" unique_id=558753446 instance=ExtResource("7_46256")] [node name="WallSpike53" parent="Tutorial2" unique_id=558753446 instance=ExtResource("7_46256")]
@@ -284,7 +286,7 @@ position = Vector2(1061, -537)
position = Vector2(1222, -381) position = Vector2(1222, -381)
[node name="LongerBlock11" parent="Tutorial2" unique_id=157885476 instance=ExtResource("9_mf6h1")] [node name="LongerBlock11" parent="Tutorial2" unique_id=157885476 instance=ExtResource("9_mf6h1")]
position = Vector2(1558, -381) position = Vector2(1456, -381)
[node name="Spike5" parent="Tutorial2" unique_id=1650143102 instance=ExtResource("8_xjnkp")] [node name="Spike5" parent="Tutorial2" unique_id=1650143102 instance=ExtResource("8_xjnkp")]
position = Vector2(1276, -616.34033) position = Vector2(1276, -616.34033)
@@ -361,6 +363,25 @@ position = Vector2(1358, -617)
[node name="Spike9" parent="Tutorial2" unique_id=551069400 instance=ExtResource("8_xjnkp")] [node name="Spike9" parent="Tutorial2" unique_id=551069400 instance=ExtResource("8_xjnkp")]
position = Vector2(1595, -615) position = Vector2(1595, -615)
[node name="Teleporter" parent="Tutorial2" unique_id=1201409437 instance=ExtResource("10_mf6h1")]
position = Vector2(1490, -2092)
paired_teleporter = "F"
[node name="Teleporter2" parent="Tutorial2" unique_id=1110402536 instance=ExtResource("10_mf6h1")]
position = Vector2(1136, -537)
paired_teleporter = "F"
[node name="Teleporter3" parent="Tutorial2" unique_id=1111365488 instance=ExtResource("10_mf6h1")]
position = Vector2(1306, -537)
paired_teleporter = "G"
[node name="Teleporter4" parent="Tutorial2" unique_id=1802424658 instance=ExtResource("10_mf6h1")]
position = Vector2(1567, -533)
paired_teleporter = "G"
[node name="Pharaoh5" parent="Tutorial2" unique_id=2059071929 instance=ExtResource("11_k023l")]
position = Vector2(1222, -481)
[node name="WallSpike17" parent="." unique_id=23009620 instance=ExtResource("7_46256")] [node name="WallSpike17" parent="." unique_id=23009620 instance=ExtResource("7_46256")]
position = Vector2(1535.0005, -1027) position = Vector2(1535.0005, -1027)