Nuclear gun and 3D tests

This commit is contained in:
MaddoScientisto 2025-03-22 00:33:24 +01:00
commit d1d3a3fdd5
34 changed files with 750 additions and 55 deletions

16
3D/3DTest.tscn Normal file
View file

@ -0,0 +1,16 @@
[gd_scene load_steps=5 format=3 uid="uid://d360rx247qywn"]
[ext_resource type="Texture2D" uid="uid://txphtr0045lo" path="res://Models/carr/carr_tex.png" id="1_bkq0b"]
[ext_resource type="Script" uid="uid://q44rbbdjx75v" path="res://Scripts/TestRotation3D.cs" id="1_cucar"]
[ext_resource type="ArrayMesh" uid="uid://cllvgarxk3q8a" path="res://Models/carr/carr.obj" id="1_y0h7v"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_cucar"]
albedo_texture = ExtResource("1_bkq0b")
[node name="3dTest" type="Node3D"]
script = ExtResource("1_cucar")
[node name="Carr" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.114124, 0, 0.0902536)
material_override = SubResource("StandardMaterial3D_cucar")
mesh = ExtResource("1_y0h7v")

Binary file not shown.

Binary file not shown.

BIN
ExternalMaterial/NuclearBullets/Nuclear_Bullet.png (Stored with Git LFS) Normal file

Binary file not shown.

View file

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

View file

@ -0,0 +1,3 @@
# Pixel Composer
newmtl mat.0
map_Kd K:/godot/cirno/ExternalMaterial/ShieldExtend/Extend_texture0.png

View file

@ -0,0 +1,58 @@
# Pixel Composer
mtllib Extend.mtl
o shape0
usemtl mat.0
v -0.50000 -0.50000 0.50000
v 255.00000 0.00000 0.00000
v 0.00000 0.00000 -nan
v 0.00000 0.00000 1.00000
v 1.00000 0.00000 -nan
v -0.50000 -0.50000 -0.50000
v 0.00000 1.00000 -nan
v 0.00000 0.00000 -1.00000
v -1.00000 0.00000 0.00000
v 1.00000 1.00000 -nan
v 0.50000 -0.50000 0.50000
v 1.00000 0.00000 0.00000
v -0.50000 0.50000 0.50000
v 0.00000 1.00000 0.00000
vn 0.00000 0.00000 1.00000
vn 0.50000 0.50000 0.50000
vn 0.00000 255.00000 0.00000
vn 0.00000 1.00000 -nan
vn -0.50000 0.50000 0.50000
vn 0.00000 0.00000 -nan
vn 0.00000 0.00000 -1.00000
vn 0.50000 -0.50000 -0.50000
vn 0.50000 0.50000 -0.50000
vn 1.00000 0.00000 -nan
vn -1.00000 0.00000 0.00000
vn -0.50000 0.50000 -0.50000
vn -0.50000 -0.50000 -0.50000
vn 1.00000 0.00000 0.00000
vn 1.00000 1.00000 -nan
vn 0.00000 1.00000 0.00000
vt 1.00000 1.00000
vt 0.00000 0.00000
vt 0.50000 -0.50000
vt 0.50000 0.50000
vt -0.50000 0.50000
vt 1.00000 0.00000
vt -1.00000 0.00000
vt 0.00000 1.00000
f 1/1/1 2/2/2 3/3/3
f 4/2/4 1/1/1 2/2/5
f 5/4/3 4/2/6 6/1/7
f 2/2/8 7/4/3 8/2/6
f 6/1/7 2/2/9 3/5/3
f 8/2/10 1/6/11 2/7/12
f 7/5/3 9/2/6 1/6/11
f 2/7/13 10/5/3 9/2/4
f 11/2/14 2/6/2 5/4/3
f 12/2/15 11/2/14 2/6/9
f 10/3/3 12/2/4 13/6/16
f 2/8/9 7/4/3 14/2/6

View file

@ -0,0 +1,25 @@
[remap]
importer="wavefront_obj"
importer_version=1
type="Mesh"
uid="uid://dxgih4o8uoxrq"
path="res://.godot/imported/Extend.obj-1832b62f3590c5b1c3d2c1ac69335e22.mesh"
[deps]
files=["res://.godot/imported/Extend.obj-1832b62f3590c5b1c3d2c1ac69335e22.mesh"]
source_file="res://ExternalMaterial/ShieldExtend/Extend.obj"
dest_files=["res://.godot/imported/Extend.obj-1832b62f3590c5b1c3d2c1ac69335e22.mesh", "res://.godot/imported/Extend.obj-1832b62f3590c5b1c3d2c1ac69335e22.mesh"]
[params]
generate_tangents=true
generate_lods=true
generate_shadow_mesh=true
generate_lightmap_uv2=false
generate_lightmap_uv2_texel_size=0.2
scale_mesh=Vector3(1, 1, 1)
offset_mesh=Vector3(0, 0, 0)
force_disable_mesh_compression=false

BIN
ExternalMaterial/ShieldExtend/Extend_texture0.png (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b4gt5q3umv70d"
path.s3tc="res://.godot/imported/Extend_texture0.png-e1a45463efd0f4a75e74cdc59caa8a7d.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://ExternalMaterial/ShieldExtend/Extend_texture0.png"
dest_files=["res://.godot/imported/Extend_texture0.png-e1a45463efd0f4a75e74cdc59caa8a7d.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.

BIN
Models/carr/carr_rotating.png (Stored with Git LFS) Normal file

Binary file not shown.

View file

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

View file

@ -3,25 +3,26 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://txphtr0045lo"
path="res://.godot/imported/carr_tex.png-b2559c92332da2d5bda843a52c8e8121.ctex"
path.s3tc="res://.godot/imported/carr_tex.png-b2559c92332da2d5bda843a52c8e8121.s3tc.ctex"
metadata={
"vram_texture": false
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Models/carr/carr_tex.png"
dest_files=["res://.godot/imported/carr_tex.png-b2559c92332da2d5bda843a52c8e8121.ctex"]
dest_files=["res://.godot/imported/carr_tex.png-b2559c92332da2d5bda843a52c8e8121.s3tc.ctex"]
[params]
compress/mode=0
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=false
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
@ -31,4 +32,4 @@ process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
detect_3d/compress_to=0

View file

@ -0,0 +1,19 @@
[gd_resource type="Resource" script_class="BulletResource" load_steps=4 format=3 uid="uid://bhtt1h56ksjt3"]
[ext_resource type="PackedScene" uid="uid://b23lyiq42kvrr" path="res://Scenes/Weapons/Bullets/Nuclear_Bullet.tscn" id="1_wx5pd"]
[ext_resource type="PackedScene" uid="uid://1lowv5ce2poq" path="res://Scenes/Weapons/Bullets/Autoclearing_Explosion_Bullet.tscn" id="2_w7ktr"]
[ext_resource type="Script" uid="uid://dslyrfcej3g2n" path="res://Scripts/Resources/BulletResource.cs" id="3_mw15l"]
[resource]
script = ExtResource("3_mw15l")
BulletScene = ExtResource("1_wx5pd")
DestructionParticlesScene = ExtResource("2_w7ktr")
BulletSpeed = 120.0
Direction = Vector2(1, 0)
BulletDamage = 6.0
LifeTime = 20.0
DestroyOnCollision = true
Owner = 1
DamageType = 2
Controllable = false
TimeModifiers = null

View file

@ -47,8 +47,9 @@ PrefabPath = &"res://Scenes/Actors/Fairy_New.tscn"
MaxHealth = 2.0
MovementSpeed = 20.0
Weapon = ExtResource("7_xkg5o")
LootDrops = Array[Object]([SubResource("Resource_c8nix"), SubResource("Resource_gs2l3"), SubResource("Resource_sqnvg"), SubResource("Resource_5tyar"), SubResource("Resource_48xq6")])
LootDrops = Array[ExtResource("2_sxbtw")]([SubResource("Resource_c8nix"), SubResource("Resource_gs2l3"), SubResource("Resource_sqnvg"), SubResource("Resource_5tyar"), SubResource("Resource_48xq6")])
PlayerDetectionRange = 90.0
ViewRange = 120.0
AlarmReactRange = 300.0
PlayerDisengageRange = 200.0
metadata/_custom_type_script = "uid://cd5o0ceb50jki"

View file

@ -47,7 +47,7 @@ PrefabPath = &"res://Scenes/Actors/FairyGuard_New.tscn"
MaxHealth = 4.0
MovementSpeed = 30.0
Weapon = ExtResource("7_xlxdc")
LootDrops = Array[Object]([SubResource("Resource_c8nix"), SubResource("Resource_gs2l3"), SubResource("Resource_sqnvg"), SubResource("Resource_5tyar"), SubResource("Resource_48xq6")])
LootDrops = Array[ExtResource("2_ivudp")]([SubResource("Resource_c8nix"), SubResource("Resource_gs2l3"), SubResource("Resource_sqnvg"), SubResource("Resource_5tyar"), SubResource("Resource_48xq6")])
PlayerDetectionRange = 90.0
ViewRange = 120.0
AlarmReactRange = 200.0

View file

@ -0,0 +1,21 @@
[gd_resource type="Resource" script_class="LootItem" load_steps=4 format=3 uid="uid://brsukcuyoq364"]
[ext_resource type="Texture2D" uid="uid://cfxxgj6i5fykd" path="res://Sprites/Items/Nuclear_Gun.png" id="1_qxsuv"]
[ext_resource type="Resource" uid="uid://bpuvt30alfxhh" path="res://Resources/Weapons/NuclearGun.tres" id="3_5kq8e"]
[ext_resource type="Script" uid="uid://epnwjptvks3t" path="res://Scripts/Resources/LootItem.cs" id="4_imbrn"]
[resource]
script = ExtResource("4_imbrn")
ItemName = &"Nuclear Gun (MP-42)"
ItemDescription = &"Shoots micro suns"
ItemKey = &"NUCLEAR_GUN"
Item = 9
WeaponData = ExtResource("3_5kq8e")
Amount = 1
Max = 1
PickupIfMaxed = false
ConsumeOnUse = false
UiType = 1
Selectable = true
InventorySprite = ExtResource("1_qxsuv")
DropScenePath = &"res://Scenes/Items/Nuclear_Gun_Pickup.tscn"

View file

@ -0,0 +1,19 @@
[gd_resource type="Resource" script_class="LootItem" load_steps=3 format=3 uid="uid://cfod8kephnio6"]
[ext_resource type="Texture2D" uid="uid://b61po207ggn63" path="res://Sprites/Items/Yin_Ammo.png" id="1_6ly0q"]
[ext_resource type="Script" uid="uid://epnwjptvks3t" path="res://Scripts/Resources/LootItem.cs" id="2_x45it"]
[resource]
script = ExtResource("2_x45it")
ItemName = &"Nuclear Ammo"
ItemDescription = &"Ammo for Nuclear weapons"
ItemKey = &"NUCLEAR_AMMO"
Item = 3
Amount = 5
Max = 50
PickupIfMaxed = false
ConsumeOnUse = true
UiType = 2
Selectable = false
InventorySprite = ExtResource("1_6ly0q")
DropScenePath = &"res://Scenes/Items/Nuclear_Gun_Pickup.tscn"

View file

@ -0,0 +1,20 @@
[gd_resource type="Resource" script_class="WeaponResource" load_steps=3 format=3 uid="uid://bpuvt30alfxhh"]
[ext_resource type="Resource" uid="uid://bhtt1h56ksjt3" path="res://Resources/Bullets/nuclear_bullets.tres" id="1_x7js4"]
[ext_resource type="Script" uid="uid://b6fmrnipv88bk" path="res://Scripts/Resources/WeaponResource.cs" id="2_vm6dw"]
[resource]
script = ExtResource("2_vm6dw")
Name = &"Nuclear Gun (MP-42)"
BulletData = ExtResource("1_x7js4")
RateOfFire = 0.6
BulletCapacity = 5
ReloadTime = 0.5
AutoReload = true
InfiniteAmmo = false
BulletsPerShot = 1
SpreadAngle = 0.0
RandomSpread = 0.0
ItemKey = &"NUCLEAR_GUN"
AmmoKey = &"NUCLEAR_AMMO"
_rotationOffset = 0.0

View file

@ -1,7 +1,8 @@
[gd_scene load_steps=10 format=3 uid="uid://ue3i2qyhhtbg"]
[gd_scene load_steps=11 format=3 uid="uid://ue3i2qyhhtbg"]
[ext_resource type="Script" uid="uid://duhodrhcnoslh" path="res://Scripts/Interactables/Switch.cs" id="1_fef30"]
[ext_resource type="Resource" uid="uid://b2vyr1tcm4rc1" path="res://Resources/Items/Yellow_Keycard.tres" id="2_05i2o"]
[ext_resource type="Script" uid="uid://epnwjptvks3t" path="res://Scripts/Resources/LootItem.cs" id="2_058fi"]
[ext_resource type="Texture2D" uid="uid://c1hcyxn2og2kq" path="res://Sprites/Actors/Key_Reader.png" id="4_al0cc"]
[ext_resource type="Texture2D" uid="uid://dsf7jj36mk0xp" path="res://Sprites/Actors/KeyReaderOverlay.png" id="5_co1pm"]
@ -40,7 +41,7 @@ animations = [{
collision_layer = 4
collision_mask = 2
script = ExtResource("1_fef30")
Requirements = [ExtResource("2_05i2o")]
Requirements = Array[ExtResource("2_058fi")]([ExtResource("2_05i2o")])
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
shape = SubResource("CircleShape2D_vvpve")

View file

@ -0,0 +1,21 @@
[gd_scene load_steps=7 format=3 uid="uid://iooa4gqy2uu2"]
[ext_resource type="Script" uid="uid://b3h7b30kerf60" path="res://Scripts/Interactables/ItemPickup.cs" id="1_mtwur"]
[ext_resource type="Script" uid="uid://epnwjptvks3t" path="res://Scripts/Resources/LootItem.cs" id="2_atc14"]
[ext_resource type="Resource" uid="uid://brsukcuyoq364" path="res://Resources/Items/NuclearGunPickup.tres" id="3_jutu4"]
[ext_resource type="Resource" uid="uid://cfod8kephnio6" path="res://Resources/Items/Nuclear_Ammo_Pickup.tres" id="4_wo03s"]
[ext_resource type="Texture2D" uid="uid://cfxxgj6i5fykd" path="res://Sprites/Items/Nuclear_Gun.png" id="5_atc14"]
[sub_resource type="CircleShape2D" id="CircleShape2D_jtwy2"]
[node name="NuclearGun" type="Area2D" groups=["Interactable"]]
collision_layer = 4
collision_mask = 2
script = ExtResource("1_mtwur")
LootTable = Array[ExtResource("2_atc14")]([ExtResource("3_jutu4"), ExtResource("4_wo03s")])
[node name="Sprite2D" type="Sprite2D" parent="."]
texture = ExtResource("5_atc14")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
shape = SubResource("CircleShape2D_jtwy2")

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=80 format=4 uid="uid://6a6tjohypmmb"]
[gd_scene load_steps=82 format=4 uid="uid://6a6tjohypmmb"]
[ext_resource type="Script" uid="uid://doxmbokehw8ci" path="res://Scripts/GameManager.cs" id="1_t2k72"]
[ext_resource type="PackedScene" uid="uid://c4pr2707hbeph" path="res://Scenes/Actors/fsm_player.tscn" id="2_2jsgm"]
@ -41,8 +41,10 @@
[ext_resource type="PackedScene" uid="uid://b7gkxlll3b1eg" path="res://Scenes/Activable/FloorEmitter.tscn" id="33_6h3t3"]
[ext_resource type="Texture2D" uid="uid://r2bdhalt8sih" path="res://Sprites/Items/ofudagun_test.png" id="33_v8wj6"]
[ext_resource type="Resource" uid="uid://cmra7n6so1x4u" path="res://Resources/BulletScripts/Basic_Enemy_Emitter_Spiral_Bullets.tres" id="35_imrxd"]
[ext_resource type="PackedScene" uid="uid://ey71mxa5ocpn" path="res://Scenes/Items/Shield_Extend_Pickup.tscn" id="37_5j8ks"]
[ext_resource type="PackedScene" uid="uid://b0k2grrc8xp1l" path="res://Scenes/Props/BigTank.tscn" id="37_47klv"]
[ext_resource type="PackedScene" uid="uid://dfat0erkvb513" path="res://Scenes/Actors/Fairy_New.tscn" id="37_sb7g3"]
[ext_resource type="PackedScene" uid="uid://1yxieu8ekvkm" path="res://Scenes/Items/Heart_Extend_Pickup.tscn" id="38_sb7g3"]
[sub_resource type="Resource" id="Resource_6wo78"]
script = ExtResource("4_s1vkf")
@ -472,7 +474,7 @@ Targets = [NodePath("../HorizontalForceField"), NodePath("../FloorEmitter"), Nod
position = Vector2(-48, 480)
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="Tilemaps/Actors"]
position = Vector2(-642, 312)
position = Vector2(289.455, 319.659)
sprite_frames = SubResource("SpriteFrames_qco45")
autoplay = "default"
frame = 22
@ -493,30 +495,12 @@ position = Vector2(-282.728, 648.41)
Script = ExtResource("35_imrxd")
InvertSignal = true
[node name="FairyGuard" parent="Tilemaps/Actors" instance=ExtResource("25_nb1db")]
position = Vector2(99, 311)
[node name="FairyGuard2" parent="Tilemaps/Actors" instance=ExtResource("25_nb1db")]
position = Vector2(96, 523)
[node name="Fairy" parent="Tilemaps/Actors" instance=ExtResource("37_sb7g3")]
position = Vector2(159, 349)
[node name="FairyGuard3" parent="Tilemaps/Actors" instance=ExtResource("25_nb1db")]
position = Vector2(-34, 566)
[node name="FairyGuard4" parent="Tilemaps/Actors" instance=ExtResource("25_nb1db")]
position = Vector2(-202, 610)
[node name="Fairy2" parent="Tilemaps/Actors" instance=ExtResource("37_sb7g3")]
position = Vector2(-103, 505)
[node name="Fairy3" parent="Tilemaps/Actors" instance=ExtResource("37_sb7g3")]
position = Vector2(-64, 642)
[node name="Fairy4" parent="Tilemaps/Actors" instance=ExtResource("37_sb7g3")]
position = Vector2(-123, 594)
[node name="Fairy5" parent="Tilemaps/Actors" instance=ExtResource("37_sb7g3")]
position = Vector2(287, 515)
@ -529,6 +513,12 @@ position = Vector2(-121, 476)
[node name="VerticalDoor3" parent="Tilemaps/Actors" instance=ExtResource("20_qudbj")]
position = Vector2(-324, 696)
[node name="ShieldExtendPickup" parent="Tilemaps/Actors" instance=ExtResource("37_5j8ks")]
position = Vector2(281, 296)
[node name="HeartExtendPickup" parent="Tilemaps/Actors" instance=ExtResource("38_sb7g3")]
position = Vector2(306, 326)
[node name="CameraController" type="Camera2D" parent="."]
script = ExtResource("7_lxkiw")
pixel_snap = false

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=84 format=4 uid="uid://dqyfnby0t7gu1"]
[gd_scene load_steps=105 format=4 uid="uid://dqyfnby0t7gu1"]
[ext_resource type="Script" uid="uid://doxmbokehw8ci" path="res://Scripts/GameManager.cs" id="1_c3v4x"]
[ext_resource type="Resource" uid="uid://cs3ihltcn2166" path="res://Resources/Items/IcicleGun.tres" id="3_6314l"]
@ -46,7 +46,6 @@
[ext_resource type="PackedScene" uid="uid://cnhgvn2salyxl" path="res://Scenes/Items/Icicle_Repeater.tscn" id="32_luw81"]
[ext_resource type="PackedScene" uid="uid://bjb1xv0ny1qim" path="res://Scenes/Props/Chair.tscn" id="33_7ft0s"]
[ext_resource type="Script" uid="uid://bgertv72tq1dt" path="res://Scripts/Components/FSM/NewPlayerStateMachine.cs" id="34_2vu2h"]
[ext_resource type="Script" uid="uid://b5fesrd4lv8t1" path="res://Scripts/Resources/Events/EventResource.cs" id="35_16ubp"]
[ext_resource type="PackedScene" uid="uid://b0k2grrc8xp1l" path="res://Scenes/Props/BigTank.tscn" id="35_31m6w"]
[ext_resource type="Script" uid="uid://btwuahxvreivs" path="res://Scripts/Components/FSM/Player/NewInit.cs" id="35_mpb62"]
[ext_resource type="Script" uid="uid://dl50bcl8dx3k8" path="res://Scripts/Components/FSM/TestModule.cs" id="36_4rfvg"]
@ -57,6 +56,7 @@
[ext_resource type="Script" uid="uid://bngko08ho85p6" path="res://Scripts/Resources/BulletScript.cs" id="39_83jc5"]
[ext_resource type="Resource" uid="uid://dqnvesdj0dk3v" path="res://Resources/Bullets/simple_enemy_bullet.tres" id="39_b0wyy"]
[ext_resource type="Script" uid="uid://c0ndqalsc4jve" path="res://Scripts/AttackPatterns/SpiralPattern.cs" id="40_o56je"]
[ext_resource type="Script" uid="uid://b5s5mjuk1rng5" path="res://Scripts/Resources/TimeModifier.cs" id="43_8n581"]
[ext_resource type="Script" uid="uid://c6467d6yx50qh" path="res://Scripts/Components/BulletSpawner.cs" id="43_b8ffn"]
[ext_resource type="PackedScene" uid="uid://b7gkxlll3b1eg" path="res://Scenes/Activable/FloorEmitter.tscn" id="44_b8ffn"]
[ext_resource type="Resource" uid="uid://cmra7n6so1x4u" path="res://Resources/BulletScripts/Basic_Enemy_Emitter_Spiral_Bullets.tres" id="45_4mkc6"]
@ -66,6 +66,10 @@
[ext_resource type="PackedScene" uid="uid://bb32f4p5e671j" path="res://Scenes/Actors/Fairy_Guard_FSM.tscn" id="51_awjkl"]
[ext_resource type="PackedScene" uid="uid://d1h48wgasakk4" path="res://Scenes/Interactable/alarm_box.tscn" id="52_5nxem"]
[ext_resource type="Script" uid="uid://bwox5lmgiijcs" path="res://Scripts/Resources/Events/ActivateEvent.cs" id="52_q2wmj"]
[ext_resource type="Texture2D" uid="uid://cnayqn8jgb8jj" path="res://Models/carr/carr_rotating.png" id="56_5glx6"]
[ext_resource type="PackedScene" uid="uid://iooa4gqy2uu2" path="res://Scenes/Items/Nuclear_Gun_Pickup.tscn" id="56_iv5wi"]
[ext_resource type="PackedScene" uid="uid://ey71mxa5ocpn" path="res://Scenes/Items/Shield_Extend_Pickup.tscn" id="60_bjd5y"]
[ext_resource type="PackedScene" uid="uid://d360rx247qywn" path="res://3D/3DTest.tscn" id="68_8n581"]
[sub_resource type="Resource" id="Resource_6wo78"]
script = ExtResource("4_u1i8n")
@ -124,7 +128,7 @@ DamageType = 0
OverrideControllable = false
Controllable = false
OverrideCreationModifier = false
TimeModifiers = []
TimeModifiers = Array[ExtResource("43_8n581")]([])
WaitForCompletion = true
metadata/_custom_type_script = "uid://c0ndqalsc4jve"
@ -152,11 +156,11 @@ DamageType = 0
OverrideControllable = false
Controllable = false
OverrideCreationModifier = false
TimeModifiers = []
TimeModifiers = Array[ExtResource("43_8n581")]([])
WaitForCompletion = true
metadata/_custom_type_script = "uid://c0ndqalsc4jve"
[sub_resource type="Resource" id="Resource_cr4hs"]
[sub_resource type="Resource" id="Resource_bjd5y"]
resource_local_to_scene = true
script = ExtResource("39_83jc5")
Patterns = Array[Object]([SubResource("Resource_kuo18")])
@ -176,6 +180,122 @@ Targets = Array[NodePath]([NodePath("../../ThermatronFsm")])
WaitForCompletion = true
metadata/_custom_type_script = "uid://bwox5lmgiijcs"
[sub_resource type="AtlasTexture" id="AtlasTexture_8qe0x"]
atlas = ExtResource("56_5glx6")
region = Rect2(0, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_nadrw"]
atlas = ExtResource("56_5glx6")
region = Rect2(16, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_vto58"]
atlas = ExtResource("56_5glx6")
region = Rect2(32, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_1tvdd"]
atlas = ExtResource("56_5glx6")
region = Rect2(48, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_v4yda"]
atlas = ExtResource("56_5glx6")
region = Rect2(64, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_awrqa"]
atlas = ExtResource("56_5glx6")
region = Rect2(80, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_tv14v"]
atlas = ExtResource("56_5glx6")
region = Rect2(96, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_amdeb"]
atlas = ExtResource("56_5glx6")
region = Rect2(112, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_0e6ic"]
atlas = ExtResource("56_5glx6")
region = Rect2(128, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_6khjs"]
atlas = ExtResource("56_5glx6")
region = Rect2(144, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_rgw1q"]
atlas = ExtResource("56_5glx6")
region = Rect2(160, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_g20dv"]
atlas = ExtResource("56_5glx6")
region = Rect2(176, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_tf3yy"]
atlas = ExtResource("56_5glx6")
region = Rect2(192, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_56glb"]
atlas = ExtResource("56_5glx6")
region = Rect2(208, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_w73bs"]
atlas = ExtResource("56_5glx6")
region = Rect2(224, 0, 16, 16)
[sub_resource type="SpriteFrames" id="SpriteFrames_n5tt7"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_8qe0x")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_nadrw")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_vto58")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_1tvdd")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_v4yda")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_awrqa")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_tv14v")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_amdeb")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_0e6ic")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_6khjs")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_rgw1q")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_g20dv")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_tf3yy")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_56glb")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_w73bs")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}]
[sub_resource type="ViewportTexture" id="ViewportTexture_q2wmj"]
viewport_path = NodePath("Tilemaps/3DSprite/SubViewport")
[sub_resource type="Resource" id="Resource_pgobb"]
script = ExtResource("29_3ll5g")
RelativeTargetPosition = Vector2(0, -96)
@ -262,7 +382,7 @@ scale = Vector2(0.66, 2.04)
[node name="FairyFsm" parent="Tilemaps/AcidHitboxes" node_paths=PackedStringArray("DefeatScript") instance=ExtResource("12_64bae")]
position = Vector2(776, -56)
ExtraLoot = Array[ExtResource("13_b3y78")]([SubResource("Resource_w8nwr"), SubResource("Resource_awjkl")])
ExtraLoot = [SubResource("Resource_w8nwr"), SubResource("Resource_awjkl")]
DefeatScript = NodePath("../../Actors/HorizontalForceField2")
ActivationType = 2
@ -433,7 +553,7 @@ InvertSignal = true
[node name="FloorEmitter2" parent="Tilemaps/Actors" instance=ExtResource("44_b8ffn")]
position = Vector2(601, 147)
Script = SubResource("Resource_cr4hs")
Script = SubResource("Resource_bjd5y")
InvertSignal = true
[node name="Camera" parent="Tilemaps/Actors" instance=ExtResource("48_r562v")]
@ -445,7 +565,7 @@ Targets = [NodePath("Script")]
[node name="Script" type="Node2D" parent="Tilemaps/Actors/ControlPad4"]
script = ExtResource("50_cr4hs")
Events = Array[ExtResource("35_16ubp")]([SubResource("Resource_8n581"), SubResource("Resource_iv5wi")])
Events = [SubResource("Resource_8n581"), SubResource("Resource_iv5wi")]
[node name="FairyGuardFsm" parent="Tilemaps/Actors" instance=ExtResource("50_w8nwr")]
position = Vector2(712, -136)
@ -469,13 +589,49 @@ position = Vector2(888, 176)
position = Vector2(544, -32)
StartingAiState = 1
[node name="NuclearGun" parent="Tilemaps/Actors" instance=ExtResource("56_iv5wi")]
position = Vector2(602, 30)
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="Tilemaps"]
position = Vector2(622, 36)
sprite_frames = SubResource("SpriteFrames_n5tt7")
autoplay = "default"
frame = 8
frame_progress = 0.43812
[node name="3DSprite" type="Sprite2D" parent="Tilemaps"]
position = Vector2(643, 38)
texture = SubResource("ViewportTexture_q2wmj")
[node name="SubViewport" type="SubViewport" parent="Tilemaps/3DSprite"]
transparent_bg = true
handle_input_locally = false
snap_2d_transforms_to_pixel = true
snap_2d_vertices_to_pixel = true
size = Vector2i(16, 16)
render_target_update_mode = 4
[node name="3dTest" parent="Tilemaps/3DSprite/SubViewport" instance=ExtResource("68_8n581")]
transform = Transform3D(0.548614, 0, -0.836076, 0, 1, 0, 0.836076, 0, 0.548614, 0, 0, 0)
[node name="Camera3D" type="Camera3D" parent="Tilemaps/3DSprite/SubViewport"]
transform = Transform3D(1, 0, 0, 0, 0.929886, 0.367849, 0, -0.367849, 0.929886, -0.0305517, 3.01764, 7.21974)
projection = 1
size = 3.0
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="Tilemaps/3DSprite/SubViewport"]
transform = Transform3D(0.826924, -0.385938, 0.408961, 0, 0.727282, 0.686339, -0.562314, -0.56755, 0.601406, -1.68338, 4.05689, 4.38376)
[node name="ScriptableAreaTrigger" parent="Tilemaps" instance=ExtResource("28_fuxq3")]
position = Vector2(230, 250)
Events = Array[ExtResource("35_16ubp")]([SubResource("Resource_pgobb")])
Events = [SubResource("Resource_pgobb")]
[node name="AlarmBox" parent="Tilemaps" instance=ExtResource("52_5nxem")]
position = Vector2(616, 88)
[node name="ShieldExtendPickup" parent="Tilemaps" instance=ExtResource("60_bjd5y")]
position = Vector2(664, 38)
[node name="CameraController" type="Camera2D" parent="."]
process_mode = 1
script = ExtResource("9_dj0ui")

View file

@ -0,0 +1,142 @@
[gd_scene load_steps=20 format=3 uid="uid://b23lyiq42kvrr"]
[ext_resource type="Script" uid="uid://dsa4b75hdig8p" path="res://Scripts/Bullet.cs" id="1_gvb0k"]
[ext_resource type="Texture2D" uid="uid://4dfuib4wce7n" path="res://Sprites/Bullets/Nuclear_Bullet.png" id="2_oarhb"]
[sub_resource type="CircleShape2D" id="CircleShape2D_jxptd"]
radius = 2.23607
[sub_resource type="AtlasTexture" id="AtlasTexture_uqai3"]
atlas = ExtResource("2_oarhb")
region = Rect2(0, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_6lwk6"]
atlas = ExtResource("2_oarhb")
region = Rect2(16, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_7m7f4"]
atlas = ExtResource("2_oarhb")
region = Rect2(32, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_axb8f"]
atlas = ExtResource("2_oarhb")
region = Rect2(48, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_wbpbe"]
atlas = ExtResource("2_oarhb")
region = Rect2(64, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_4y8ns"]
atlas = ExtResource("2_oarhb")
region = Rect2(80, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_qrx7w"]
atlas = ExtResource("2_oarhb")
region = Rect2(96, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_p1tue"]
atlas = ExtResource("2_oarhb")
region = Rect2(112, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_ypiu1"]
atlas = ExtResource("2_oarhb")
region = Rect2(128, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_w4arb"]
atlas = ExtResource("2_oarhb")
region = Rect2(144, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_n4wf5"]
atlas = ExtResource("2_oarhb")
region = Rect2(160, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_eyqto"]
atlas = ExtResource("2_oarhb")
region = Rect2(176, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_xai3s"]
atlas = ExtResource("2_oarhb")
region = Rect2(192, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_hw63c"]
atlas = ExtResource("2_oarhb")
region = Rect2(208, 0, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_2dn0u"]
atlas = ExtResource("2_oarhb")
region = Rect2(224, 0, 16, 16)
[sub_resource type="SpriteFrames" id="SpriteFrames_e6wo0"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_uqai3")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_6lwk6")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_7m7f4")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_axb8f")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_wbpbe")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_4y8ns")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_qrx7w")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_p1tue")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ypiu1")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_w4arb")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_n4wf5")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_eyqto")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_xai3s")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_hw63c")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_2dn0u")
}],
"loop": false,
"name": &"default",
"speed": 8.0
}]
[node name="Bullet" type="Area2D" groups=["bullets"]]
collision_layer = 8
collision_mask = 85
script = ExtResource("1_gvb0k")
Speed = 200.0
metadata/_edit_group_ = true
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
shape = SubResource("CircleShape2D_jxptd")
[node name="Node2D" type="Node2D" parent="."]
editor_description = "Player Bullet"
[node name="VisibleOnScreenNotifier2D" type="VisibleOnScreenNotifier2D" parent="."]
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
sprite_frames = SubResource("SpriteFrames_e6wo0")
[connection signal="area_entered" from="." to="." method="_on_area_entered"]
[connection signal="body_entered" from="." to="." method="_on_body_entered"]
[connection signal="screen_exited" from="VisibleOnScreenNotifier2D" to="." method="_on_visible_on_screen_notifier_2d_screen_exited"]

View file

@ -63,7 +63,6 @@
[ext_resource type="PackedScene" uid="uid://dx1urm7nttkqk" path="res://Scenes/Actors/level_teleporter.tscn" id="44_q5xi2"]
[ext_resource type="PackedScene" uid="uid://b0k2grrc8xp1l" path="res://Scenes/Props/BigTank.tscn" id="45_5qg27"]
[ext_resource type="Script" uid="uid://bwox5lmgiijcs" path="res://Scripts/Resources/Events/ActivateEvent.cs" id="45_emjoj"]
[ext_resource type="Script" uid="uid://b5fesrd4lv8t1" path="res://Scripts/Resources/Events/EventResource.cs" id="45_f37sa"]
[ext_resource type="Script" uid="uid://ddv26x2qilprb" path="res://Scripts/Resources/Events/DialogueStartEvent.cs" id="46_i0omr"]
[ext_resource type="PackedScene" uid="uid://cqrkisw6jg24w" path="res://Scenes/Props/MainFrame1.tscn" id="46_ny2s2"]
[ext_resource type="PackedScene" uid="uid://cdti0hnbs3e63" path="res://Scenes/Actors/RoamingSusan.tscn" id="47_u1ve6"]
@ -103,6 +102,7 @@
[ext_resource type="Resource" uid="uid://cmra7n6so1x4u" path="res://Resources/BulletScripts/Basic_Enemy_Emitter_Spiral_Bullets.tres" id="95_7m6n7"]
[ext_resource type="Resource" uid="uid://dodwpect0ldjf" path="res://Resources/Items/Heart_Pickup.tres" id="95_srv0g"]
[ext_resource type="PackedScene" uid="uid://nupd3pg74vua" path="res://Scenes/Activable/ScriptableInvisibleEmitter.tscn" id="96_ygp23"]
[ext_resource type="Script" uid="uid://b5s5mjuk1rng5" path="res://Scripts/Resources/TimeModifier.cs" id="97_0bqta"]
[ext_resource type="Resource" uid="uid://dtkti2rjlcp3u" path="res://Resources/Bullets/Fire_Emitter_Bullet.tres" id="97_xwjvv"]
[ext_resource type="Script" uid="uid://c0ndqalsc4jve" path="res://Scripts/AttackPatterns/SpiralPattern.cs" id="98_gvbi8"]
[ext_resource type="Script" uid="uid://bngko08ho85p6" path="res://Scripts/Resources/BulletScript.cs" id="99_j6vrf"]
@ -255,7 +255,7 @@ DamageType = 0
OverrideControllable = false
Controllable = false
OverrideCreationModifier = false
TimeModifiers = []
TimeModifiers = Array[ExtResource("97_0bqta")]([])
WaitForCompletion = true
metadata/_custom_type_script = "uid://c0ndqalsc4jve"
@ -637,7 +637,7 @@ Invisible = true
metadata/_edit_group_ = true
[node name="ScriptableAreaTrigger" parent="Parallax2D/Factory Tilemaps/LevelProps/DebugTeleporter" instance=ExtResource("43_kf3qc")]
Events = Array[ExtResource("45_f37sa")]([SubResource("Resource_usuub")])
Events = [SubResource("Resource_usuub")]
[node name="BlueKeycard2" parent="Parallax2D/Factory Tilemaps/LevelProps" instance=ExtResource("35_rblsn")]
position = Vector2(-1032, -317)
@ -816,7 +816,7 @@ position = Vector2(-1423, -188)
[node name="LevelStartTrigger" parent="Parallax2D/Factory Tilemaps/LevelProps" instance=ExtResource("43_kf3qc")]
position = Vector2(-781, -160)
scale = Vector2(1.455, 1.455)
Events = Array[ExtResource("45_f37sa")]([SubResource("Resource_5er5x"), SubResource("Resource_b25hy")])
Events = [SubResource("Resource_5er5x"), SubResource("Resource_b25hy")]
[node name="AreaTrigger2" parent="Parallax2D/Factory Tilemaps/LevelProps" node_paths=PackedStringArray("Target") instance=ExtResource("28_6au4t")]
position = Vector2(-435, -162)
@ -859,7 +859,7 @@ metadata/_edit_group_ = true
[node name="Script2" type="Node2D" parent="Parallax2D/Factory Tilemaps/LevelProps/Computer2"]
position = Vector2(120, 25)
script = ExtResource("42_wigyb")
Events = Array[ExtResource("45_f37sa")]([SubResource("Resource_ji7au")])
Events = [SubResource("Resource_ji7au")]
[node name="Computer6" parent="Parallax2D/Factory Tilemaps/LevelProps" node_paths=PackedStringArray("Targets") instance=ExtResource("31_243ec")]
position = Vector2(-1113, -139)
@ -869,7 +869,7 @@ metadata/_edit_group_ = true
[node name="Script2" type="Node2D" parent="Parallax2D/Factory Tilemaps/LevelProps/Computer6"]
position = Vector2(0, 1)
script = ExtResource("42_wigyb")
Events = Array[ExtResource("45_f37sa")]([SubResource("Resource_ji7au")])
Events = [SubResource("Resource_ji7au")]
[node name="Computer5" parent="Parallax2D/Factory Tilemaps/LevelProps" node_paths=PackedStringArray("Targets") instance=ExtResource("31_243ec")]
position = Vector2(-1344, -251)
@ -877,7 +877,7 @@ Targets = [NodePath("Computer5Script")]
[node name="Computer5Script" type="Node2D" parent="Parallax2D/Factory Tilemaps/LevelProps/Computer5"]
script = ExtResource("42_wigyb")
Events = Array[ExtResource("45_f37sa")]([SubResource("Resource_fasrq"), SubResource("Resource_mah4x"), SubResource("Resource_0bqta")])
Events = [SubResource("Resource_fasrq"), SubResource("Resource_mah4x"), SubResource("Resource_0bqta")]
[node name="Computer3" parent="Parallax2D/Factory Tilemaps/LevelProps" node_paths=PackedStringArray("Target") instance=ExtResource("31_243ec")]
position = Vector2(-612.57, -358.528)
@ -885,7 +885,7 @@ Target = NodePath("Script")
[node name="Script" type="Node2D" parent="Parallax2D/Factory Tilemaps/LevelProps/Computer3"]
script = ExtResource("42_wigyb")
Events = Array[ExtResource("45_f37sa")]([SubResource("Resource_o2kpk")])
Events = [SubResource("Resource_o2kpk")]
[node name="Computer4" parent="Parallax2D/Factory Tilemaps/LevelProps" node_paths=PackedStringArray("Target") instance=ExtResource("31_243ec")]
position = Vector2(-791, -505)
@ -893,7 +893,7 @@ Target = NodePath("Node2D")
[node name="Node2D" type="Node2D" parent="Parallax2D/Factory Tilemaps/LevelProps/Computer4"]
script = ExtResource("42_wigyb")
Events = Array[ExtResource("45_f37sa")]([SubResource("Resource_s3g2w")])
Events = [SubResource("Resource_s3g2w")]
[node name="Label" type="Label" parent="Parallax2D/Factory Tilemaps/LevelProps/Computer4"]
offset_left = -5.0
@ -922,11 +922,11 @@ position = Vector2(-792, -407)
[node name="BossBattleEndScript" type="Node2D" parent="Parallax2D/Factory Tilemaps/LevelProps"]
position = Vector2(-1628.53, -477.628)
script = ExtResource("42_wigyb")
Events = Array[ExtResource("45_f37sa")]([SubResource("Resource_068l7"), SubResource("Resource_l3nop")])
Events = [SubResource("Resource_068l7"), SubResource("Resource_l3nop")]
[node name="BossBattleStartScript" parent="Parallax2D/Factory Tilemaps/LevelProps" instance=ExtResource("43_kf3qc")]
position = Vector2(-1487, -396)
Events = Array[ExtResource("45_f37sa")]([SubResource("Resource_4f4id"), SubResource("Resource_s2o7m"), SubResource("Resource_b1dht"), SubResource("Resource_xrgpy"), SubResource("Resource_wma5c")])
Events = [SubResource("Resource_4f4id"), SubResource("Resource_s2o7m"), SubResource("Resource_b1dht"), SubResource("Resource_xrgpy"), SubResource("Resource_wma5c")]
[node name="Enemy13" parent="Parallax2D/Factory Tilemaps/LevelProps" instance=ExtResource("47_u1ve6")]
position = Vector2(-1657, -788)
@ -1188,7 +1188,7 @@ position = Vector2(-2072, -211)
[node name="ScriptableAreaTrigger" parent="Parallax2D/Factory Tilemaps/LevelProps" instance=ExtResource("43_kf3qc")]
position = Vector2(-2063, -232)
Events = Array[ExtResource("45_f37sa")]([SubResource("Resource_l476f"), SubResource("Resource_dskij")])
Events = [SubResource("Resource_l476f"), SubResource("Resource_dskij")]
[node name="ShieldExtendPickup" parent="Parallax2D/Factory Tilemaps/LevelProps" instance=ExtResource("103_0bqta")]
position = Vector2(-1646, 38)

View file

@ -1,4 +1,6 @@
using Godot;
using System;
using System.Threading.Tasks;
using Godot;
namespace Cirno.Scripts.Components.Actors;
@ -36,6 +38,35 @@ public partial class KeyboardInputProvider : InputProvider
private enum AimInputMethod { RightStick, Mouse }
private AimInputMethod _lastUsedInput = AimInputMethod.RightStick;
public override void _Ready()
{
CallDeferred(MethodName.DelayedRegisterGameManager);
}
private void DelayedRegisterGameManager()
{
GameManager.Instance.GameStateChange += InstanceOnGameStateChange;
_enabled = true;
}
private bool _enabled = false;
private void InstanceOnGameStateChange(GameState state)
{
if (state is not GameState.Playing) return;
_enabled = false;
_ = DelayResume();
}
private async Task DelayResume()
{
//await ToSignal(GetTree(), SceneTree.SignalName.ProcessFrame);
await Task.Delay(200);
_enabled = true;
}
public override Vector2 GetMovementInput()
{
@ -96,7 +127,7 @@ public partial class KeyboardInputProvider : InputProvider
public override bool GetShootPressed()
{
return GetActionPressed(_shootActionName);
return _enabled && GetActionPressed(_shootActionName);
}
public override bool GetShootJustPressed()

View file

@ -328,15 +328,24 @@ public partial class GameManager : Node2D
case GameState.Playing:
case GameState.Controlling:
//Input.MouseMode = Input.MouseModeEnum.Confined;
GetTree().SetPause(false);
DelayedUnpause();
//CallDeferred(MethodName.DelayedUnpause);
//GetTree().SetPause(false);
break;
case GameState.Menu:
//Input.MouseMode = Input.MouseModeEnum.Visible;
GetTree().SetPause(false);
DelayedUnpause();
//CallDeferred(MethodName.DelayedUnpause);
//GetTree().SetPause(false);
break;
}
}
private void DelayedUnpause()
{
GetTree().SetPause(false);
}
public void ClearBullets()
{
if (_bulletsContainer is null) return;

12
Scripts/TestRotation3D.cs Normal file
View file

@ -0,0 +1,12 @@
using Godot;
using System;
public partial class TestRotation3D : Node3D
{
[Export] public float RotationSpeed = 1f;
public override void _PhysicsProcess(double delta)
{
this.RotateY(Mathf.DegToRad(RotationSpeed));
}
}

View file

@ -0,0 +1 @@
uid://q44rbbdjx75v

BIN
Sprites/Bullets/Nuclear_Bullet.png (Stored with Git LFS) Normal file

Binary file not shown.

View file

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