Compare commits

66 Commits

Author SHA1 Message Date
4b840bbe7f Door hit 2023-09-07 01:21:05 -07:00
379ef0189c Add wall boundaries 2023-09-06 20:53:38 -07:00
8a923f04c4 ????????? 2023-09-06 20:32:16 -07:00
5405c33192 Fix music loop 2023-09-06 19:55:00 -07:00
7733032397 Fix megami box 2023-09-06 19:51:25 -07:00
41adf908a5 Actual fix 2023-09-06 18:28:14 -07:00
f4c0944afa Fix range enemy rotation 2023-09-06 17:59:16 -07:00
aac5fbd297 Fix game over 2023-09-06 17:41:53 -07:00
5acfb9300c Make enemy shots smaller 2023-09-06 15:38:27 -07:00
d7dd58b5df Refactor projectiles 2023-09-06 15:20:34 -07:00
d536aa2014 Refactor 2023-09-06 14:43:12 -07:00
f8cca640a6 Beeg checkin 2023-09-06 03:49:16 -07:00
f180d4cacd Oops big commit 2023-09-06 01:32:54 -07:00
ed4ebfafac Fix Capricorn sprite placement 2023-09-05 02:11:58 -07:00
b9e66d9f93 Oops 2023-09-05 01:52:10 -07:00
c645c56fb8 Capricorn laser done 2023-09-05 00:30:05 -07:00
5eaa5fc91e Cleanup 2023-09-04 23:57:22 -07:00
69fed8d403 UI Changes 2023-09-04 23:56:16 -07:00
83b4d90ccb Update projectile textures 2023-09-04 22:17:37 -07:00
64f5ec8a5d SFX 2023-09-04 22:09:56 -07:00
d0ea3eeec1 Replace background of sidebar 2023-09-04 21:12:34 -07:00
4e3b200a8d Import Stage 7 2023-09-04 20:59:01 -07:00
ef3045b3d2 ???? 2023-09-04 20:50:50 -07:00
2d2dea616c Animate Capricorn 2023-09-04 19:26:28 -07:00
75bbe25929 Basic game over imp 2023-09-04 18:14:41 -07:00
59a77d084c Fix hitboxes, add collision detection to maps 2023-09-04 18:07:58 -07:00
316651f409 Trying to fix spawn issues 2023-09-04 17:22:02 -07:00
ad48e723d5 End to end kind of works 2023-09-04 16:40:14 -07:00
b315a90720 I am doing a CHAOS check in. showing support for one another. I need SIX jacks to post, not share, this message to show you are always there to kill chaos if someone needs it. let's go gentlemen... 2023-09-04 16:11:05 -07:00
4d0b0196e6 sum fixes 2023-09-04 15:02:17 -07:00
0be97870dc Characters exit 2023-09-04 13:39:18 -07:00
5aff65d384 Fix exit 2023-09-04 13:02:01 -07:00
a6a8f5e893 Select fix 2023-09-04 11:43:54 -07:00
e27fe40420 Fix spawn location and on hit 2023-09-04 11:36:31 -07:00
c2239d240e Fix multiplayer 2023-09-04 07:20:33 -07:00
c32bbfe45a Refactor Player and Character 2023-09-04 06:42:02 -07:00
a8ea40dee8 Fix small selection bug 2023-09-04 04:53:50 -07:00
70bf65887c Import megami 2023-09-04 04:52:41 -07:00
b29f7ce75b Stage 6 import 2023-09-04 04:28:24 -07:00
8523d6b64f Madness check-in 2023-09-04 04:19:27 -07:00
bf60e2dd9e Fix hit detection 2023-09-04 01:43:20 -07:00
0bd39bfd51 Minor fixes 2023-09-04 01:36:18 -07:00
3738f24705 Fix issues 2023-09-04 01:33:30 -07:00
8eeca13607 Fix shader 2023-09-04 00:06:22 -07:00
6ff28bce60 CUTTTTTAAAAA 2023-09-03 23:10:58 -07:00
1ae76971f7 Add final level, start on cutter weapon 2023-09-03 22:05:39 -07:00
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
444 changed files with 50853 additions and 4592 deletions

View File

@@ -0,0 +1,220 @@
[gd_scene load_steps=8 format=3 uid="uid://cjl20bs56430j"]
[ext_resource type="Texture2D" uid="uid://b1ucutlpx3fnp" path="res://Textures/GUI/INTRO LORE.png" id="1_f4dp3"]
[ext_resource type="Texture2D" uid="uid://haxbuoepqn2b" path="res://Textures/GUI/LEVEL DROP 1.png" id="2_r3e0d"]
[sub_resource type="Animation" id="Animation_3u8q8"]
resource_name = "FirstLevel"
length = 5.0
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("DissolveRect:modulate")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 1),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Color(1, 1, 1, 1), Color(1, 1, 1, 0)]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("FirstLevelSplash:visible")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 5),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [true, false]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("LoreSplash:visible")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 5),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [false, false]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("DissolveRect:visible")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 5),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [true, false]
}
[sub_resource type="Animation" id="Animation_qsjit"]
resource_name = "IntroLore"
length = 10.0
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("DissolveRect:modulate")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 3, 7.5, 10),
"transitions": PackedFloat32Array(1, 1, 1, 1),
"update": 0,
"values": [Color(1, 1, 1, 1), Color(1, 1, 1, 0), Color(1, 1, 1, 0), Color(1, 1, 1, 1)]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("DissolveRect:visible")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 10),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [true, false]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("LoreSplash:visible")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 10),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [true, false]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("FirstLevelSplash:visible")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
[sub_resource type="Animation" id="Animation_fm0re"]
resource_name = "RESET"
length = 0.1
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("DissolveRect:modulate")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Color(1, 1, 1, 0)]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("FirstLevelSplash:visible")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("DissolveRect:visible")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("LoreSplash:visible")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
[sub_resource type="Animation" id="Animation_ghusn"]
resource_name = "fade_out"
length = 3.0
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("DissolveRect:modulate")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 3),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1)]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_iabf8"]
_data = {
"FirstLevel": SubResource("Animation_3u8q8"),
"IntroLore": SubResource("Animation_qsjit"),
"RESET": SubResource("Animation_fm0re"),
"fade_out": SubResource("Animation_ghusn")
}
[node name="UIAnimations" type="CanvasLayer"]
[node name="DissolveRect" type="ColorRect" parent="."]
visible = false
modulate = Color(1, 1, 1, 0)
z_index = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
color = Color(0, 0, 0, 1)
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
speed_scale = 64.0
libraries = {
"": SubResource("AnimationLibrary_iabf8")
}
[node name="LoreSplash" type="TextureRect" parent="."]
visible = false
show_behind_parent = true
offset_right = 1920.0
offset_bottom = 1080.0
texture = ExtResource("1_f4dp3")
[node name="FirstLevelSplash" type="TextureRect" parent="."]
z_index = -2
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
texture = ExtResource("2_r3e0d")

BIN
Audio/BGM/BossTheme.wav Normal file

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://bwm5jsh1qw5ji"
path="res://.godot/imported/BossTheme.wav-e1d9235ed1dfe32d95040c26231a00d8.sample"
[deps]
source_file="res://Audio/BGM/BossTheme.wav"
dest_files=["res://.godot/imported/BossTheme.wav-e1d9235ed1dfe32d95040c26231a00d8.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=2
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

BIN
Audio/BGM/GameOverTheme.wav Normal file

Binary file not shown.

View File

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

BIN
Audio/BGM/LevelTheme.wav Normal file

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://3lvsaxunketk"
path="res://.godot/imported/LevelTheme.wav-0adc52373875aad0f2b6a0ceca863b1b.sample"
[deps]
source_file="res://Audio/BGM/LevelTheme.wav"
dest_files=["res://.godot/imported/LevelTheme.wav-0adc52373875aad0f2b6a0ceca863b1b.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=2
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

BIN
Audio/BGM/OpeningTheme.wav Normal file

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://cs41ommggsoqi"
path="res://.godot/imported/OpeningTheme.wav-f9606623f23e32b407720479cfc1eee6.sample"
[deps]
source_file="res://Audio/BGM/OpeningTheme.wav"
dest_files=["res://.godot/imported/OpeningTheme.wav-f9606623f23e32b407720479cfc1eee6.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=1
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

BIN
Audio/BGM/TitleTheme.wav Normal file

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://8yc2gpk1bx52"
path="res://.godot/imported/TitleTheme.wav-8b62c6f931f7176b0b575a94602130c7.sample"
[deps]
source_file="res://Audio/BGM/TitleTheme.wav"
dest_files=["res://.godot/imported/TitleTheme.wav-8b62c6f931f7176b0b575a94602130c7.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=2
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

BIN
Audio/SFX/Green Wave.wav Normal file

Binary file not shown.

View File

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

BIN
Audio/SFX/blue laser.wav Normal file

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://cw1jlubd7wmw6"
path="res://.godot/imported/blue laser.wav-5e8b70a304fc5338c8524b97764b7983.sample"
[deps]
source_file="res://Audio/SFX/blue laser.wav"
dest_files=["res://.godot/imported/blue laser.wav-5e8b70a304fc5338c8524b97764b7983.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

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://bykwwct1not4e"
path="res://.godot/imported/capricorn laeser.wav-e259c68bab0b4c7191a36ee3264b5080.sample"
[deps]
source_file="res://Audio/SFX/capricorn laeser.wav"
dest_files=["res://.godot/imported/capricorn laeser.wav-e259c68bab0b4c7191a36ee3264b5080.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

Binary file not shown.

View File

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

BIN
Audio/SFX/grass cutter.wav Normal file

Binary file not shown.

View File

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

BIN
Audio/SFX/midboss hurt.wav Normal file

Binary file not shown.

View File

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

BIN
Audio/SFX/misc1.wav Normal file

Binary file not shown.

View File

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

BIN
Audio/SFX/ominous.wav Normal file

Binary file not shown.

View File

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

BIN
Audio/SFX/select.wav Normal file

Binary file not shown.

View File

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

BIN
Audio/SFX/shooting.wav Normal file

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://cfj82os5p8i4p"
path="res://.godot/imported/shooting.wav-4967743545d2cccc1eb9a59a59c75130.sample"
[deps]
source_file="res://Audio/SFX/shooting.wav"
dest_files=["res://.godot/imported/shooting.wav-4967743545d2cccc1eb9a59a59c75130.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

@@ -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();
}
}

View File

@@ -2,10 +2,9 @@ using Godot;
public partial class EnemyBullet : Projectile public partial class EnemyBullet : Projectile
{ {
public Vector3 Target;
public override void _PhysicsProcess(double delta) public override void _PhysicsProcess(double delta)
{ {
Translate(new Vector3(0, 0, -Speed * (float)delta)); TranslateObjectLocal(new Vector3(0, 0, -Speed * (float)delta));
} }
} }

View File

@@ -0,0 +1,40 @@
[gd_scene load_steps=5 format=3 uid="uid://rlxnnw4yay7e"]
[ext_resource type="Script" path="res://Enemies/Attacks/EnemyBullet.cs" id="1_rv13r"]
[ext_resource type="Texture2D" uid="uid://dd71tdgrgic46" path="res://Textures/Projectiles/LB ORB.png" id="2_6l2aj"]
[ext_resource type="AudioStream" uid="uid://cfj82os5p8i4p" path="res://Audio/SFX/shooting.wav" id="2_q6wdf"]
[sub_resource type="CylinderShape3D" id="CylinderShape3D_e4v7f"]
height = 8.99869
radius = 0.4
[node name="TestBullet" type="Node3D"]
script = ExtResource("1_rv13r")
Cooldown = 3.0
_soundEffect = ExtResource("2_q6wdf")
[node name="RigidBody3D" type="RigidBody3D" parent="."]
collision_layer = 4
collision_mask = 0
gravity_scale = 0.0
custom_integrator = true
continuous_cd = true
max_contacts_reported = 10
contact_monitor = true
can_sleep = false
lock_rotation = true
[node name="CollisionShape3D" type="CollisionShape3D" parent="RigidBody3D"]
transform = Transform3D(0.3, 0, 0, 0, 0.3, 0, 0, 0, 0.3, 0.0111055, 1.02602, 0)
shape = SubResource("CylinderShape3D_e4v7f")
[node name="Sprite3D" type="Sprite3D" parent="RigidBody3D/CollisionShape3D"]
transform = Transform3D(0.08, 0, 0, 0, 0.08, 0, 0, 0, 0.08, -0.390424, 0, 0.436329)
centered = false
axis = 1
texture = ExtResource("2_6l2aj")
[node name="TTL" type="Timer" parent="."]
process_callback = 0
wait_time = 0.8
autostart = true

View File

@@ -0,0 +1,29 @@
using Godot;
using System.Linq;
public partial class FireAtPlayer : Timer
{
[Export]
private Area3D _enemy;
[Export]
private PackedScene _fireProjectile;
public void OnFireAtPlayer()
{
var players = GetTree().GetNodesInGroup("Player");
if (players.Any())
{
var convertedPlayers = players.Select(x => (Node3D)x);
var target = convertedPlayers.OrderBy(x => _enemy.Position.DistanceTo(x.Position)).FirstOrDefault();
var projectile = _fireProjectile.Instantiate<Projectile>() as EnemyBullet;
projectile.Rotation = new Vector3(0, _enemy.Rotation.Y, 0);
projectile.Position = _enemy.Position;
GetParent().AddChild(projectile);
}
}
private void OnDied()
{
Stop();
}
}

30
Enemies/GodCircuit.tscn Normal file
View File

@@ -0,0 +1,30 @@
[gd_scene load_steps=4 format=3 uid="uid://brbshysbgd47q"]
[ext_resource type="Script" path="res://Enemies/Scripts/GodCircuit.cs" id="1_gyfww"]
[ext_resource type="PackedScene" uid="uid://cigdj84f0m3jd" path="res://Levels/Models/Stage10/god circuit stage 1.glb" id="1_w12q0"]
[sub_resource type="BoxShape3D" id="BoxShape3D_l1qm4"]
size = Vector3(2.64724, 5.07315, 0.653787)
[node name="God Circuit" type="Node3D"]
script = ExtResource("1_gyfww")
[node name="god circuit stage 1" parent="." instance=ExtResource("1_w12q0")]
[node name="Area3D" type="Area3D" parent="god circuit stage 1"]
collision_layer = 0
collision_mask = 2
[node name="CollisionShape3D" type="CollisionShape3D" parent="god circuit stage 1/Area3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.93109, 1.49955, -2.35288)
shape = SubResource("BoxShape3D_l1qm4")
[node name="StaticBody3D" type="StaticBody3D" parent="god circuit stage 1"]
collision_layer = 4096
collision_mask = 0
[node name="CollisionShape3D" type="CollisionShape3D" parent="god circuit stage 1/StaticBody3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.93109, 1.49955, -2.35288)
shape = SubResource("BoxShape3D_l1qm4")
[connection signal="body_entered" from="god circuit stage 1/Area3D" to="." method="OnHit"]

6
Enemies/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://Enemies/HealthPoints.cs" id="1_rrase"]
[node name="HP Component" type="Node2D"]
script = ExtResource("1_rrase")

28
Enemies/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;
}
}

1261
Enemies/MeleeEnemy.tscn Normal file

File diff suppressed because one or more lines are too long

Binary file not shown.

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://dotxb4dc15l4k"
path="res://.godot/imported/RangedEnemy.glb-b55597650bade0297f264b6e0420a5b0.scn"
[deps]
source_file="res://Enemies/Models/RangedEnemy.glb"
dest_files=["res://.godot/imported/RangedEnemy.glb-b55597650bade0297f264b6e0420a5b0.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

1066
Enemies/RangedEnemy.tscn Normal file

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,18 @@
using Godot;
public partial class BasicEnemy : Node3D
{
protected GameManager _gameManager;
public override void _Ready()
{
_gameManager = GetTree().Root.GetNode<GameManager>("Main/GameManager");
}
public void OnEnemyHit(Node3D node)
{
var currentLevel = (Level)GetTree().GetFirstNodeInGroup("Level");
currentLevel.OnEnemyDefeated(this);
QueueFree();
}
}

View File

@@ -0,0 +1,14 @@
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();
if (hpComponent.CurrentHP <= 0)
QueueFree();
}
}

View File

@@ -0,0 +1,20 @@
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);
LookAt(-target.Position, Vector3.Up);
}
}
}

View File

@@ -0,0 +1,18 @@
using Godot;
using System.Linq;
public partial class RangedEnemy : BasicEnemy
{
public override void _Process(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();
var hitBox = GetChildren().OfType<Area3D>().Single();
hitBox.LookAt(target.Position, Vector3.Up);
hitBox.Rotation = new Vector3(0, hitBox.Rotation.Y, hitBox.Rotation.Z);
}
}
}

View File

@@ -1,9 +1,13 @@
<Project Sdk="Godot.NET.Sdk/4.1.1"> <Project Sdk="Godot.NET.Sdk/4.0.4">
<PropertyGroup> <PropertyGroup>
<TargetFramework>net6.0</TargetFramework> <TargetFramework>net6.0</TargetFramework>
<EnableDynamicLoading>true</EnableDynamicLoading> <EnableDynamicLoading>true</EnableDynamicLoading>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<Folder Include="Scenes\" /> <Compile Remove="Scenes\**" />
<EmbeddedResource Remove="Scenes\**" />
</ItemGroup>
<ItemGroup>
<Folder Include="Textures\Models\" />
</ItemGroup> </ItemGroup>
</Project> </Project>

10
GameJam2023.csproj.old Normal file
View File

@@ -0,0 +1,10 @@
<Project Sdk="Godot.NET.Sdk/4.1.1">
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<EnableDynamicLoading>true</EnableDynamicLoading>
</PropertyGroup>
<ItemGroup>
<Folder Include="Scenes\" />
<Folder Include="Textures\Models\" />
</ItemGroup>
</Project>

10
GameJam2023.csproj.old.1 Normal file
View File

@@ -0,0 +1,10 @@
<Project Sdk="Godot.NET.Sdk/4.0.4">
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<EnableDynamicLoading>true</EnableDynamicLoading>
</PropertyGroup>
<ItemGroup>
<Folder Include="Scenes\" />
<Folder Include="Textures\Models\" />
</ItemGroup>
</Project>

10
GameJam2023.csproj.old.2 Normal file
View File

@@ -0,0 +1,10 @@
<Project Sdk="Godot.NET.Sdk/4.1.1">
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<EnableDynamicLoading>true</EnableDynamicLoading>
</PropertyGroup>
<ItemGroup>
<Folder Include="Scenes\" />
<Folder Include="Textures\Models\" />
</ItemGroup>
</Project>

10
GameJam2023.csproj.old.3 Normal file
View File

@@ -0,0 +1,10 @@
<Project Sdk="Godot.NET.Sdk/4.0.4">
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<EnableDynamicLoading>true</EnableDynamicLoading>
</PropertyGroup>
<ItemGroup>
<Folder Include="Scenes\" />
<Folder Include="Textures\Models\" />
</ItemGroup>
</Project>

10
GameJam2023.csproj.old.4 Normal file
View File

@@ -0,0 +1,10 @@
<Project Sdk="Godot.NET.Sdk/4.1.1">
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<EnableDynamicLoading>true</EnableDynamicLoading>
</PropertyGroup>
<ItemGroup>
<Folder Include="Scenes\" />
<Folder Include="Textures\Models\" />
</ItemGroup>
</Project>

150
GameLogic/GameManager.cs Normal file
View File

@@ -0,0 +1,150 @@
using Godot;
using Godot.Collections;
using System.Collections.Generic;
using System.Linq;
public partial class GameManager : Node
{
[Signal]
public delegate void OnPlayerGameOverEventHandler();
[Signal]
public delegate void ReselectCharacterEventHandler(Player player);
[Export]
private Array<PackedScene> PlayerScenes;
public IEnumerable<Player> Players = new List<Player>();
private int _levelIndex;
public bool IsGameOverScreenOn = false;
public override void _Ready()
{
var main = GetTree().Root.GetNode<Main>("/root/Main");
for (var i = 0; i < main.NumberOfPlayers; i++)
{
var player = PlayerScenes[i].Instantiate();
Players = Players.Append((Player)player);
GetTree().Root.AddChild(player);
}
}
public void OnAllEnemiesDefeated()
{
OnLevelClear();
}
public void OnHandleCharacterSelectUI(Player player)
{
EmitSignal(SignalName.ReselectCharacter, player);
}
public void SetToNextCharacter(Player player)
{
player.CharacterIndex = (++player.CharacterIndex) % player.CharactersLeftOnStage.Count();
GD.Print(player.CharactersLeftOnStage.ElementAt(player.CharacterIndex));
}
public void SetToPreviousCharacter(Player player)
{
player.CharacterIndex = player.CharacterIndex == 0 ? player.CharactersLeftOnStage.Count() - 1 : --player.CharacterIndex;
}
public void ResetPlayerPosition(Player player)
{
player.SpawnPoint.SetPlayerPosition(player.SelectedCharacter);
GD.Print(player.CharactersLeftOnStage.ElementAt(player.CharacterIndex));
}
public void OnCharacterSelected(Player player)
{
var sfxPlayer = GetTree().Root.GetNode<AudioStreamPlayer>("Main/SFXPlayer");
var audioStream = ResourceLoader.Load<AudioStream>("Audio/SFX/Select.wav");
sfxPlayer.Stream = audioStream;
sfxPlayer.Play();
GD.Print("Instancing...");
GD.Print(player.Name);
if (player.CharactersLeftOnStage.Any())
{
player.SelectedCharacter = player.CharactersLeftOnStage[player.CharacterIndex];
GetTree().Root.AddChild(player.SelectedCharacter);
player.SpawnPoint.SetPlayerPosition(player.SelectedCharacter);
}
}
public void RemoveCharacter(Player player)
{
player.CharactersLeftOnStage.Remove(player.SelectedCharacter);
GetTree().Root.RemoveChild(player.SelectedCharacter);
GD.Print(player.CharactersLeftOnStage.Select(x => x.Name).ToArray());
player.CharacterIndex = 0;
if (player.CharactersLeftOnStage.Any())
EmitSignal(SignalName.ReselectCharacter, player);
if (!player.CharactersExited.Any() && !player.CharactersLeftOnStage.Any())
SetGameOver(player, true);
if (Players.All(x => !x.CharactersLeftOnStage.Any()) && Players.Any(x => x.CharactersExited.Any()))
OnLevelClear();
}
public void RemoveCharacterAndAddToExit(Player player)
{
player.CharactersExited.Add(player.SelectedCharacter);
player.CharactersLeftOnStage.Remove(player.SelectedCharacter);
GetTree().Root.RemoveChild(player.SelectedCharacter);
GD.Print(player.CharactersLeftOnStage.Select(x => x.Name).ToArray());
player.CharacterIndex = 0;
if (player.CharactersLeftOnStage.Any())
EmitSignal(SignalName.ReselectCharacter, player);
}
public void SetGameOver(Player player, bool isGameOver)
{
player.GameOver = isGameOver;
if (isGameOver)
EmitSignal(SignalName.OnPlayerGameOver);
GD.Print($"Game over for {player.Name}");
}
public void ReloadGameScene()
{
GD.Print("Reloading scene");
var players = GetTree().Root.GetChildren().OfType<Player>();
foreach (var player in players)
player.QueueFree();
var levels = GetTree().Root.GetChildren().OfType<Level>();
foreach (var level in levels)
level.QueueFree();
GetTree().ReloadCurrentScene();
}
public void OnLevelClear()
{
foreach (var player in Players)
{
player.CharactersLeftOnStage.AddRange(player.CharactersExited);
player.CharactersExited.Clear();
player.CharacterIndex = 0;
}
var playerCharacters = GetTree().GetNodesInGroup("Player");
foreach (var character in playerCharacters)
character.GetParent().RemoveChild(character);
var projectiles = GetTree().Root.GetChildren().OfType<Projectile>();
foreach (var projectile in projectiles)
projectile.QueueFree();
var main = GetTree().Root.GetNode<Main>("/root/Main");
main.LoadNextLevel(_levelIndex++);
foreach (var player in Players)
EmitSignal(SignalName.ReselectCharacter, player);
}
}

245
GameLogic/GameManager.tscn Normal file
View File

@@ -0,0 +1,245 @@
[gd_scene load_steps=13 format=3 uid="uid://cxj6yeddshy16"]
[ext_resource type="Script" path="res://GameLogic/GameManager.cs" id="1_ya2kt"]
[ext_resource type="PackedScene" uid="uid://b57xus5rqasy8" path="res://Player/Base/Player2.tscn" id="3_y1wkr"]
[ext_resource type="PackedScene" uid="uid://xcmspevaqcrc" path="res://Player/Base/Player1.tscn" id="4_3fl70"]
[ext_resource type="Script" path="res://UI/StageGUI.cs" id="4_8bo7m"]
[ext_resource type="Script" path="res://UI/GameOverService.cs" id="5_3te1o"]
[ext_resource type="Texture2D" uid="uid://d18xmfbg47qpi" path="res://Textures/Portraits/blank-background.png" id="5_ecqoa"]
[ext_resource type="Script" path="res://UI/CharacterSelectUpdateService.cs" id="6_8tbm6"]
[ext_resource type="Texture2D" uid="uid://dveeywi80ux2l" path="res://UI/Game_Over.jpg" id="6_hq16y"]
[ext_resource type="Texture2D" uid="uid://c3eubpygfvc3l" path="res://Textures/Portraits/cap-bg-char.png" id="7_jroqd"]
[ext_resource type="Texture2D" uid="uid://1pgw8he4k5va" path="res://Textures/Portraits/pisces-bg-char.png" id="8_pvs36"]
[ext_resource type="Texture2D" uid="uid://bacwvejc4hcou" path="res://Textures/Portraits/sag-bg-char.png" id="9_1jise"]
[ext_resource type="Texture2D" uid="uid://o7uu4efxf36e" path="res://Textures/Portraits/scorpio-bg-char.png" id="10_mqkvb"]
[node name="GameManager" type="Node3D"]
script = ExtResource("1_ya2kt")
PlayerScenes = Array[PackedScene]([ExtResource("4_3fl70"), ExtResource("3_y1wkr")])
[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
size = 10.8546
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, -0.504317, 0.863519, 0, -0.863519, -0.504317, 0, 19.9508, 0)
visible = false
shadow_enabled = true
shadow_bias = 0.0
shadow_normal_bias = 0.0
directional_shadow_mode = 0
sky_mode = 1
[node name="DirectionalLight3D2" type="DirectionalLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.993572, 0.113203, 0, -0.113203, 0.993572, 0, 6.22805, 0)
shadow_enabled = true
shadow_bias = 0.0
shadow_normal_bias = 0.0
directional_shadow_mode = 0
sky_mode = 1
[node name="StageGUI" type="Control" parent="."]
process_mode = 3
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("4_8bo7m")
metadata/_edit_horizontal_guides_ = [-342.0]
[node name="SidebarLeft" type="TextureRect" parent="StageGUI"]
layout_mode = 1
anchors_preset = 4
anchor_top = 0.5
anchor_bottom = 0.5
offset_top = -540.0
offset_right = 420.0
offset_bottom = 540.0
grow_vertical = 2
texture = ExtResource("5_ecqoa")
[node name="SidebarRight" type="TextureRect" parent="StageGUI"]
layout_mode = 1
anchors_preset = 6
anchor_left = 1.0
anchor_top = 0.5
anchor_right = 1.0
anchor_bottom = 0.5
offset_left = -420.0
offset_top = -540.0
offset_bottom = 540.0
grow_horizontal = 0
grow_vertical = 2
texture = ExtResource("5_ecqoa")
[node name="CharacterSelect" type="Control" parent="StageGUI"]
process_mode = 3
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("6_8tbm6")
[node name="P1" type="Control" parent="StageGUI/CharacterSelect"]
layout_mode = 1
anchors_preset = 4
anchor_top = 0.5
anchor_bottom = 0.5
offset_top = -20.0
offset_right = 40.0
offset_bottom = 20.0
grow_vertical = 2
[node name="CapBG" type="TextureRect" parent="StageGUI/CharacterSelect/P1"]
visible = false
layout_mode = 1
anchors_preset = 4
anchor_top = 0.5
anchor_bottom = 0.5
offset_top = -540.0
offset_right = 420.0
offset_bottom = 540.0
grow_vertical = 2
texture = ExtResource("7_jroqd")
stretch_mode = 2
[node name="PiscesBG" type="TextureRect" parent="StageGUI/CharacterSelect/P1"]
visible = false
layout_mode = 1
anchors_preset = 4
anchor_top = 0.5
anchor_bottom = 0.5
offset_top = -540.0
offset_right = 420.0
offset_bottom = 540.0
grow_vertical = 2
texture = ExtResource("8_pvs36")
stretch_mode = 2
[node name="SagBG" type="TextureRect" parent="StageGUI/CharacterSelect/P1"]
visible = false
layout_mode = 1
anchors_preset = 4
anchor_top = 0.5
anchor_bottom = 0.5
offset_top = -540.0
offset_right = 420.0
offset_bottom = 540.0
grow_vertical = 2
texture = ExtResource("9_1jise")
stretch_mode = 2
[node name="ScorpioBG" type="TextureRect" parent="StageGUI/CharacterSelect/P1"]
visible = false
layout_mode = 1
anchors_preset = 4
anchor_top = 0.5
anchor_bottom = 0.5
offset_top = -540.0
offset_right = 420.0
offset_bottom = 540.0
grow_vertical = 2
texture = ExtResource("10_mqkvb")
stretch_mode = 2
[node name="P2" type="Control" parent="StageGUI/CharacterSelect"]
layout_mode = 1
anchors_preset = 6
anchor_left = 1.0
anchor_top = 0.5
anchor_right = 1.0
anchor_bottom = 0.5
offset_left = -40.0
offset_top = -20.0
offset_bottom = 20.0
grow_horizontal = 0
grow_vertical = 2
[node name="CapBG" type="TextureRect" parent="StageGUI/CharacterSelect/P2"]
visible = false
layout_mode = 1
anchors_preset = 6
anchor_left = 1.0
anchor_top = 0.5
anchor_right = 1.0
anchor_bottom = 0.5
offset_left = -420.0
offset_top = -540.0
offset_bottom = 540.0
grow_horizontal = 0
grow_vertical = 2
texture = ExtResource("7_jroqd")
[node name="PiscesBG" type="TextureRect" parent="StageGUI/CharacterSelect/P2"]
visible = false
layout_mode = 1
anchors_preset = 6
anchor_left = 1.0
anchor_top = 0.5
anchor_right = 1.0
anchor_bottom = 0.5
offset_left = -420.0
offset_top = -540.0
offset_bottom = 540.0
grow_horizontal = 0
grow_vertical = 2
texture = ExtResource("8_pvs36")
[node name="SagBG" type="TextureRect" parent="StageGUI/CharacterSelect/P2"]
visible = false
layout_mode = 1
anchors_preset = 6
anchor_left = 1.0
anchor_top = 0.5
anchor_right = 1.0
anchor_bottom = 0.5
offset_left = -420.0
offset_top = -540.0
offset_bottom = 540.0
grow_horizontal = 0
grow_vertical = 2
texture = ExtResource("9_1jise")
[node name="ScorpioBG" type="TextureRect" parent="StageGUI/CharacterSelect/P2"]
visible = false
layout_mode = 1
anchors_preset = 6
anchor_left = 1.0
anchor_top = 0.5
anchor_right = 1.0
anchor_bottom = 0.5
offset_left = -420.0
offset_top = -540.0
offset_bottom = 540.0
grow_horizontal = 0
grow_vertical = 2
texture = ExtResource("10_mqkvb")
[node name="GameOver" type="Control" parent="."]
visible = false
layout_mode = 3
anchors_preset = 0
offset_right = 40.0
offset_bottom = 40.0
script = ExtResource("5_3te1o")
[node name="GameOverScreen" type="TextureRect" parent="GameOver"]
layout_mode = 0
offset_right = 40.0
offset_bottom = 40.0
texture = ExtResource("6_hq16y")
[connection signal="ReselectCharacter" from="." to="StageGUI" method="OnCharacterSelect"]
[connection signal="CapricornSelected" from="StageGUI" to="StageGUI/CharacterSelect" method="OnCapricornSelected"]
[connection signal="OnCharacterSelectionMade" from="StageGUI" to="." method="OnCharacterSelected"]
[connection signal="OnGameOver" from="StageGUI" to="GameOver" method="OnGameOver"]
[connection signal="OnPlayerGameOver" from="StageGUI" to="StageGUI/CharacterSelect" method="OnPlayerGameOver"]
[connection signal="PiscesSelected" from="StageGUI" to="StageGUI/CharacterSelect" method="OnPiscesSelected"]
[connection signal="SagittariusSelected" from="StageGUI" to="StageGUI/CharacterSelect" method="OnSagittariusSelected"]
[connection signal="ScorpioSelected" from="StageGUI" to="StageGUI/CharacterSelect" method="OnScorpioSelected"]
[connection signal="ReloadGame" from="GameOver" to="." method="ReloadGameScene"]

63
GameLogic/Main.cs Normal file
View File

@@ -0,0 +1,63 @@
using Godot;
using Godot.Collections;
using System.Linq;
public partial class Main : Node
{
[Export]
public Array<PackedScene> Levels;
[Export]
public PackedScene GameManager;
public int NumberOfPlayers = 0;
public void LoadLevel(int indexToLoad, int numberOfPlayers)
{
var sceneToLoad = Levels.ElementAt(indexToLoad);
CallDeferred(nameof(DeferredGoToScene), sceneToLoad);
NumberOfPlayers = numberOfPlayers;
var gameManager = GameManager.Instantiate();
AddChild(gameManager);
var gameManagerInstance = (GameManager)gameManager;
gameManagerInstance.OnHandleCharacterSelectUI(gameManagerInstance.Players.ElementAt(0));
if (numberOfPlayers == 2)
gameManagerInstance.OnHandleCharacterSelectUI(gameManagerInstance.Players.ElementAt(1));
var bgmPlayer = GetTree().Root.GetNode<BGMPlayer>("BgmPlayer");
bgmPlayer.ProcessMode = ProcessModeEnum.Always;
bgmPlayer.SetBGMFromFilepath("Audio/BGM/LevelTheme.wav");
bgmPlayer.PlayBGM();
GetTree().Paused = true;
}
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)
{
var nextScene = GD.Load<PackedScene>(sceneToAdd.ResourcePath);
var newScene = nextScene.Instantiate();
GetTree().Root.AddChild(newScene);
GetTree().Paused = true;
}
private void DeferredGoToScene(PackedScene sceneToAdd, PackedScene sceneToRemove)
{
GetTree().GetFirstNodeInGroup("Level").QueueFree();
var nextScene = GD.Load<PackedScene>(sceneToAdd.ResourcePath);
var newScene = nextScene.Instantiate();
GetTree().Root.AddChild(newScene);
GetTree().Paused = true;
}
}

17
GameLogic/Main.tscn Normal file
View File

@@ -0,0 +1,17 @@
[gd_scene load_steps=5 format=3 uid="uid://vwrw05ob2caq"]
[ext_resource type="Script" path="res://GameLogic/Main.cs" id="1_g4hua"]
[ext_resource type="PackedScene" uid="uid://b12gq4yqc3d8i" path="res://UI/MainMenu.tscn" id="2_kvovw"]
[ext_resource type="PackedScene" uid="uid://btl5fdyjewnwc" path="res://Levels/Scenes/Level3.tscn" id="4_bs7wi"]
[ext_resource type="PackedScene" uid="uid://cxj6yeddshy16" path="res://GameLogic/GameManager.tscn" id="11_wiyvp"]
[node name="Main" type="Node3D"]
script = ExtResource("1_g4hua")
Levels = Array[PackedScene]([ExtResource("4_bs7wi")])
GameManager = ExtResource("11_wiyvp")
[node name="MainMenu" parent="." instance=ExtResource("2_kvovw")]
z_index = 100
[node name="SFXPlayer" type="AudioStreamPlayer" parent="."]
max_polyphony = 10

8
Levels/DoorShader.tres Normal file
View File

@@ -0,0 +1,8 @@
[gd_resource type="ShaderMaterial" load_steps=2 format=3 uid="uid://blksoavfhtf06"]
[ext_resource type="Shader" path="res://Levels/Scenes/Door.gdshader" id="1_by6f6"]
[resource]
render_priority = 1
shader = ExtResource("1_by6f6")
shader_parameter/albedo = null

113
Levels/ExitPortal.tscn Normal file
View File

@@ -0,0 +1,113 @@
[gd_scene load_steps=7 format=3 uid="uid://jgf7k1r35km1"]
[ext_resource type="PackedScene" uid="uid://0tegxun85rq" path="res://Textures/Models/exitprotal.gltf" id="1_jebs8"]
[ext_resource type="Script" path="res://Levels/Scripts/AreaExit.cs" id="2_4y188"]
[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")
}
[sub_resource type="CylinderShape3D" id="CylinderShape3D_v7qe0"]
height = 3.34825
radius = 1.79103
[node name="Exit Portal" instance=ExtResource("1_jebs8")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 0, 0, 0)
[node name="AnimationPlayer" type="AnimationPlayer" parent="." index="3"]
autoplay = "Spin"
libraries = {
"": SubResource("AnimationLibrary_fkf2e")
}
[node name="Area3D" type="Area3D" parent="." index="4"]
collision_layer = 8
collision_mask = 8
script = ExtResource("2_4y188")
[node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D" index="0"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -0.11619)
shape = SubResource("CylinderShape3D_v7qe0")
[connection signal="body_entered" from="Area3D" to="Area3D" method="OnExitEntered"]

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

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: 5.8 KiB

View File

@@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b8sjnfh5s14up"
path.s3tc="res://.godot/imported/STAGE 1_CLOUD TRAN 1.png-7f9feabd305a13601d056ccdbdf6d8d9.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
generator_parameters={}
[deps]
source_file="res://Levels/Models/Stage1/STAGE 1_CLOUD TRAN 1.png"
dest_files=["res://.godot/imported/STAGE 1_CLOUD TRAN 1.png-7f9feabd305a13601d056ccdbdf6d8d9.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: 12 KiB

View File

@@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cbxhj21r45d01"
path.s3tc="res://.godot/imported/STAGE 1_CLOUD TRAN 2.png-75d819a0621777e6a4d5b4a9218f4ccf.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
generator_parameters={}
[deps]
source_file="res://Levels/Models/Stage1/STAGE 1_CLOUD TRAN 2.png"
dest_files=["res://.godot/imported/STAGE 1_CLOUD TRAN 2.png-75d819a0621777e6a4d5b4a9218f4ccf.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: 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-aee248d2ac3cd06de6b6e8ec5628aecc.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
generator_parameters={}
[deps]
source_file="res://Levels/Models/Stage1/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-aee248d2ac3cd06de6b6e8ec5628aecc.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

@@ -2,8 +2,8 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://ubtk0ki6dlvn" uid="uid://dcwooc3thxekc"
path.s3tc="res://.godot/imported/link_MI_ear_alb.png-8a118b9cbabd4d9aed2bad2915ec0747.s3tc.ctex" path.s3tc="res://.godot/imported/STAGE 1_hexa.png-0d4c927974461e25fe664e717468c437.s3tc.ctex"
metadata={ metadata={
"imported_formats": ["s3tc_bptc"], "imported_formats": ["s3tc_bptc"],
"vram_texture": true "vram_texture": true
@@ -12,8 +12,8 @@ generator_parameters={}
[deps] [deps]
source_file="res://Models/TestModels/link_MI_ear_alb.png" source_file="res://Levels/Models/Stage1/STAGE 1_hexa.png"
dest_files=["res://.godot/imported/link_MI_ear_alb.png-8a118b9cbabd4d9aed2bad2915ec0747.s3tc.ctex"] dest_files=["res://.godot/imported/STAGE 1_hexa.png-0d4c927974461e25fe664e717468c437.s3tc.ctex"]
[params] [params]

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View File

@@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dr6siwcw6qlg2"
path.s3tc="res://.godot/imported/STAGE 1_trancodou4.png-f939e9c17561ce7f37e5ebd909d92b04.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
generator_parameters={}
[deps]
source_file="res://Levels/Models/Stage1/STAGE 1_trancodou4.png"
dest_files=["res://.godot/imported/STAGE 1_trancodou4.png-f939e9c17561ce7f37e5ebd909d92b04.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: 4.5 KiB

View File

@@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c6il61u5ajrei"
path.s3tc="res://.godot/imported/STAGE 1_trans cloud 3.png-f0984ed6012ef1804580c6b3dc5d2d53.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
generator_parameters={}
[deps]
source_file="res://Levels/Models/Stage1/STAGE 1_trans cloud 3.png"
dest_files=["res://.godot/imported/STAGE 1_trans cloud 3.png-f0984ed6012ef1804580c6b3dc5d2d53.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,5 @@
[gd_scene load_steps=2 format=3 uid="uid://baktjdknecdid"]
[ext_resource type="PackedScene" uid="uid://dg3k3cvfyaqx1" path="res://Levels/Models/Stage1/STAGE 1.gltf" id="1_kaeis"]
[node name="STAGE 1" instance=ExtResource("1_kaeis")]

File diff suppressed because one or more lines are too long

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://dpuyhoh47urss"
path="res://.godot/imported/FINAL STAGE.gltf-99efbd72c9b5c55e5201e58d3b54d91f.scn"
[deps]
source_file="res://Levels/Models/Stage10/FINAL STAGE.gltf"
dest_files=["res://.godot/imported/FINAL STAGE.gltf-99efbd72c9b5c55e5201e58d3b54d91f.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: 83 KiB

View File

@@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b0waffuexnnrn"
path.s3tc="res://.godot/imported/FINAL STAGE_BRAIN.png-3eacccd7f0acef8082a7d282da4b308a.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
generator_parameters={}
[deps]
source_file="res://Levels/Models/Stage10/FINAL STAGE_BRAIN.png"
dest_files=["res://.godot/imported/FINAL STAGE_BRAIN.png-3eacccd7f0acef8082a7d282da4b308a.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: 9.5 KiB

View File

@@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cuhp6ndq6h84u"
path.s3tc="res://.godot/imported/FINAL STAGE_BUSINESS.png-d4e6b25cf555d988cb1fd1414df16613.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
generator_parameters={}
[deps]
source_file="res://Levels/Models/Stage10/FINAL STAGE_BUSINESS.png"
dest_files=["res://.godot/imported/FINAL STAGE_BUSINESS.png-d4e6b25cf555d988cb1fd1414df16613.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: 2.2 KiB

View File

@@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b62j30essojgi"
path.s3tc="res://.godot/imported/FINAL STAGE_CASTLE.png-f719412a3bbcbe48214c4d9886626fe3.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
generator_parameters={}
[deps]
source_file="res://Levels/Models/Stage10/FINAL STAGE_CASTLE.png"
dest_files=["res://.godot/imported/FINAL STAGE_CASTLE.png-f719412a3bbcbe48214c4d9886626fe3.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: 16 KiB

View File

@@ -2,8 +2,8 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://cp8bxedhoqdqa" uid="uid://shd4e84lmhmq"
path.s3tc="res://.godot/imported/link_MI_body_alb.png-57b8628ae8b879ccf189bbad5b09653d.s3tc.ctex" path.s3tc="res://.godot/imported/FINAL STAGE_DNA.png-4b672364bd1ad4addd7f3886c99e0c16.s3tc.ctex"
metadata={ metadata={
"imported_formats": ["s3tc_bptc"], "imported_formats": ["s3tc_bptc"],
"vram_texture": true "vram_texture": true
@@ -12,8 +12,8 @@ generator_parameters={}
[deps] [deps]
source_file="res://Models/TestModels/link_MI_body_alb.png" source_file="res://Levels/Models/Stage10/FINAL STAGE_DNA.png"
dest_files=["res://.godot/imported/link_MI_body_alb.png-57b8628ae8b879ccf189bbad5b09653d.s3tc.ctex"] dest_files=["res://.godot/imported/FINAL STAGE_DNA.png-4b672364bd1ad4addd7f3886c99e0c16.s3tc.ctex"]
[params] [params]

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

View File

@@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://diqvm221wx5g1"
path.s3tc="res://.godot/imported/FINAL STAGE_DOMINI.png-d14fc4b4e7e3e2d3843081554015b939.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
generator_parameters={}
[deps]
source_file="res://Levels/Models/Stage10/FINAL STAGE_DOMINI.png"
dest_files=["res://.godot/imported/FINAL STAGE_DOMINI.png-d14fc4b4e7e3e2d3843081554015b939.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: 18 KiB

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