Compare commits

20 Commits

Author SHA1 Message Date
43f2da2f4b Add scorpio 2023-09-03 21:03:42 -07:00
53d8129cbb Fix hit detection 2023-09-03 19:40:34 -07:00
aa9b5a1793 Enemy follow 2023-09-03 18:23:51 -07:00
c8d0eefd7e Improve game over conditions 2023-09-03 15:57:21 -07:00
23f20f08e0 Set game over for character condition 2023-09-03 15:41:39 -07:00
f7417d0afd Initial character select implementation 2023-09-03 15:06:39 -07:00
a15973a621 Add stuff 2023-09-03 00:43:27 -07:00
23443546b2 Add game manager 2023-09-03 00:30:18 -07:00
cf2642be2c Boss healthbar 2023-09-03 00:16:40 -07:00
7764644b90 nobody is reading this 2023-09-02 21:43:53 -07:00
071010f652 Add controller support 2023-09-02 21:05:56 -07:00
9b5a94bfab Set spawn points 2023-09-02 20:59:00 -07:00
736060d6ca Load level 2023-09-02 20:03:20 -07:00
cff32e0fb9 Placeholder music 2023-09-02 18:33:44 -07:00
271b0ede0d Add stages 2023-09-02 18:17:24 -07:00
334378932c Basic enemy pathing implementation 2023-09-02 17:42:07 -07:00
549cb7a325 Bullet hit rock detection 2023-09-02 15:58:13 -07:00
11a2554697 A lot of UI work....
opening slash animation
main menu
load first level
2023-09-02 15:50:21 -07:00
c3d19b8e0d Fix project 2023-09-02 13:42:29 -07:00
f9c9bf0990 Fix project layout 2023-09-02 13:28:16 -07:00
130 changed files with 34352 additions and 105 deletions

BIN
Audio/BGM/02 MovinOn.mp3 Normal file

Binary file not shown.

View File

@@ -0,0 +1,19 @@
[remap]
importer="mp3"
type="AudioStreamMP3"
uid="uid://cp787gdbhccb1"
path="res://.godot/imported/02 MovinOn.mp3-9ee085070ee763b5e5fda860f33a13f2.mp3str"
[deps]
source_file="res://Audio/BGM/02 MovinOn.mp3"
dest_files=["res://.godot/imported/02 MovinOn.mp3-9ee085070ee763b5e5fda860f33a13f2.mp3str"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
Audio/BGM/titlemusic.wav Normal file

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://dbeeph3g2ped8"
path="res://.godot/imported/titlemusic.wav-dfb1259cd0095fafd5f1926f516a0a12.sample"
[deps]
source_file="res://Audio/BGM/titlemusic.wav"
dest_files=["res://.godot/imported/titlemusic.wav-dfb1259cd0095fafd5f1926f516a0a12.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

View File

@@ -5,5 +5,6 @@
</PropertyGroup>
<ItemGroup>
<Folder Include="Scenes\" />
<Folder Include="Textures\Models\" />
</ItemGroup>
</Project>

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,32 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://dg3k3cvfyaqx1"
path="res://.godot/imported/STAGE 1.gltf-0983384355dffd1bcfa99f1135df3f5c.scn"
[deps]
source_file="res://Levels/Final Levels/STAGE 1.gltf"
dest_files=["res://.godot/imported/STAGE 1.gltf-0983384355dffd1bcfa99f1135df3f5c.scn"]
[params]
nodes/root_type="Node3D"
nodes/root_name="Scene Root"
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/embedded_image_handling=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 146 KiB

View File

@@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b8l4bipck52u"
path.s3tc="res://.godot/imported/STAGE 1_Screenshot 2023-09-03 at 13.29.png-b401d87bfc5e3dde8317f26fd0b66639.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
generator_parameters={}
[deps]
source_file="res://Levels/Final Levels/STAGE 1_Screenshot 2023-09-03 at 13.29.png"
dest_files=["res://.godot/imported/STAGE 1_Screenshot 2023-09-03 at 13.29.png-b401d87bfc5e3dde8317f26fd0b66639.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dcwooc3thxekc"
path.s3tc="res://.godot/imported/STAGE 1_hexa.png-7a18085f420a2ebfd63b9efa051add69.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
generator_parameters={}
[deps]
source_file="res://Levels/Final Levels/STAGE 1_hexa.png"
dest_files=["res://.godot/imported/STAGE 1_hexa.png-7a18085f420a2ebfd63b9efa051add69.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,32 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://cv33g1wyltecc"
path="res://.godot/imported/STAGE 2.gltf-c6998638fe7a0469f483b5cdcf2d8033.scn"
[deps]
source_file="res://Levels/Final Levels/STAGE 2.gltf"
dest_files=["res://.godot/imported/STAGE 2.gltf-c6998638fe7a0469f483b5cdcf2d8033.scn"]
[params]
nodes/root_type="Node3D"
nodes/root_name="Scene Root"
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/embedded_image_handling=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 366 KiB

View File

@@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dtm0fwmeoa0dq"
path.s3tc="res://.godot/imported/STAGE 2_depositphotos_81714270-stock-photo-white-marble-tiles-seamless-flooring.png-74bfc985cc2953472bf613d8de2aaa57.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
generator_parameters={}
[deps]
source_file="res://Levels/Final Levels/STAGE 2_depositphotos_81714270-stock-photo-white-marble-tiles-seamless-flooring.png"
dest_files=["res://.godot/imported/STAGE 2_depositphotos_81714270-stock-photo-white-marble-tiles-seamless-flooring.png-74bfc985cc2953472bf613d8de2aaa57.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 304 KiB

View File

@@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c5jw58iiex4vy"
path.s3tc="res://.godot/imported/STAGE 2_tie-500x500.png-e52b74b6515bdbe14b825ff4983824a1.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
generator_parameters={}
[deps]
source_file="res://Levels/Final Levels/STAGE 2_tie-500x500.png"
dest_files=["res://.godot/imported/STAGE 2_tie-500x500.png-e52b74b6515bdbe14b825ff4983824a1.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

BIN
Levels/Models/STAGE 1.blend Normal file

Binary file not shown.

View File

@@ -0,0 +1,48 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://c0lv8ovqkl3a6"
path="res://.godot/imported/STAGE 1.blend-a0ebb2612e6580a56490c3fb7a136c7b.scn"
[deps]
source_file="res://Levels/Models/STAGE 1.blend"
dest_files=["res://.godot/imported/STAGE 1.blend-a0ebb2612e6580a56490c3fb7a136c7b.scn"]
[params]
nodes/root_type="Node3D"
nodes/root_name="Scene Root"
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/embedded_image_handling=1
blender/nodes/visible=0
blender/nodes/punctual_lights=true
blender/nodes/cameras=true
blender/nodes/custom_properties=true
blender/nodes/modifiers=1
blender/meshes/colors=false
blender/meshes/uvs=true
blender/meshes/normals=true
blender/meshes/tangents=true
blender/meshes/skins=2
blender/meshes/export_bones_deforming_mesh_only=false
blender/materials/unpack_enabled=true
blender/materials/export_materials=1
blender/animation/limit_playback=true
blender/animation/always_sample=true
blender/animation/group_tracks=true

BIN
Levels/Models/STAGE 2.blend Normal file

Binary file not shown.

View File

@@ -0,0 +1,48 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://dmi76rb317oou"
path="res://.godot/imported/STAGE 2.blend-26faad56e3fe8c962dcb9fd35eb71cf1.scn"
[deps]
source_file="res://Levels/Models/STAGE 2.blend"
dest_files=["res://.godot/imported/STAGE 2.blend-26faad56e3fe8c962dcb9fd35eb71cf1.scn"]
[params]
nodes/root_type="Node3D"
nodes/root_name="Scene Root"
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/embedded_image_handling=1
blender/nodes/visible=0
blender/nodes/punctual_lights=true
blender/nodes/cameras=true
blender/nodes/custom_properties=true
blender/nodes/modifiers=1
blender/meshes/colors=false
blender/meshes/uvs=true
blender/meshes/normals=true
blender/meshes/tangents=true
blender/meshes/skins=2
blender/meshes/export_bones_deforming_mesh_only=false
blender/materials/unpack_enabled=true
blender/materials/export_materials=1
blender/animation/limit_playback=true
blender/animation/always_sample=true
blender/animation/group_tracks=true

BIN
Levels/Models/STAGE 3.blend Normal file

Binary file not shown.

View File

@@ -0,0 +1,48 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://dwd2hlxhkcfpp"
path="res://.godot/imported/STAGE 3.blend-4ed8b476956d28a9310c05b3755f1349.scn"
[deps]
source_file="res://Levels/Models/STAGE 3.blend"
dest_files=["res://.godot/imported/STAGE 3.blend-4ed8b476956d28a9310c05b3755f1349.scn"]
[params]
nodes/root_type="Node3D"
nodes/root_name="Scene Root"
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/embedded_image_handling=1
blender/nodes/visible=0
blender/nodes/punctual_lights=true
blender/nodes/cameras=true
blender/nodes/custom_properties=true
blender/nodes/modifiers=1
blender/meshes/colors=false
blender/meshes/uvs=true
blender/meshes/normals=true
blender/meshes/tangents=true
blender/meshes/skins=2
blender/meshes/export_bones_deforming_mesh_only=false
blender/materials/unpack_enabled=true
blender/materials/export_materials=1
blender/animation/limit_playback=true
blender/animation/always_sample=true
blender/animation/group_tracks=true

BIN
Levels/Models/STAGE 4.blend Normal file

Binary file not shown.

View File

@@ -0,0 +1,48 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://c33ymduovqqw"
path="res://.godot/imported/STAGE 4.blend-764471844d4162d1c39199b30e0338df.scn"
[deps]
source_file="res://Levels/Models/STAGE 4.blend"
dest_files=["res://.godot/imported/STAGE 4.blend-764471844d4162d1c39199b30e0338df.scn"]
[params]
nodes/root_type="Node3D"
nodes/root_name="Scene Root"
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/embedded_image_handling=1
blender/nodes/visible=0
blender/nodes/punctual_lights=true
blender/nodes/cameras=true
blender/nodes/custom_properties=true
blender/nodes/modifiers=1
blender/meshes/colors=false
blender/meshes/uvs=true
blender/meshes/normals=true
blender/meshes/tangents=true
blender/meshes/skins=2
blender/meshes/export_bones_deforming_mesh_only=false
blender/materials/unpack_enabled=true
blender/materials/export_materials=1
blender/animation/limit_playback=true
blender/animation/always_sample=true
blender/animation/group_tracks=true

BIN
Levels/Models/STAGE 5.blend Normal file

Binary file not shown.

View File

@@ -0,0 +1,48 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://cthfld06b4dng"
path="res://.godot/imported/STAGE 5.blend-8358ddb2a6df2468fd8b8b59e9c3b69c.scn"
[deps]
source_file="res://Levels/Models/STAGE 5.blend"
dest_files=["res://.godot/imported/STAGE 5.blend-8358ddb2a6df2468fd8b8b59e9c3b69c.scn"]
[params]
nodes/root_type="Node3D"
nodes/root_name="Scene Root"
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/embedded_image_handling=1
blender/nodes/visible=0
blender/nodes/punctual_lights=true
blender/nodes/cameras=true
blender/nodes/custom_properties=true
blender/nodes/modifiers=1
blender/meshes/colors=false
blender/meshes/uvs=true
blender/meshes/normals=true
blender/meshes/tangents=true
blender/meshes/skins=2
blender/meshes/export_bones_deforming_mesh_only=false
blender/materials/unpack_enabled=true
blender/materials/export_materials=1
blender/animation/limit_playback=true
blender/animation/always_sample=true
blender/animation/group_tracks=true

BIN
Levels/Models/STAGE 6.blend Normal file

Binary file not shown.

View File

@@ -0,0 +1,48 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://bc3wjl3ibs5q7"
path="res://.godot/imported/STAGE 6.blend-98cd66082282f83ec6ad0702c192a4fb.scn"
[deps]
source_file="res://Levels/Models/STAGE 6.blend"
dest_files=["res://.godot/imported/STAGE 6.blend-98cd66082282f83ec6ad0702c192a4fb.scn"]
[params]
nodes/root_type="Node3D"
nodes/root_name="Scene Root"
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/embedded_image_handling=1
blender/nodes/visible=0
blender/nodes/punctual_lights=true
blender/nodes/cameras=true
blender/nodes/custom_properties=true
blender/nodes/modifiers=1
blender/meshes/colors=false
blender/meshes/uvs=true
blender/meshes/normals=true
blender/meshes/tangents=true
blender/meshes/skins=2
blender/meshes/export_bones_deforming_mesh_only=false
blender/materials/unpack_enabled=true
blender/materials/export_materials=1
blender/animation/limit_playback=true
blender/animation/always_sample=true
blender/animation/group_tracks=true

BIN
Levels/Models/STAGE 7.blend Normal file

Binary file not shown.

View File

@@ -0,0 +1,48 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://biurk21cl5wxw"
path="res://.godot/imported/STAGE 7.blend-25d409d91f0f4219e3b34309a6e298c7.scn"
[deps]
source_file="res://Levels/Models/STAGE 7.blend"
dest_files=["res://.godot/imported/STAGE 7.blend-25d409d91f0f4219e3b34309a6e298c7.scn"]
[params]
nodes/root_type="Node3D"
nodes/root_name="Scene Root"
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/embedded_image_handling=1
blender/nodes/visible=0
blender/nodes/punctual_lights=true
blender/nodes/cameras=true
blender/nodes/custom_properties=true
blender/nodes/modifiers=1
blender/meshes/colors=false
blender/meshes/uvs=true
blender/meshes/normals=true
blender/meshes/tangents=true
blender/meshes/skins=2
blender/meshes/export_bones_deforming_mesh_only=false
blender/materials/unpack_enabled=true
blender/materials/export_materials=1
blender/animation/limit_playback=true
blender/animation/always_sample=true
blender/animation/group_tracks=true

BIN
Levels/Models/STAGE 8.blend Normal file

Binary file not shown.

View File

@@ -0,0 +1,48 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://dibismvgu8151"
path="res://.godot/imported/STAGE 8.blend-a2c42b5d8a1ab6153c93543b12f39a36.scn"
[deps]
source_file="res://Levels/Models/STAGE 8.blend"
dest_files=["res://.godot/imported/STAGE 8.blend-a2c42b5d8a1ab6153c93543b12f39a36.scn"]
[params]
nodes/root_type="Node3D"
nodes/root_name="Scene Root"
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/embedded_image_handling=1
blender/nodes/visible=0
blender/nodes/punctual_lights=true
blender/nodes/cameras=true
blender/nodes/custom_properties=true
blender/nodes/modifiers=1
blender/meshes/colors=false
blender/meshes/uvs=true
blender/meshes/normals=true
blender/meshes/tangents=true
blender/meshes/skins=2
blender/meshes/export_bones_deforming_mesh_only=false
blender/materials/unpack_enabled=true
blender/materials/export_materials=1
blender/animation/limit_playback=true
blender/animation/always_sample=true
blender/animation/group_tracks=true

BIN
Levels/Models/STAGE 9.blend Normal file

Binary file not shown.

View File

@@ -0,0 +1,48 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://bs8iqbayeqqm"
path="res://.godot/imported/STAGE 9.blend-cb66f2c4c46cf674b3169fdd5ca26e40.scn"
[deps]
source_file="res://Levels/Models/STAGE 9.blend"
dest_files=["res://.godot/imported/STAGE 9.blend-cb66f2c4c46cf674b3169fdd5ca26e40.scn"]
[params]
nodes/root_type="Node3D"
nodes/root_name="Scene Root"
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/embedded_image_handling=1
blender/nodes/visible=0
blender/nodes/punctual_lights=true
blender/nodes/cameras=true
blender/nodes/custom_properties=true
blender/nodes/modifiers=1
blender/meshes/colors=false
blender/meshes/uvs=true
blender/meshes/normals=true
blender/meshes/tangents=true
blender/meshes/skins=2
blender/meshes/export_bones_deforming_mesh_only=false
blender/materials/unpack_enabled=true
blender/materials/export_materials=1
blender/animation/limit_playback=true
blender/animation/always_sample=true
blender/animation/group_tracks=true

Binary file not shown.

View File

@@ -0,0 +1,32 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://cigdj84f0m3jd"
path="res://.godot/imported/god circuit stage 1.glb-2f69a377636b262509070ab5e0fe796a.scn"
[deps]
source_file="res://Levels/Models/god circuit stage 1.glb"
dest_files=["res://.godot/imported/god circuit stage 1.glb-2f69a377636b262509070ab5e0fe796a.scn"]
[params]
nodes/root_type="Node3D"
nodes/root_name="Scene Root"
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/embedded_image_handling=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

View File

@@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b41ur7kyd8vdl"
path.s3tc="res://.godot/imported/god circuit stage 1_image.png-f36e4022160fed836cbcc1729b099c66.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
generator_parameters={}
[deps]
source_file="res://Levels/Models/god circuit stage 1_image.png"
dest_files=["res://.godot/imported/god circuit stage 1_image.png-f36e4022160fed836cbcc1729b099c66.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 151 KiB

View File

@@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ctdyuer3eshms"
path.s3tc="res://.godot/imported/scoprion_GameJam_Scorpion_texture.png-0343eed5726c8284a07b6856db622e90.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
generator_parameters={}
[deps]
source_file="res://Models/Characters/scoprion_GameJam_Scorpion_texture.png"
dest_files=["res://.godot/imported/scoprion_GameJam_Scorpion_texture.png-0343eed5726c8284a07b6856db622e90.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

View File

@@ -0,0 +1,32 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://cmjk0lv873twh"
path="res://.godot/imported/FBXmeleeenemy.fbx-39d07ae3b54022cb3f8b6fc5b388c1b6.scn"
[deps]
source_file="res://Models/Enemies/FBXmeleeenemy.fbx"
dest_files=["res://.godot/imported/FBXmeleeenemy.fbx-39d07ae3b54022cb3f8b6fc5b388c1b6.scn"]
[params]
nodes/root_type="Node3D"
nodes/root_name="Scene Root"
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/embedded_image_handling=1

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@@ -0,0 +1,48 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://hxu85nf6gm3b"
path="res://.godot/imported/meleeenemy.blend-8eccf61141ea355bc9186a38b93c1d84.scn"
[deps]
source_file="res://Models/Enemies/meleeenemy.blend"
dest_files=["res://.godot/imported/meleeenemy.blend-8eccf61141ea355bc9186a38b93c1d84.scn"]
[params]
nodes/root_type="Node3D"
nodes/root_name="Scene Root"
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/embedded_image_handling=1
blender/nodes/visible=0
blender/nodes/punctual_lights=true
blender/nodes/cameras=true
blender/nodes/custom_properties=true
blender/nodes/modifiers=1
blender/meshes/colors=false
blender/meshes/uvs=true
blender/meshes/normals=true
blender/meshes/tangents=true
blender/meshes/skins=2
blender/meshes/export_bones_deforming_mesh_only=false
blender/materials/unpack_enabled=true
blender/materials/export_materials=1
blender/animation/limit_playback=true
blender/animation/always_sample=true
blender/animation/group_tracks=true

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,32 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://dr76w6fde0lqw"
path="res://.godot/imported/meleeenemy.dae-8f3f52592bee6d2abce9846b87baab92.scn"
[deps]
source_file="res://Models/Enemies/meleeenemy.dae"
dest_files=["res://.godot/imported/meleeenemy.dae-8f3f52592bee6d2abce9846b87baab92.scn"]
[params]
nodes/root_type="Node3D"
nodes/root_name="Scene Root"
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/embedded_image_handling=1

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,32 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://bybcv38cfxn01"
path="res://.godot/imported/meleeenemy1.gltf-5038921943114d8b9556b4a4f0229c76.scn"
[deps]
source_file="res://Models/Enemies/meleeenemy1.gltf"
dest_files=["res://.godot/imported/meleeenemy1.gltf-5038921943114d8b9556b4a4f0229c76.scn"]
[params]
nodes/root_type="Node3D"
nodes/root_name="Scene Root"
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/embedded_image_handling=1

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@@ -0,0 +1,32 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://dnqcfnmn1ijj6"
path="res://.godot/imported/meleeenemyloop.glb-5cddba91669024a643af51dd4b166979.scn"
[deps]
source_file="res://Models/Enemies/meleeenemyloop.glb"
dest_files=["res://.godot/imported/meleeenemyloop.glb-5cddba91669024a643af51dd4b166979.scn"]
[params]
nodes/root_type="Node3D"
nodes/root_name="Scene Root"
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/embedded_image_handling=1

View File

@@ -1,7 +1,9 @@
[gd_scene load_steps=5 format=3 uid="uid://b38hcomu4tpm5"]
[gd_scene load_steps=7 format=3 uid="uid://b38hcomu4tpm5"]
[ext_resource type="Script" path="res://Scripts/TestCharacter.cs" id="1_hddqi"]
[ext_resource type="PackedScene" uid="uid://yosw0j58nvrf" path="res://Models/Characters/fwitch.gltf" id="4_n3637"]
[ext_resource type="Script" path="res://Scripts/Player1.cs" id="1_6cdju"]
[ext_resource type="PackedScene" uid="uid://si4byubqnng4" path="res://Scenes/TestBullet.tscn" id="2_xt4q8"]
[ext_resource type="PackedScene" uid="uid://bq40xbqibrk1y" path="res://Scenes/ShotgunBullet.tscn" id="3_4eh4a"]
[ext_resource type="PackedScene" uid="uid://yosw0j58nvrf" path="res://Models/Characters/fwitch.gltf" id="4_mtwuo"]
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_ayco3"]
radius = 0.980738
@@ -11,17 +13,19 @@ height = 3.77708
radius = 0.704872
height = 1.67894
[node name="Character" type="CharacterBody3D"]
script = ExtResource("1_hddqi")
[node name="Pisces" type="CharacterBody3D" groups=["Player"]]
transform = Transform3D(0.33, 0, 0, 0, 0.33, 0, 0, 0, 0.33, 0, 0, 0)
script = ExtResource("1_6cdju")
_fireProjectile = ExtResource("2_xt4q8")
_altFireProjectile = ExtResource("3_4eh4a")
[node name="Pivot" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)
[node name="fwitch" parent="Pivot" instance=ExtResource("4_n3637")]
[node name="fwitch" parent="Pivot" instance=ExtResource("4_mtwuo")]
[node name="Area3D" type="Area3D" parent="Pivot"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.75657e-15, 0, 0)
collision_layer = 0
collision_layer = 16
collision_mask = 4
[node name="CollisionShape3D" type="CollisionShape3D" parent="Pivot/Area3D"]
@@ -32,4 +36,12 @@ shape = SubResource("CapsuleShape3D_ayco3")
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.06805, -0.211049)
shape = SubResource("CapsuleShape3D_fqik1")
[node name="Button" type="Button" parent="."]
offset_left = 1602.0
offset_top = 40.0
offset_right = 1872.0
offset_bottom = 178.0
text = "Hit"
[connection signal="body_entered" from="Pivot/Area3D" to="." method="OnHit"]
[connection signal="pressed" from="Button" to="." method="HitDebug"]

View File

@@ -0,0 +1,18 @@
[gd_scene load_steps=4 format=3 uid="uid://iempdafdn6ct"]
[ext_resource type="Script" path="res://Scripts/Player1.cs" id="1_mn5ui"]
[ext_resource type="PackedScene" uid="uid://dyhimd6qec8fu" path="res://Scenes/Characters/ScorpioAnimated.tscn" id="2_pahgr"]
[sub_resource type="BoxShape3D" id="BoxShape3D_f8aaj"]
size = Vector3(0.822782, 0.527059, 0.80108)
[node name="PlayerScorpio" type="CharacterBody3D" groups=["Player"]]
script = ExtResource("1_mn5ui")
[node name="Pivot" type="Node3D" parent="."]
[node name="scoprion" parent="Pivot" instance=ExtResource("2_pahgr")]
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.0761452, 0)
shape = SubResource("BoxShape3D_f8aaj")

View File

@@ -0,0 +1,11 @@
[gd_scene load_steps=2 format=3 uid="uid://ddt6566wf61ol"]
[ext_resource type="PackedScene" uid="uid://d3403he3mff31" path="res://Models/Characters/scoprion.gltf" id="1_bsb7k"]
[node name="scoprion" instance=ExtResource("1_bsb7k")]
[node name="Cube" parent="." index="0"]
transform = Transform3D(0.0769273, 0, 0.0568499, 0, 0.082328, 0, -0.0293273, 0, 0.149121, 0, 0, 0)
[node name="AnimationPlayer" parent="." index="1"]
autoplay = "Animation"

File diff suppressed because one or more lines are too long

97
Scenes/ExitPortal.tscn Normal file
View File

@@ -0,0 +1,97 @@
[gd_scene load_steps=5 format=3 uid="uid://jgf7k1r35km1"]
[ext_resource type="PackedScene" uid="uid://0tegxun85rq" path="res://Textures/Models/exitprotal.gltf" id="1_jebs8"]
[sub_resource type="Animation" id="Animation_t7yyb"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Cylinder:rotation")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Vector3(0, 0, 0)]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Circle:rotation")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Vector3(0, 0, 0)]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Circle_001:rotation")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Vector3(0, 0, 0)]
}
[sub_resource type="Animation" id="Animation_y78yk"]
resource_name = "Spin"
length = 45.0
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Cylinder:rotation")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 45),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Vector3(0, 0, 0), Vector3(0, 6.28319, 0)]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Circle:rotation")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 45),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Vector3(0, 0, 0), Vector3(0, -6.28319, 0)]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Circle_001:rotation")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 45),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Vector3(0, 0, 0), Vector3(0, 6.28319, 0)]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_fkf2e"]
_data = {
"RESET": SubResource("Animation_t7yyb"),
"Spin": SubResource("Animation_y78yk")
}
[node name="Exit Portal" instance=ExtResource("1_jebs8")]
transform = Transform3D(0.7, 0, 0, 0, 0.7, 0, 0, 0, 0.7, 0, 0, 0)
[node name="AnimationPlayer" type="AnimationPlayer" parent="." index="3"]
autoplay = "Spin"
libraries = {
"": SubResource("AnimationLibrary_fkf2e")
}

39
Scenes/GameManager.tscn Normal file
View File

@@ -0,0 +1,39 @@
[gd_scene load_steps=6 format=3 uid="uid://cxj6yeddshy16"]
[ext_resource type="Script" path="res://Scripts/GameManager.cs" id="1_ya2kt"]
[ext_resource type="PackedScene" uid="uid://b38hcomu4tpm5" path="res://Scenes/Characters/PiscesWitch.tscn" id="2_am26u"]
[ext_resource type="PackedScene" uid="uid://iempdafdn6ct" path="res://Scenes/Characters/PlayerScorpio.tscn" id="3_e5mhu"]
[ext_resource type="PackedScene" uid="uid://dq1gtd55p04do" path="res://Scenes/StageGUI.tscn" id="5_gsh7q"]
[ext_resource type="Script" path="res://Scripts/SpawnPoint.cs" id="7_4n1rc"]
[node name="GameManager" type="Node"]
script = ExtResource("1_ya2kt")
_p1Characters = [ExtResource("2_am26u"), ExtResource("3_e5mhu")]
_p2Characters = [ExtResource("2_am26u"), ExtResource("3_e5mhu")]
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
transform = Transform3D(-0.929007, 0.136193, 0.34409, 0.369825, 0.375014, 0.850055, -0.0132668, 0.91696, -0.398758, -3.58319, 11.9025, 0.163277)
[node name="Camera3D" type="Camera3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.5, 0.866025, 0, -0.866025, 0.5, -0.527878, 10.966, 6.61121)
projection = 1
current = true
size = 10.8546
[node name="StageGUI" parent="." instance=ExtResource("5_gsh7q")]
offset_left = 0.0
offset_top = 0.0
offset_right = 0.0
offset_bottom = 0.0
size_flags_horizontal = 4
size_flags_vertical = 4
[node name="P1SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.30792, 0, 5.60868)
script = ExtResource("7_4n1rc")
[node name="P2SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.910204, 0, 5.60868)
script = ExtResource("7_4n1rc")
[connection signal="OnCharacterSelectionMade" from="StageGUI" to="." method="OnP1CharacterSelected"]

6
Scenes/HPComponent.tscn Normal file
View File

@@ -0,0 +1,6 @@
[gd_scene load_steps=2 format=3 uid="uid://b1j0g6ikmnibm"]
[ext_resource type="Script" path="res://Scripts/HealthPoints.cs" id="1_ocdf1"]
[node name="HP Component" type="Node"]
script = ExtResource("1_ocdf1")

39
Scenes/Levels/Level1.tscn Normal file
View File

@@ -0,0 +1,39 @@
[gd_scene load_steps=7 format=3 uid="uid://dqv03pua4j8ga"]
[ext_resource type="Script" path="res://Scripts/AreaExit.cs" id="1_owv8t"]
[ext_resource type="PackedScene" uid="uid://dg3k3cvfyaqx1" path="res://Levels/Final Levels/STAGE 1.gltf" id="5_7416y"]
[ext_resource type="PackedScene" uid="uid://bt5rolsyjmx55" path="res://Scenes/MeleeEnemyOrb.tscn" id="5_dqbra"]
[ext_resource type="PackedScene" uid="uid://jgf7k1r35km1" path="res://Scenes/ExitPortal.tscn" id="6_gegi6"]
[ext_resource type="Script" path="res://Scripts/SpawnPoint.cs" id="9_8v1uu"]
[sub_resource type="CylinderShape3D" id="CylinderShape3D_kv6vl"]
radius = 0.957319
[node name="Level1" type="Node3D" groups=["Level"]]
script = ExtResource("1_owv8t")
[node name="Area3D2" type="Area3D" parent="." groups=["Level"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.568617, 0, -1.72171)
collision_layer = 0
collision_mask = 16
[node name="Exit Portal" parent="Area3D2" instance=ExtResource("6_gegi6")]
transform = Transform3D(0.7, 0, 0, 0, 0.7, 0, 0, 0, 0.7, 0, 0, -2.53252)
[node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -2.51823)
shape = SubResource("CylinderShape3D_kv6vl")
[node name="P1_SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.28216, 0.123258, 5.51333)
script = ExtResource("9_8v1uu")
[node name="P2_SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.78123, 0.123258, 5.51333)
script = ExtResource("9_8v1uu")
[node name="MeleeEnemyOrb" parent="." instance=ExtResource("5_dqbra")]
[node name="STAGE 1" parent="." instance=ExtResource("5_7416y")]
[connection signal="body_entered" from="Area3D2" to="." method="OnExitEntered"]

37
Scenes/Levels/Level2.tscn Normal file
View File

@@ -0,0 +1,37 @@
[gd_scene load_steps=6 format=3 uid="uid://basequfmpg04f"]
[ext_resource type="Script" path="res://Scripts/AreaExit.cs" id="1_u04pt"]
[ext_resource type="PackedScene" uid="uid://jgf7k1r35km1" path="res://Scenes/ExitPortal.tscn" id="2_sq8bv"]
[ext_resource type="PackedScene" uid="uid://cv33g1wyltecc" path="res://Levels/Final Levels/STAGE 2.gltf" id="4_kiw1e"]
[ext_resource type="Script" path="res://Scripts/SpawnPoint.cs" id="5_dg8k3"]
[sub_resource type="CylinderShape3D" id="CylinderShape3D_tux5n"]
radius = 0.957319
[node name="Level2" type="Node3D" groups=["Level"]]
script = ExtResource("1_u04pt")
_levelIndex = 1
[node name="Area3D2" type="Area3D" parent="." groups=["Level"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.43759, 0, -2.42354)
collision_layer = 0
collision_mask = 16
[node name="Exit Portal" parent="Area3D2" instance=ExtResource("2_sq8bv")]
transform = Transform3D(0.7, 0, 0, 0, 0.7, 0, 0, 0, 0.7, 0, 0, -2.53252)
[node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -2.51823)
shape = SubResource("CylinderShape3D_tux5n")
[node name="P1_SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.503964, 0.123258, 4.44593)
script = ExtResource("5_dg8k3")
[node name="P2_SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.97394, 0.246516, 4.57028)
script = ExtResource("5_dg8k3")
[node name="STAGE 2" parent="." instance=ExtResource("4_kiw1e")]
[connection signal="body_entered" from="Area3D2" to="." method="OnExitEntered"]

38
Scenes/Levels/Level3.tscn Normal file
View File

@@ -0,0 +1,38 @@
[gd_scene load_steps=7 format=3 uid="uid://btl5fdyjewnwc"]
[ext_resource type="Script" path="res://Scripts/AreaExit.cs" id="1_1tnw5"]
[ext_resource type="PackedScene" uid="uid://dwd2hlxhkcfpp" path="res://Levels/Models/STAGE 3.blend" id="1_blsh8"]
[ext_resource type="PackedScene" uid="uid://jgf7k1r35km1" path="res://Scenes/ExitPortal.tscn" id="3_2t766"]
[ext_resource type="Script" path="res://Scripts/SpawnPoint.cs" id="4_t5mi5"]
[ext_resource type="Script" path="res://Scripts/SpawnPoint.cs" id="5_kc2wt"]
[sub_resource type="CylinderShape3D" id="CylinderShape3D_j26hn"]
radius = 0.957319
[node name="Level3" type="Node3D" groups=["Level"]]
script = ExtResource("1_1tnw5")
_levelIndex = 2
[node name="STAGE 3" parent="." instance=ExtResource("1_blsh8")]
[node name="Area3D2" type="Area3D" parent="." groups=["Level"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -1.67434)
collision_layer = 0
collision_mask = 16
[node name="Exit Portal" parent="Area3D2" instance=ExtResource("3_2t766")]
transform = Transform3D(0.7, 0, 0, 0, 0.7, 0, 0, 0, 0.7, 0, 0, -2.53252)
[node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -2.51823)
shape = SubResource("CylinderShape3D_j26hn")
[node name="P1_SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.503964, 0.123258, 5.51333)
script = ExtResource("4_t5mi5")
[node name="P2_SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.3999, 0.123258, 5.51333)
script = ExtResource("5_kc2wt")
[connection signal="body_entered" from="Area3D2" to="." method="OnExitEntered"]

38
Scenes/Levels/Level4.tscn Normal file
View File

@@ -0,0 +1,38 @@
[gd_scene load_steps=7 format=3 uid="uid://ctvkevnc0wxka"]
[ext_resource type="PackedScene" uid="uid://c33ymduovqqw" path="res://Levels/Models/STAGE 4.blend" id="1_qu6ym"]
[ext_resource type="Script" path="res://Scripts/AreaExit.cs" id="1_sqfsi"]
[ext_resource type="PackedScene" uid="uid://jgf7k1r35km1" path="res://Scenes/ExitPortal.tscn" id="3_wflo5"]
[ext_resource type="Script" path="res://Scripts/SpawnPoint.cs" id="4_hoql1"]
[ext_resource type="Script" path="res://Scripts/SpawnPoint.cs" id="5_tx78o"]
[sub_resource type="CylinderShape3D" id="CylinderShape3D_8lqmd"]
radius = 0.957319
[node name="Level4" type="Node3D" groups=["Level"]]
script = ExtResource("1_sqfsi")
_levelIndex = 3
[node name="STAGE 4" parent="." instance=ExtResource("1_qu6ym")]
[node name="Area3D2" type="Area3D" parent="." groups=["Level"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -1.52969)
collision_layer = 0
collision_mask = 16
[node name="Exit Portal" parent="Area3D2" instance=ExtResource("3_wflo5")]
transform = Transform3D(0.7, 0, 0, 0, 0.7, 0, 0, 0, 0.7, 0, 0, -2.53252)
[node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -2.51823)
shape = SubResource("CylinderShape3D_8lqmd")
[node name="P1_SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.503964, 0.123258, 5.51333)
script = ExtResource("4_hoql1")
[node name="P2_SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.65542, 0.123258, 5.51333)
script = ExtResource("5_tx78o")
[connection signal="body_entered" from="Area3D2" to="." method="OnExitEntered"]

38
Scenes/Levels/Level5.tscn Normal file
View File

@@ -0,0 +1,38 @@
[gd_scene load_steps=7 format=3 uid="uid://col60npvg7wr1"]
[ext_resource type="PackedScene" uid="uid://cthfld06b4dng" path="res://Levels/Models/STAGE 5.blend" id="1_fagdb"]
[ext_resource type="Script" path="res://Scripts/AreaExit.cs" id="1_qbafj"]
[ext_resource type="PackedScene" uid="uid://jgf7k1r35km1" path="res://Scenes/ExitPortal.tscn" id="3_ehcts"]
[ext_resource type="Script" path="res://Scripts/SpawnPoint.cs" id="4_a5c54"]
[ext_resource type="Script" path="res://Scripts/SpawnPoint.cs" id="5_2mfmm"]
[sub_resource type="CylinderShape3D" id="CylinderShape3D_a8pxa"]
radius = 0.957319
[node name="Level5" type="Node3D" groups=["Level"]]
script = ExtResource("1_qbafj")
_levelIndex = 4
[node name="STAGE 5" parent="." instance=ExtResource("1_fagdb")]
[node name="Area3D2" type="Area3D" parent="." groups=["Level"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.507195, 0, -1.82817)
collision_layer = 0
collision_mask = 16
[node name="Exit Portal" parent="Area3D2" instance=ExtResource("3_ehcts")]
transform = Transform3D(0.7, 0, 0, 0, 0.7, 0, 0, 0, 0.7, 0, 0, -2.53252)
[node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -2.51823)
shape = SubResource("CylinderShape3D_a8pxa")
[node name="P1_SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.503964, 0.123258, 5.51333)
script = ExtResource("4_a5c54")
[node name="P2_SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.16798, 0.123258, 5.51333)
script = ExtResource("5_2mfmm")
[connection signal="body_entered" from="Area3D2" to="." method="OnExitEntered"]

38
Scenes/Levels/Level6.tscn Normal file
View File

@@ -0,0 +1,38 @@
[gd_scene load_steps=7 format=3 uid="uid://8ukphol1isp2"]
[ext_resource type="PackedScene" uid="uid://bc3wjl3ibs5q7" path="res://Levels/Models/STAGE 6.blend" id="1_q1cka"]
[ext_resource type="Script" path="res://Scripts/AreaExit.cs" id="1_qlv44"]
[ext_resource type="PackedScene" uid="uid://jgf7k1r35km1" path="res://Scenes/ExitPortal.tscn" id="3_0wdh0"]
[ext_resource type="Script" path="res://Scripts/SpawnPoint.cs" id="4_awoco"]
[ext_resource type="Script" path="res://Scripts/SpawnPoint.cs" id="5_tba4e"]
[sub_resource type="CylinderShape3D" id="CylinderShape3D_wu0in"]
radius = 0.957319
[node name="Level6" type="Node3D" groups=["Level"]]
script = ExtResource("1_qlv44")
_levelIndex = 5
[node name="STAGE 6" parent="." instance=ExtResource("1_q1cka")]
[node name="Area3D2" type="Area3D" parent="." groups=["Level"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -1.55156)
collision_layer = 0
collision_mask = 16
[node name="Exit Portal" parent="Area3D2" instance=ExtResource("3_0wdh0")]
transform = Transform3D(0.7, 0, 0, 0, 0.7, 0, 0, 0, 0.7, 0, 0, -2.53252)
[node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -2.51823)
shape = SubResource("CylinderShape3D_wu0in")
[node name="P1_SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.503964, 0.123258, 5.51333)
script = ExtResource("4_awoco")
[node name="P2_SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.10805, 0.123258, 5.51333)
script = ExtResource("5_tba4e")
[connection signal="body_entered" from="Area3D2" to="." method="OnExitEntered"]

38
Scenes/Levels/Level7.tscn Normal file
View File

@@ -0,0 +1,38 @@
[gd_scene load_steps=7 format=3 uid="uid://bsq7edeueqyjg"]
[ext_resource type="PackedScene" uid="uid://biurk21cl5wxw" path="res://Levels/Models/STAGE 7.blend" id="1_dc67b"]
[ext_resource type="Script" path="res://Scripts/AreaExit.cs" id="1_fio4n"]
[ext_resource type="PackedScene" uid="uid://jgf7k1r35km1" path="res://Scenes/ExitPortal.tscn" id="3_sjnhq"]
[ext_resource type="Script" path="res://Scripts/SpawnPoint.cs" id="4_kxyoc"]
[ext_resource type="Script" path="res://Scripts/SpawnPoint.cs" id="5_5gfi0"]
[sub_resource type="CylinderShape3D" id="CylinderShape3D_a56hv"]
radius = 0.957319
[node name="Level7" type="Node3D" groups=["Level"]]
script = ExtResource("1_fio4n")
_levelIndex = 6
[node name="STAGE 7" parent="." instance=ExtResource("1_dc67b")]
[node name="Area3D2" type="Area3D" parent="." groups=["Level"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.5888, 0, -1.39131)
collision_layer = 0
collision_mask = 16
[node name="Exit Portal" parent="Area3D2" instance=ExtResource("3_sjnhq")]
transform = Transform3D(0.7, 0, 0, 0, 0.7, 0, 0, 0, 0.7, 0, 0, -2.53252)
[node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -2.51823)
shape = SubResource("CylinderShape3D_a56hv")
[node name="P1_SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.503964, 0.123258, 5.51333)
script = ExtResource("4_kxyoc")
[node name="P2_SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.6401, 0.123258, 5.51333)
script = ExtResource("5_5gfi0")
[connection signal="body_entered" from="Area3D2" to="." method="OnExitEntered"]

38
Scenes/Levels/Level8.tscn Normal file
View File

@@ -0,0 +1,38 @@
[gd_scene load_steps=7 format=3 uid="uid://c4xcka4ekuur8"]
[ext_resource type="Script" path="res://Scripts/AreaExit.cs" id="1_mo03n"]
[ext_resource type="PackedScene" uid="uid://dibismvgu8151" path="res://Levels/Models/STAGE 8.blend" id="1_wd00s"]
[ext_resource type="PackedScene" uid="uid://jgf7k1r35km1" path="res://Scenes/ExitPortal.tscn" id="3_44edv"]
[ext_resource type="Script" path="res://Scripts/SpawnPoint.cs" id="4_rdu0b"]
[ext_resource type="Script" path="res://Scripts/SpawnPoint.cs" id="5_76jfi"]
[sub_resource type="CylinderShape3D" id="CylinderShape3D_3ne7n"]
radius = 0.957319
[node name="Level8" type="Node3D" groups=["Level"]]
script = ExtResource("1_mo03n")
_levelIndex = 7
[node name="STAGE 8" parent="." instance=ExtResource("1_wd00s")]
[node name="Area3D2" type="Area3D" parent="." groups=["Level"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -1.47544)
collision_layer = 0
collision_mask = 16
[node name="Exit Portal" parent="Area3D2" instance=ExtResource("3_44edv")]
transform = Transform3D(0.7, 0, 0, 0, 0.7, 0, 0, 0, 0.7, 0, 0, -2.53252)
[node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -2.51823)
shape = SubResource("CylinderShape3D_3ne7n")
[node name="P1_SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.503964, 0.123258, 5.51333)
script = ExtResource("4_rdu0b")
[node name="P2_SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.60971, 0.123258, 5.51333)
script = ExtResource("5_76jfi")
[connection signal="body_entered" from="Area3D2" to="." method="OnExitEntered"]

84
Scenes/Levels/Level9.tscn Normal file
View File

@@ -0,0 +1,84 @@
[gd_scene load_steps=10 format=3 uid="uid://0hdnmilwrsq6"]
[ext_resource type="PackedScene" uid="uid://bs8iqbayeqqm" path="res://Levels/Models/STAGE 9.blend" id="1_ley6w"]
[ext_resource type="Script" path="res://Scripts/HealthbarProgress.cs" id="2_53ar2"]
[ext_resource type="Script" path="res://Scripts/SpawnPoint.cs" id="2_hr1h4"]
[ext_resource type="Script" path="res://Scripts/SpawnPoint.cs" id="3_xr71f"]
[ext_resource type="PackedScene" uid="uid://brbshysbgd47q" path="res://Scenes/god_circuit.tscn" id="4_vmhpd"]
[ext_resource type="Texture2D" uid="uid://ccnmmyvs53gni" path="res://Textures/Style_1.png" id="5_jjg8p"]
[ext_resource type="PackedScene" uid="uid://b1j0g6ikmnibm" path="res://Scenes/HPComponent.tscn" id="7_nvq88"]
[sub_resource type="LabelSettings" id="LabelSettings_8edkl"]
font_color = Color(0, 0, 0, 1)
[sub_resource type="BoxShape3D" id="BoxShape3D_slhvd"]
size = Vector3(2.65272, 5.04315, 1.02395)
[node name="Level9" type="Node3D" groups=["Level"]]
[node name="Control" type="Control" parent="."]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="TextureProgressBar" type="TextureProgressBar" parent="Control"]
top_level = true
z_index = 1
layout_mode = 1
anchors_preset = 10
anchor_right = 1.0
offset_left = 4.0
offset_top = 44.0
offset_right = 4.0
offset_bottom = 73.0
grow_horizontal = 2
max_value = 2e+09
value = 2e+09
nine_patch_stretch = true
texture_progress = ExtResource("5_jjg8p")
script = ExtResource("2_53ar2")
[node name="Label" type="Label" parent="Control"]
top_level = true
z_index = 1
layout_mode = 1
anchors_preset = 5
anchor_left = 0.5
anchor_right = 0.5
offset_left = -43.0
offset_right = 43.0
offset_bottom = 26.0
grow_horizontal = 2
text = "God Circuit
"
label_settings = SubResource("LabelSettings_8edkl")
[node name="STAGE 9" parent="." instance=ExtResource("1_ley6w")]
[node name="P1_SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.503964, 0.123258, 5.51333)
script = ExtResource("2_hr1h4")
[node name="P2_SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.29148, 0.123258, 5.44653)
script = ExtResource("3_xr71f")
[node name="God Circuit" parent="." instance=ExtResource("4_vmhpd")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.54956, 1.08022, -0.0539055)
[node name="Area3D" type="Area3D" parent="God Circuit"]
collision_layer = 0
collision_mask = 2
[node name="CollisionShape3D" type="CollisionShape3D" parent="God Circuit/Area3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.89871, 1.49756, -2.3792)
shape = SubResource("BoxShape3D_slhvd")
[node name="HP Component" parent="God Circuit" node_paths=PackedStringArray("_healthBar") instance=ExtResource("7_nvq88")]
MaximumHP = 2000000000
_healthBar = NodePath("../../Control/TextureProgressBar")
[connection signal="body_entered" from="God Circuit/Area3D" to="God Circuit" method="OnHit"]

22
Scenes/Main.tscn Normal file
View File

@@ -0,0 +1,22 @@
[gd_scene load_steps=13 format=3 uid="uid://vwrw05ob2caq"]
[ext_resource type="Script" path="res://Scripts/Main.cs" id="1_g4hua"]
[ext_resource type="PackedScene" uid="uid://dqv03pua4j8ga" path="res://Scenes/Levels/Level1.tscn" id="2_cqnvi"]
[ext_resource type="PackedScene" uid="uid://b12gq4yqc3d8i" path="res://Scenes/MainMenu.tscn" id="2_kvovw"]
[ext_resource type="PackedScene" uid="uid://basequfmpg04f" path="res://Scenes/Levels/Level2.tscn" id="3_2qwg5"]
[ext_resource type="PackedScene" uid="uid://btl5fdyjewnwc" path="res://Scenes/Levels/Level3.tscn" id="4_8bgmu"]
[ext_resource type="PackedScene" uid="uid://ctvkevnc0wxka" path="res://Scenes/Levels/Level4.tscn" id="5_6rnhl"]
[ext_resource type="PackedScene" uid="uid://col60npvg7wr1" path="res://Scenes/Levels/Level5.tscn" id="6_krvi4"]
[ext_resource type="PackedScene" uid="uid://8ukphol1isp2" path="res://Scenes/Levels/Level6.tscn" id="7_or04k"]
[ext_resource type="PackedScene" uid="uid://bsq7edeueqyjg" path="res://Scenes/Levels/Level7.tscn" id="8_407wt"]
[ext_resource type="PackedScene" uid="uid://c4xcka4ekuur8" path="res://Scenes/Levels/Level8.tscn" id="9_q0hjs"]
[ext_resource type="PackedScene" uid="uid://0hdnmilwrsq6" path="res://Scenes/Levels/Level9.tscn" id="10_imcyj"]
[ext_resource type="PackedScene" uid="uid://cxj6yeddshy16" path="res://Scenes/GameManager.tscn" id="11_wiyvp"]
[node name="Main" type="Node"]
script = ExtResource("1_g4hua")
Levels = Array[PackedScene]([ExtResource("2_cqnvi"), ExtResource("3_2qwg5"), ExtResource("4_8bgmu"), ExtResource("5_6rnhl"), ExtResource("6_krvi4"), ExtResource("7_or04k"), ExtResource("8_407wt"), ExtResource("9_q0hjs"), ExtResource("10_imcyj")])
GameManager = ExtResource("11_wiyvp")
[node name="MainMenu" parent="." instance=ExtResource("2_kvovw")]
z_index = 100

46
Scenes/MainMenu.tscn Normal file
View File

@@ -0,0 +1,46 @@
[gd_scene load_steps=4 format=3 uid="uid://b12gq4yqc3d8i"]
[ext_resource type="Script" path="res://Scripts/MainMenu.cs" id="1_6aikc"]
[ext_resource type="PackedScene" uid="uid://cjl20bs56430j" path="res://UI/Animations/UIAnimations.tscn" id="2_erh7e"]
[ext_resource type="Texture2D" uid="uid://srnf2fpwhlka" path="res://UI/titlescreenneedtext.png" id="3_7s65g"]
[node name="MainMenu" type="Node2D"]
script = ExtResource("1_6aikc")
[node name="NewGame" type="Control" parent="."]
z_index = 10
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="Button" type="Button" parent="NewGame"]
top_level = true
layout_mode = 0
offset_left = 583.0
offset_top = 441.0
offset_right = 1155.0
offset_bottom = 645.0
text = "Play"
[node name="TextureRect" type="TextureRect" parent="NewGame"]
layout_mode = 1
anchors_preset = 14
anchor_top = 0.5
anchor_right = 1.0
anchor_bottom = 0.5
offset_left = -7.0
offset_top = -170.0
offset_right = 1974.0
offset_bottom = 1395.0
grow_horizontal = 2
grow_vertical = 2
size_flags_horizontal = 4
texture = ExtResource("3_7s65g")
expand_mode = 1
[node name="UIAnimations" parent="." instance=ExtResource("2_erh7e")]
[connection signal="pressed" from="NewGame/Button" to="." method="OnStartButtonPressed"]

8
Scenes/MeleeEnemy.tscn Normal file
View File

@@ -0,0 +1,8 @@
[gd_scene load_steps=2 format=3 uid="uid://8hrpjyw4owst"]
[ext_resource type="PackedScene" uid="uid://bg18q3cj6wdie" path="res://Models/Enemies/meleeenemy - Updated.glb" id="1_ug6b2"]
[node name="meleeenemy - Updated" instance=ExtResource("1_ug6b2")]
[node name="AnimationPlayer" parent="." index="10"]
autoplay = "Animation"

33
Scenes/MeleeEnemyOrb.tscn Normal file
View File

@@ -0,0 +1,33 @@
[gd_scene load_steps=5 format=3 uid="uid://bt5rolsyjmx55"]
[ext_resource type="PackedScene" uid="uid://bay1tvgtpfxns" path="res://Scenes/MeleeEnemySchmoove.tscn" id="1_0pxgq"]
[ext_resource type="Script" path="res://Scripts/MeleeEnemy.cs" id="1_50och"]
[sub_resource type="BoxShape3D" id="BoxShape3D_1nq5h"]
size = Vector3(0.470892, 0.604331, 0.423598)
[sub_resource type="BoxShape3D" id="BoxShape3D_i1yvp"]
size = Vector3(0.470892, 0.604331, 0.423598)
[node name="MeleeEnemyOrb" type="Node3D"]
[node name="CharacterBody3D" type="CharacterBody3D" parent="."]
collision_layer = 0
collision_mask = 0
script = ExtResource("1_50och")
[node name="CollisionShape3D" type="CollisionShape3D" parent="CharacterBody3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0840461, 0.475385, 0.143401)
shape = SubResource("BoxShape3D_1nq5h")
[node name="meleeenemy - Updated" parent="CharacterBody3D" instance=ExtResource("1_0pxgq")]
[node name="Area3D" type="Area3D" parent="CharacterBody3D"]
collision_layer = 0
collision_mask = 2
[node name="CollisionShape3D" type="CollisionShape3D" parent="CharacterBody3D/Area3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0840461, 0.475385, 0.143401)
shape = SubResource("BoxShape3D_i1yvp")
[connection signal="body_entered" from="CharacterBody3D/Area3D" to="CharacterBody3D" method="OnHit"]

View File

@@ -0,0 +1,21 @@
[gd_scene load_steps=2 format=3 uid="uid://bay1tvgtpfxns"]
[ext_resource type="PackedScene" uid="uid://bg18q3cj6wdie" path="res://Models/Enemies/meleeenemy - Updated.glb" id="1_7u76h"]
[node name="meleeenemy - Updated" instance=ExtResource("1_7u76h")]
[node name="Circle_004" parent="." index="3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0868937, 0.567455, 0.186096)
[node name="Text_003" parent="." index="4"]
transform = Transform3D(0.0536953, 0, 0, 0, 0.0536953, 0, 0, 0, 0.0536953, 0.0626427, 0.123465, 0.11049)
[node name="Text_004" parent="." index="6"]
transform = Transform3D(0.0480592, 0, 0, 0, 0.0480592, 0, 0, 0, 0.0480592, 0.0626427, 0.123465, 0.11049)
[node name="Text_005" parent="." index="8"]
transform = Transform3D(0.0438454, 0, 0, 0, 0.0438454, 0, 0, 0, 0.0438454, 0.0626427, 0.123465, 0.11049)
[node name="AnimationPlayer" parent="." index="10"]
autoplay = "Animation"
reset_on_save = false

View File

@@ -3,14 +3,14 @@
[ext_resource type="Script" path="res://Scripts/ShotgunBullet.cs" id="1_binxs"]
[ext_resource type="Texture2D" uid="uid://borp7xvlfdcmq" path="res://Textures/Projectiles/bubble.png" id="2_dv80m"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_5vpcx"]
albedo_color = Color(0.584314, 0.0352941, 0.141176, 1)
[sub_resource type="CylinderShape3D" id="CylinderShape3D_eme14"]
radius = 0.3
[sub_resource type="SphereMesh" id="SphereMesh_ugmuv"]
material = SubResource("StandardMaterial3D_5vpcx")
[sub_resource type="CylinderShape3D" id="CylinderShape3D_752q2"]
radius = 0.3
[sub_resource type="SphereShape3D" id="SphereShape3D_o6kys"]
radius = 0.8
[sub_resource type="CylinderShape3D" id="CylinderShape3D_ebbqv"]
radius = 0.3
[node name="ShotgunBullet" type="Node3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.73894, 0)
@@ -19,72 +19,58 @@ Cooldown = 0.5
_projectileSpeed = 15.0
[node name="RigidBody3D" type="RigidBody3D" parent="."]
transform = Transform3D(0.999848, 0, -0.0174524, 0, 1, 0, 0.0174524, 0, 0.999848, -1.27456, 0, 0)
collision_layer = 2
collision_mask = 0
transform = Transform3D(0.99863, 0, -0.052336, 0, 1, 0, 0.052336, 0, 0.99863, -0.508974, 0, 0)
collision_layer = 34
collision_mask = 32
gravity_scale = 0.0
continuous_cd = true
max_contacts_reported = 10
max_contacts_reported = 1000
contact_monitor = true
can_sleep = false
[node name="MeshInstance3D" type="MeshInstance3D" parent="RigidBody3D"]
transform = Transform3D(0.647894, 0, 0.761731, 0, 1, 0, -0.761731, 0, 0.647894, 0, 0, 0)
visible = false
mesh = SubResource("SphereMesh_ugmuv")
skeleton = NodePath("../..")
[node name="CollisionShape3D" type="CollisionShape3D" parent="RigidBody3D"]
shape = SubResource("SphereShape3D_o6kys")
shape = SubResource("CylinderShape3D_eme14")
[node name="Sprite3D" type="Sprite3D" parent="RigidBody3D"]
pixel_size = 0.05
axis = 1
texture = ExtResource("2_dv80m")
[node name="RigidBody3D2" type="RigidBody3D" parent="."]
transform = Transform3D(0.999848, 0, 0.0174524, 0, 1, 0, -0.0174524, 0, 0.999848, 1.32, 0, 0)
collision_layer = 2
collision_mask = 0
transform = Transform3D(0.99863, 0, 0.052336, 0, 1, 0, -0.052336, 0, 0.99863, 0.647, 0, 0)
collision_layer = 34
collision_mask = 32
gravity_scale = 0.0
continuous_cd = true
max_contacts_reported = 10
max_contacts_reported = 1000
contact_monitor = true
can_sleep = false
[node name="MeshInstance3D" type="MeshInstance3D" parent="RigidBody3D2"]
visible = false
mesh = SubResource("SphereMesh_ugmuv")
skeleton = NodePath("../..")
[node name="CollisionShape3D" type="CollisionShape3D" parent="RigidBody3D2"]
shape = SubResource("SphereShape3D_o6kys")
shape = SubResource("CylinderShape3D_752q2")
[node name="Sprite3D" type="Sprite3D" parent="RigidBody3D2"]
pixel_size = 0.05
axis = 1
texture = ExtResource("2_dv80m")
[node name="RigidBody3D3" type="RigidBody3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -1.56619)
collision_layer = 2
collision_mask = 0
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -0.592052)
collision_layer = 34
collision_mask = 32
gravity_scale = 0.0
continuous_cd = true
max_contacts_reported = 10
max_contacts_reported = 1000
contact_monitor = true
can_sleep = false
[node name="MeshInstance3D" type="MeshInstance3D" parent="RigidBody3D3"]
transform = Transform3D(0.999848, 0, 0.0174524, 0, 1, 0, -0.0174524, 0, 0.999848, 0, 0, 0)
visible = false
mesh = SubResource("SphereMesh_ugmuv")
skeleton = NodePath("../..")
[node name="CollisionShape3D" type="CollisionShape3D" parent="RigidBody3D3"]
shape = SubResource("SphereShape3D_o6kys")
shape = SubResource("CylinderShape3D_ebbqv")
[node name="Sprite3D" type="Sprite3D" parent="RigidBody3D3"]
pixel_size = 0.05
axis = 1
texture = ExtResource("2_dv80m")
[node name="TTL" type="Timer" parent="."]
process_callback = 0
autostart = true
[connection signal="timeout" from="TTL" to="." method="OnTimeToLiveTimeout"]

127
Scenes/StageGUI.tscn Normal file
View File

@@ -0,0 +1,127 @@
[gd_scene load_steps=6 format=3 uid="uid://dq1gtd55p04do"]
[ext_resource type="Texture2D" uid="uid://dieoh0r7a5try" path="res://Textures/Portraits/Pisces.jpg" id="1_id5nf"]
[ext_resource type="Script" path="res://Scripts/StageGUI.cs" id="1_wr2m0"]
[ext_resource type="Texture2D" uid="uid://2vog2nty4qrj" path="res://Textures/wheel.png" id="4_3jyfi"]
[sub_resource type="Animation" id="Animation_ptfpl"]
resource_name = "Rollover"
[sub_resource type="AnimationLibrary" id="AnimationLibrary_05shj"]
_data = {
"Rollover": SubResource("Animation_ptfpl")
}
[node name="StageGUI" type="Control"]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
offset_left = -59.0
offset_top = -36.0
offset_right = -59.0
offset_bottom = -36.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_wr2m0")
[node name="Placeholder1" type="ColorRect" parent="."]
custom_minimum_size = Vector2(410, 1080)
layout_mode = 1
anchors_preset = 4
anchor_top = 0.5
anchor_bottom = 0.5
offset_top = -540.0
offset_right = 240.0
offset_bottom = 540.0
grow_vertical = 2
color = Color(1, 0.447059, 1, 1)
[node name="Placeholder2" type="ColorRect" parent="."]
custom_minimum_size = Vector2(410, 1080)
layout_mode = 1
anchors_preset = 6
anchor_left = 1.0
anchor_top = 0.5
anchor_right = 1.0
anchor_bottom = 0.5
offset_left = -300.0
offset_top = -540.0
offset_bottom = 540.0
grow_horizontal = 0
grow_vertical = 2
color = Color(1, 0.447059, 1, 1)
[node name="CharacterSelect" type="Control" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="AnimationPlayer" type="AnimationPlayer" parent="CharacterSelect"]
libraries = {
"": SubResource("AnimationLibrary_05shj")
}
[node name="Wheel" type="TextureRect" parent="CharacterSelect"]
visible = false
layout_mode = 0
offset_left = 48.0
offset_top = 71.0
offset_right = 349.0
offset_bottom = 386.0
texture = ExtResource("4_3jyfi")
expand_mode = 1
[node name="Wheel2" type="TextureRect" parent="CharacterSelect"]
visible = false
layout_mode = 0
offset_left = 1570.0
offset_top = 84.0
offset_right = 1871.0
offset_bottom = 399.0
texture = ExtResource("4_3jyfi")
expand_mode = 1
[node name="P1_Portrait" type="TextureRect" parent="CharacterSelect"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
offset_left = 30.0
offset_top = 400.0
offset_right = -722.0
offset_bottom = 400.0
grow_horizontal = 2
grow_vertical = 2
scale = Vector2(0.3, 0.3)
texture = ExtResource("1_id5nf")
expand_mode = 1
flip_h = true
[node name="P2_Portrait" type="TextureRect" parent="CharacterSelect"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
offset_left = 1545.0
offset_top = 400.0
offset_right = 793.0
offset_bottom = 400.0
grow_horizontal = 2
grow_vertical = 2
scale = Vector2(0.3, 0.3)
texture = ExtResource("1_id5nf")
expand_mode = 1
[node name="Button" type="Button" parent="CharacterSelect"]
layout_mode = 0
offset_left = 64.0
offset_top = 774.0
offset_right = 336.0
offset_bottom = 889.0
text = "Character select"
[connection signal="pressed" from="CharacterSelect/Button" to="." method="OnCharacterSelect"]

View File

@@ -9,8 +9,7 @@ albedo_color = Color(0.584314, 0.0352941, 0.141176, 1)
[sub_resource type="SphereMesh" id="SphereMesh_wuk0e"]
material = SubResource("StandardMaterial3D_phgri")
[sub_resource type="SphereShape3D" id="SphereShape3D_rokeu"]
radius = 0.8
[sub_resource type="CylinderShape3D" id="CylinderShape3D_3c0di"]
[node name="TestBullet" type="Node3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.538645, 0)
@@ -19,12 +18,11 @@ Cooldown = 0.5
_projectileSpeed = 15.0
[node name="RigidBody3D" type="RigidBody3D" parent="."]
collision_layer = 2
collision_mask = 0
collision_layer = 34
collision_mask = 34
gravity_scale = 0.0
custom_integrator = true
continuous_cd = true
max_contacts_reported = 10
max_contacts_reported = 1000
contact_monitor = true
can_sleep = false
@@ -34,10 +32,17 @@ mesh = SubResource("SphereMesh_wuk0e")
skeleton = NodePath("../..")
[node name="CollisionShape3D" type="CollisionShape3D" parent="RigidBody3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0905764, 0, 0)
shape = SubResource("SphereShape3D_rokeu")
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0054872, -0.00215495, 0.0167444)
shape = SubResource("CylinderShape3D_3c0di")
[node name="Sprite3D" type="Sprite3D" parent="RigidBody3D"]
pixel_size = 0.05
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.00168204, -0.0587139, 0)
axis = 1
texture = ExtResource("2_n5c16")
[node name="TTL" type="Timer" parent="."]
process_callback = 0
autostart = true
[connection signal="body_entered" from="RigidBody3D" to="." method="OnBulletHitObject"]
[connection signal="timeout" from="TTL" to="." method="OnTimeToLiveTimeout"]

View File

@@ -1,41 +1,61 @@
[gd_scene load_steps=6 format=3 uid="uid://dkjdt7uq3a4j3"]
[gd_scene load_steps=7 format=3 uid="uid://dkjdt7uq3a4j3"]
[ext_resource type="ArrayMesh" uid="uid://d3u564wle888o" path="res://Models/TestModels/Ness/nesspoly.obj" id="1_jhe4l"]
[ext_resource type="Script" path="res://Scripts/TestEnemy.cs" id="1_m03um"]
[ext_resource type="PackedScene" uid="uid://rlxnnw4yay7e" path="res://Scenes/EnemyBullet.tscn" id="2_h68e2"]
[ext_resource type="Script" path="res://Scripts/FireAtPlayer.cs" id="3_dhmfs"]
[sub_resource type="Curve3D" id="Curve3D_dgatw"]
_data = {
"points": PackedVector3Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2.5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0),
"tilts": PackedFloat32Array(0, 0, 0)
}
point_count = 3
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_eb41r"]
radius = 1.0
height = 3.5
[node name="TestEnemy" type="Node3D"]
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0, 0)
[node name="RigidBody3D" type="RigidBody3D" parent="."]
[node name="Path3D" type="Path3D" parent="."]
curve = SubResource("Curve3D_dgatw")
[node name="PathFollow3D" type="PathFollow3D" parent="Path3D"]
transform = Transform3D(0.999999, 0, 0, 0, 1, 0, 0, 0, 0.999999, 0, 0, 0)
rotation_mode = 0
cubic_interp = false
tilt_enabled = false
[node name="RigidBody3D" type="RigidBody3D" parent="Path3D/PathFollow3D" node_paths=PackedStringArray("_pathFollow")]
collision_layer = 0
collision_mask = 2
gravity_scale = 0.0
continuous_cd = true
max_contacts_reported = 10
contact_monitor = true
can_sleep = false
script = ExtResource("1_m03um")
_speed = 1.0
_pathFollow = NodePath("..")
[node name="CollisionShape3D" type="CollisionShape3D" parent="RigidBody3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.51635, 0)
shape = SubResource("CapsuleShape3D_eb41r")
[node name="Nesspoly" type="MeshInstance3D" parent="RigidBody3D"]
[node name="Nesspoly" type="MeshInstance3D" parent="Path3D/PathFollow3D/RigidBody3D"]
transform = Transform3D(7, 0, 0, 0, 7, 0, 0, 0, 7, 0, 0, 0)
mesh = ExtResource("1_jhe4l")
skeleton = NodePath("../..")
skeleton = NodePath("../../../..")
[node name="Timer" type="Timer" parent="." node_paths=PackedStringArray("_enemy")]
[node name="CollisionShape3D" type="CollisionShape3D" parent="Path3D/PathFollow3D/RigidBody3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -9.53674e-07, 1.51635, -9.53674e-07)
shape = SubResource("CapsuleShape3D_eb41r")
[node name="Timer" type="Timer" parent="Path3D" node_paths=PackedStringArray("_enemy")]
wait_time = 3.0
autostart = true
script = ExtResource("3_dhmfs")
_enemy = NodePath("../RigidBody3D")
_enemy = NodePath("../PathFollow3D/RigidBody3D")
_fireProjectile = ExtResource("2_h68e2")
[connection signal="body_entered" from="RigidBody3D" to="RigidBody3D" method="OnHit"]
[connection signal="tree_exiting" from="RigidBody3D" to="Timer" method="OnDied"]
[connection signal="timeout" from="Timer" to="Timer" method="OnFireAtPlayer"]
[connection signal="body_entered" from="Path3D/PathFollow3D/RigidBody3D" to="Path3D/PathFollow3D/RigidBody3D" method="OnHit"]
[connection signal="tree_exiting" from="Path3D/PathFollow3D/RigidBody3D" to="Path3D/Timer" method="OnDied"]
[connection signal="timeout" from="Path3D/Timer" to="Path3D/Timer" method="OnFireAtPlayer"]

View File

@@ -1,7 +1,7 @@
[gd_scene load_steps=13 format=3 uid="uid://dy3d4e6qegyjg"]
[gd_scene load_steps=14 format=3 uid="uid://dy3d4e6qegyjg"]
[ext_resource type="Script" path="res://Scripts/TestLevel.cs" id="1_blhn0"]
[ext_resource type="PackedScene" uid="uid://b38hcomu4tpm5" path="res://Scenes/TestCharacter.tscn" id="1_fwf6c"]
[ext_resource type="PackedScene" uid="uid://b38hcomu4tpm5" path="res://Scenes/Characters/PiscesWitch.tscn" id="1_fwf6c"]
[ext_resource type="PackedScene" uid="uid://bckd04543occ5" path="res://Levels/levelTEST.gltf" id="2_afl3s"]
[ext_resource type="PackedScene" uid="uid://dkjdt7uq3a4j3" path="res://Scenes/TestEnemy.tscn" id="3_ds7vi"]
[ext_resource type="PackedScene" uid="uid://si4byubqnng4" path="res://Scenes/TestBullet.tscn" id="3_lmb02"]
@@ -28,19 +28,24 @@ radius = 2.32337
height = 5.0
radius = 2.06347
[sub_resource type="BoxShape3D" id="BoxShape3D_6yy78"]
size = Vector3(23.703, 10, 5.06868)
[node name="Level" type="Node3D" node_paths=PackedStringArray("_spawnPoint")]
script = ExtResource("1_blhn0")
_spawnPoint = NodePath("SpawnPoint")
[node name="Camera3D" type="Camera3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0, 1, 0, -1, 0, -0.0769171, 95.2611, -32.0601)
transform = Transform3D(1, 0, 0, 0, 0.496974, 0.867765, 0, -0.867765, 0.496974, 0, 47.9461, -5.79899)
projection = 1
fov = 30.0
size = 45.0
[node name="DebugCamera" type="Camera3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.821149, 0.570714, 0, -0.570714, 0.821149, -0.36148, 22.6449, 10.8421)
[node name="Fish Witch" parent="." groups=["Player"] instance=ExtResource("1_fwf6c")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 40.7459)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 4.64605, -18.4987)
_speed = 10.0
_fireProjectile = ExtResource("3_lmb02")
_altFireProjectile = ExtResource("4_t522c")
@@ -62,8 +67,6 @@ shape = SubResource("BoxShape3D_hr26o")
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -23.1248, 1.81661, -31.1077)
shape = SubResource("BoxShape3D_hr26o")
[node name="levelTEST" parent="StaticBody3D" instance=ExtResource("2_afl3s")]
[node name="CollisionShape3D4" type="CollisionShape3D" parent="StaticBody3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 4.42545)
shape = SubResource("BoxShape3D_sjyl3")
@@ -84,20 +87,33 @@ shape = SubResource("BoxShape3D_sjyl3")
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -48.9058, -1.95573, -40.25)
shape = SubResource("BoxShape3D_sjyl3")
[node name="Rock1" type="CollisionShape3D" parent="StaticBody3D"]
[node name="TestEnemy" parent="." instance=ExtResource("3_ds7vi")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -20.5579, 5.52246, -43.2246)
[node name="SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.757998, 6.71652, -10.4768)
[node name="StaticBody3D2" type="StaticBody3D" parent="."]
collision_layer = 16
collision_mask = 16
[node name="Rock1" type="CollisionShape3D" parent="StaticBody3D2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -7.93645, 5.82082, -21.6909)
shape = SubResource("CylinderShape3D_lhgew")
[node name="Rock2" type="CollisionShape3D" parent="StaticBody3D"]
[node name="Rock2" type="CollisionShape3D" parent="StaticBody3D2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.82773, 6.46042, -40.6232)
shape = SubResource("CylinderShape3D_fa41j")
[node name="Rock3" type="CollisionShape3D" parent="StaticBody3D"]
[node name="Rock3" type="CollisionShape3D" parent="StaticBody3D2"]
transform = Transform3D(0.999841, -0.0178538, 0, 0.0178538, 0.999841, 0, 0, 0, 1, -6.84036, 6.33278, -46.1737)
shape = SubResource("CylinderShape3D_krlem")
[node name="TestEnemy" parent="." instance=ExtResource("3_ds7vi")]
transform = Transform3D(0.998405, 0.0226647, 0.0517184, -0.0544217, 0.630486, 0.77429, -0.0150588, -0.775869, 0.630714, -20.5579, 5.52246, -43.2246)
[node name="levelTEST" parent="." instance=ExtResource("2_afl3s")]
[node name="SpawnPoint" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.5, 0.866025, 0, -0.866025, 0.5, -0.757998, 6.71652, -10.4768)
[node name="Area3D" type="Area3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.37586, 6.95177, -51.8635)
[node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.8568, 0, -1.7855)
shape = SubResource("BoxShape3D_6yy78")

9
Scenes/god_circuit.tscn Normal file
View File

@@ -0,0 +1,9 @@
[gd_scene load_steps=3 format=3 uid="uid://brbshysbgd47q"]
[ext_resource type="Script" path="res://Scripts/GodCircuit.cs" id="1_gyfww"]
[ext_resource type="PackedScene" uid="uid://cigdj84f0m3jd" path="res://Levels/Models/god circuit stage 1.glb" id="1_w12q0"]
[node name="God Circuit" type="Node3D"]
script = ExtResource("1_gyfww")
[node name="god circuit stage 1" parent="." instance=ExtResource("1_w12q0")]

View File

@@ -0,0 +1,29 @@
[gd_scene load_steps=2 format=3 uid="uid://bh2xtqtquiplt"]
[ext_resource type="PackedScene" uid="uid://dnqcfnmn1ijj6" path="res://Models/Enemies/meleeenemyloop.glb" id="1_kiqcg"]
[node name="meleeenemyloop" instance=ExtResource("1_kiqcg")]
[node name="Icosphere_001" parent="." index="0"]
transform = Transform3D(0.857174, 0, 0, 0, 0.857174, 0, 0, 0, 0.857174, 0.0805536, 0.463081, 0.158035)
[node name="Circle_001" parent="." index="1"]
transform = Transform3D(1.04984, 0, -0.0183252, 0, 1.05, 0, 0.0183252, 0, 1.04984, 0.0457887, 0.476383, 0.128917)
[node name="Circle_002" parent="." index="2"]
transform = Transform3D(1.1, 0, 0, 0, 1.09983, 0.0191979, 0, -0.0191979, 1.09983, 0.0659095, 0.483551, 0.119628)
[node name="Circle_004" parent="." index="3"]
transform = Transform3D(0.999848, -0.0174526, 0, 0.0174526, 0.999848, 0, 0, 0, 1, 0.0868937, 0.567455, 0.186096)
[node name="Text_003" parent="." index="4"]
transform = Transform3D(0.0536871, 0, -0.000937123, 0, 0.0536953, 0, 0.000937123, 0, 0.0536871, 0.0626427, 0.123465, 0.11049)
[node name="Text_004" parent="." index="6"]
transform = Transform3D(0.0480519, 0, -0.000838759, 0, 0.0480592, 0, 0.000838759, 0, 0.0480519, 0.0626427, 0.123465, 0.11049)
[node name="Text_005" parent="." index="8"]
transform = Transform3D(0.0438387, 0, -0.000765217, 0, 0.0438454, 0, 0.000765217, 0, 0.0438387, 0.0626427, 0.123465, 0.11049)
[node name="AnimationPlayer" parent="." index="10"]
autoplay = "Animation"

15
Scripts/AreaExit.cs Normal file
View File

@@ -0,0 +1,15 @@
using Godot;
public partial class AreaExit : Node3D
{
[Export]
private int _levelIndex;
private void OnExitEntered(Node3D node)
{
GD.Print("Exit reached");
var main = GetTree().Root.GetNode<Main>("/root/Main");
main.LoadNextLevel(_levelIndex);
}
}

17
Scripts/BGMPlayer.cs Normal file
View File

@@ -0,0 +1,17 @@
using Godot;
public partial class BGMPlayer : AudioStreamPlayer
{
public void SetBGMFromFilepath(string path)
{
var audioStream = ResourceLoader.Load<AudioStream>(path);
if (Stream != audioStream)
Stream = audioStream;
}
public void PlayBGM()
{
if (!Playing)
Play();
}
}

89
Scripts/GameManager.cs Normal file
View File

@@ -0,0 +1,89 @@
using Godot;
using Godot.Collections;
using System.Linq;
public partial class GameManager : Node
{
[Signal]
public delegate void OnGameOverEventHandler();
[Signal]
public delegate void OnP1GameOverEventHandler();
[Signal]
public delegate void OnP2GameOverEventHandler();
public int NumberOfPlayers;
public bool IsP1SelectingCharacter = true;
public bool IsP2SelectingCharacter = true;
[Export]
public Array<PackedScene> _p1Characters;
[Export]
public Array<PackedScene> _p2Characters;
[Export]
public Character _p1SelectedCharacter;
[Export]
public Character _p2SelectedCharacter;
private bool _p1GameOver = false;
private bool _p2GameOver = false;
private int _p1CharacterIndex = 0;
private int _p2CharacterIndex = 0;
public void SetP1ToNextCharacter() => _p1CharacterIndex = (++_p1CharacterIndex) % _p1Characters.Count();
public void SetP1ToPreviousCharacter() => _p1CharacterIndex = _p1CharacterIndex == 0 ? _p1Characters.Count() : --_p1CharacterIndex;
public void OnP1CharacterSelected()
{
GD.Print("Instancing...");
var selectedPlayer = _p1Characters[_p1CharacterIndex].Instantiate();
_p1SelectedCharacter = selectedPlayer as Character;
GetTree().Root.AddChild(_p1SelectedCharacter);
var playerSpawnPoint = GetNode<SpawnPoint>("P1SpawnPoint");
playerSpawnPoint.SetPlayerPosition(_p1SelectedCharacter);
}
public void RemoveP1Character()
{
_p1Characters.Remove(_p1Characters.ElementAt(_p1CharacterIndex));
_p1SelectedCharacter?.QueueFree();
_p1CharacterIndex = 0;
}
public void SetP1GameOver(bool isGameOver)
{
_p1GameOver = isGameOver;
if (isGameOver)
{
EmitSignal(SignalName.OnP1GameOver);
CheckForOverallGameOver();
}
}
public bool IsP1GameOver => _p1GameOver;
public void SetP2GameOver(bool isGameOver)
{
_p2GameOver = isGameOver;
if (isGameOver)
{
EmitSignal(SignalName.OnP2GameOver);
CheckForOverallGameOver();
}
}
private void CheckForOverallGameOver()
{
if (_p1GameOver && _p2GameOver)
EmitSignal(SignalName.OnGameOver);
}
}
public partial class Character : CharacterBody3D
{
}

12
Scripts/GodCircuit.cs Normal file
View File

@@ -0,0 +1,12 @@
using Godot;
public partial class GodCircuit : Node3D
{
private void OnHit(Node3D node)
{
GD.Print("Hit");
var hpComponent = GetNode<HealthPoints>("HP Component");
hpComponent.TakeDamage(800000);
hpComponent.UpdateHealthbar();
}
}

28
Scripts/HealthPoints.cs Normal file
View File

@@ -0,0 +1,28 @@
using Godot;
public partial class HealthPoints : Node
{
[Export]
public long MaximumHP { get; protected set; }
public long CurrentHP { get; protected set; }
[Export]
private TextureProgressBar _healthBar;
public override void _Ready()
{
CurrentHP = MaximumHP;
}
public void TakeDamage(long damage)
{
CurrentHP -= damage;
GD.Print(CurrentHP);
}
public void UpdateHealthbar()
{
_healthBar.Value = CurrentHP;
}
}

View File

@@ -0,0 +1,9 @@
using Godot;
public partial class HealthbarProgress : TextureProgressBar
{
public void UpdateBar(long amount, long full)
{
Value = amount;
}
}

46
Scripts/Main.cs Normal file
View File

@@ -0,0 +1,46 @@
using Godot;
using Godot.Collections;
using System.Linq;
public partial class Main : Node
{
[Export]
public Array<PackedScene> Levels;
[Export]
public PackedScene GameManager;
public void LoadLevel(int indexToLoad)
{
var sceneToLoad = Levels.ElementAt(indexToLoad);
CallDeferred(nameof(DeferredGoToScene), sceneToLoad);
var gameManager = GameManager.Instantiate();
AddChild(gameManager);
}
public void LoadNextLevel(int currentSceneIndex)
{
if (currentSceneIndex < Levels.Count())
{
var currentScene = Levels.ToList().ElementAt(currentSceneIndex);
var nextScene = currentSceneIndex + 1;
CallDeferred(nameof(DeferredGoToScene), Levels.ElementAt(nextScene), currentScene);
}
}
private void DeferredGoToScene(PackedScene sceneToAdd)
{
GD.Print(sceneToAdd.ResourcePath);
var nextScene = GD.Load<PackedScene>(sceneToAdd.ResourcePath);
var newScene = nextScene.Instantiate();
GetTree().Root.AddChild(newScene);
}
private void DeferredGoToScene(PackedScene sceneToAdd, PackedScene sceneToRemove)
{
GD.Print(sceneToAdd.ResourcePath);
GetTree().GetFirstNodeInGroup("Level").QueueFree();
var nextScene = GD.Load<PackedScene>(sceneToAdd.ResourcePath);
var newScene = nextScene.Instantiate();
GetTree().Root.AddChild(newScene);
}
}

36
Scripts/MainMenu.cs Normal file
View File

@@ -0,0 +1,36 @@
using Godot;
using System.Linq;
public partial class MainMenu : Node2D
{
private AnimationPlayer _player;
[Signal]
public delegate void IntroAnimationsCompletedEventHandler();
public override void _Ready()
{
GetParent().GetNode<TextureRect>("MainMenu/UIAnimations/LoreSplash").Show();
_player = GetTree().Root.GetNode<AnimationPlayer>("/root/Main/MainMenu/UIAnimations/AnimationPlayer");
_player.Queue("IntroLore");
var bgmPlayer = GetTree().Root.GetNode<BGMPlayer>("BgmPlayer");
bgmPlayer.SetBGMFromFilepath("Audio/BGM/titlemusic.wav");
bgmPlayer.PlayBGM();
}
private void OnStartButtonPressed()
{
_player.Play("FirstLevel");
Hide();
_player.AnimationFinished += OnAnimationFinished;
}
private void OnAnimationFinished(StringName animationName)
{
if (animationName == "FirstLevel")
{
var main = GetTree().Root.GetNode<Main>("/root/Main");
main.LoadLevel(0);
}
}
}

34
Scripts/MeleeEnemy.cs Normal file
View File

@@ -0,0 +1,34 @@
using Godot;
using System.Linq;
public partial class MeleeEnemy : BasicEnemy
{
[Export]
private float _speed = 0.4f;
public override void _PhysicsProcess(double delta)
{
var players = GetTree().GetNodesInGroup("Player");
if (players.Any())
{
var convertedPlayers = players.Select(x => (Node3D)x);
var target = convertedPlayers.OrderBy(x => Position.DistanceTo(x.Position)).FirstOrDefault();
Position = Position.MoveToward(target.Position, _speed * (float)delta);
MoveAndSlide();
}
}
}
public partial class BasicEnemy : CharacterBody3D
{
public void OnHit(Node3D node)
{
QueueFree();
}
private void DebugOnHit()
{
var node = new Node3D();
OnHit(node);
}
}

101
Scripts/Player1.cs Normal file
View File

@@ -0,0 +1,101 @@
using Godot;
public partial class Player1 : Character
{
[Export]
private float _speed = 5.0f;
[Export]
private PackedScene _fireProjectile;
[Export]
private PackedScene _altFireProjectile;
private GameManager _gameManager;
public bool CanShoot { get; private set; }
public override void _Ready()
{
CanShoot = true;
_gameManager = GetTree().Root.GetNode<GameManager>("Main/GameManager");
_gameManager.SetP1GameOver(false);
}
public override void _PhysicsProcess(double delta)
{
if (!_gameManager.IsP1SelectingCharacter)
{
Velocity = CalculateCharacterMovement(delta);
MoveAndSlide();
}
}
public override void _UnhandledInput(InputEvent @event)
{
if (Input.IsActionJustPressed("exit"))
GetTree().Quit();
if (!_gameManager.IsP1SelectingCharacter)
{
if (Input.IsActionJustPressed("p1_fire") && CanShoot)
Fire();
if (Input.IsActionJustPressed("p1_altfire") && CanShoot)
AltFire();
}
}
private Vector3 CalculateCharacterMovement(double delta)
{
var velocity = Velocity;
var inputDir = Input.GetVector("p1_left", "p1_right", "p1_up", "p1_down");
var direction = (Transform.Basis * new Vector3(inputDir.X, 0, inputDir.Y)).Normalized();
if (direction != Vector3.Zero)
{
velocity.X = direction.X * _speed;
velocity.Z = direction.Z * _speed;
GetNode<Node3D>("Pivot").LookAt(Position + direction, Vector3.Up);
}
else
{
velocity.X = Mathf.MoveToward(Velocity.X, 0, _speed);
velocity.Z = Mathf.MoveToward(Velocity.Z, 0, _speed);
}
return velocity;
}
private async void Fire()
{
var projectile = _fireProjectile.Instantiate<Projectile>();
projectile.Position = Position + new Vector3(0f, 1f, -1f);
GetParent().AddChild(projectile);
CanShoot = false;
await ToSignal(GetTree().CreateTimer(projectile.Cooldown), "timeout");
CanShoot = true;
}
private async void AltFire()
{
var projectile = _altFireProjectile.Instantiate<Projectile>();
projectile.Position = Position + new Vector3(0f, 1f, -1f);
GetParent().AddChild(projectile);
CanShoot = false;
await ToSignal(GetTree().CreateTimer(projectile.Cooldown), "timeout");
CanShoot = true;
}
private void HitDebug()
{
var node = new Node3D();
OnHit(node);
}
private void OnHit(Node3D node)
{
_gameManager.RemoveP1Character();
if (_gameManager._p1Characters.Count == 0)
{
GD.Print("Game over for P1");
_gameManager.SetP1GameOver(true);
}
}
}

View File

@@ -1,6 +1,7 @@
using Godot;
using System;
public partial class TestCharacter : CharacterBody3D
public partial class Player2 : CharacterBody3D
{
[Export]
private float _speed = 5.0f;
@@ -18,31 +19,37 @@ public partial class TestCharacter : CharacterBody3D
public override void _PhysicsProcess(double delta)
{
if (Input.IsActionJustPressed("p1_fire") && CanShoot)
Fire();
if (Input.IsActionJustPressed("p1_altfire") && CanShoot)
AltFire();
Velocity = CalculateCharacterMovement(delta);
MoveAndSlide();
}
public override void _UnhandledInput(InputEvent @event)
{
if (Input.IsActionJustPressed("exit"))
GetTree().Quit();
if (Input.IsActionJustPressed("p2_fire") && CanShoot)
Fire();
if (Input.IsActionJustPressed("p2_altfire") && CanShoot)
AltFire();
}
private Vector3 CalculateCharacterMovement(double delta)
{
var velocity = Velocity;
var inputDir = Input.GetVector("p1_left", "p1_right", "p1_up", "p1_down");
var inputDir = Input.GetVector("p2_left", "p2_right", "p2_up", "p2_down");
var direction = (Transform.Basis * new Vector3(inputDir.X, 0, inputDir.Y)).Normalized();
if (direction != Vector3.Zero)
{
velocity.X = direction.X * _speed;
velocity.Z = direction.Z * _speed * 2;
GetNode<Node3D>("Pivot").LookAt(Position + direction, Vector3.Forward + Vector3.Up);
velocity.Z = direction.Z * _speed;
GetNode<Node3D>("Pivot").LookAt(Position + direction, Vector3.Up);
}
else
{
velocity.X = Mathf.MoveToward(Velocity.X, 0, _speed);
velocity.Z = Mathf.MoveToward(Velocity.Z, 0, _speed * 2);
velocity.Z = Mathf.MoveToward(Velocity.Z, 0, _speed);
}
return velocity;
}
@@ -50,7 +57,7 @@ public partial class TestCharacter : CharacterBody3D
private async void Fire()
{
var projectile = _fireProjectile.Instantiate<Projectile>();
projectile.Position = Position + new Vector3(0f, 1f, -3f);
projectile.Position = Position + new Vector3(0f, 1f, -1f);
GetParent().AddChild(projectile);
CanShoot = false;
await ToSignal(GetTree().CreateTimer(projectile.Cooldown), "timeout");
@@ -60,7 +67,7 @@ public partial class TestCharacter : CharacterBody3D
private async void AltFire()
{
var projectile = _altFireProjectile.Instantiate<Projectile>();
projectile.Position = Position + new Vector3(0f, 1f, -3f);
projectile.Position = Position + new Vector3(0f, 1f, -1f);
GetParent().AddChild(projectile);
CanShoot = false;
await ToSignal(GetTree().CreateTimer(projectile.Cooldown), "timeout");

10
Scripts/SpawnPoint.cs Normal file
View File

@@ -0,0 +1,10 @@
using Godot;
public partial class SpawnPoint : Marker3D
{
public void SetPlayerPosition(Character character)
{
GD.Print("Moving character to spawn point");
character.Position = Position;
}
}

50
Scripts/StageGUI.cs Normal file
View File

@@ -0,0 +1,50 @@
using Godot;
public partial class StageGUI : Control
{
[Signal]
public delegate void OnCharacterSelectionMadeEventHandler();
private GameManager _gameManager;
public override void _Ready()
{
_gameManager = GetTree().Root.GetNode<GameManager>("Main/GameManager");
}
public void OnCharacterSelect()
{
if (_gameManager.IsP1GameOver)
return;
var wheel1 = GetNode<TextureRect>("CharacterSelect/Wheel");
var wheel2 = GetNode<TextureRect>("CharacterSelect/Wheel2");
wheel1.FocusMode = FocusModeEnum.All;
wheel1.GrabFocus();
wheel1.Visible = true;
_gameManager.IsP1SelectingCharacter = true;
}
public override void _Process(double delta)
{
var wheel1 = GetNode<TextureRect>("CharacterSelect/Wheel");
if (wheel1.HasFocus())
{
if (Input.IsActionJustPressed("p1_right"))
_gameManager.SetP1ToNextCharacter();
if (Input.IsActionJustPressed("p1_left"))
_gameManager.SetP1ToPreviousCharacter();
if (Input.IsActionJustPressed("p1_fire"))
{
GD.Print("Selected character");
wheel1.ReleaseFocus();
wheel1.Hide();
_gameManager.IsP1SelectingCharacter = false;
EmitSignal(SignalName.OnCharacterSelectionMade);
}
}
}
}

Some files were not shown because too many files have changed in this diff Show More