From 5ae556cb4bf0bfbcbfd79605b8d025c92616a03b Mon Sep 17 00:00:00 2001 From: Zenny Date: Wed, 4 Feb 2026 02:04:04 -0800 Subject: [PATCH] Fix some broken stuff (player spawn, disabled input after loading next floor) --- Zennysoft.Game.Ma/src/items/box/BoxItem.tscn | 41 ++++++++++++++ .../src/map/dungeon/code/DungeonFloor.cs | 2 +- Zennysoft.Game.Ma/src/player/Player.tscn | 54 ++++++++++++------- .../src/ui/load_next_level/LoadNextLevel.cs | 2 +- 4 files changed, 79 insertions(+), 20 deletions(-) create mode 100644 Zennysoft.Game.Ma/src/items/box/BoxItem.tscn diff --git a/Zennysoft.Game.Ma/src/items/box/BoxItem.tscn b/Zennysoft.Game.Ma/src/items/box/BoxItem.tscn new file mode 100644 index 00000000..750753f5 --- /dev/null +++ b/Zennysoft.Game.Ma/src/items/box/BoxItem.tscn @@ -0,0 +1,41 @@ +[gd_scene load_steps=5 format=3 uid="uid://bguomljidwgto"] + +[ext_resource type="Script" path="res://src/items/box/BoxItem.cs" id="1_holk0"] +[ext_resource type="Texture2D" uid="uid://bg47n2tmintm0" path="res://src/items/consumable/textures/past self remnant.PNG" id="2_holk0"] + +[sub_resource type="CylinderShape3D" id="CylinderShape3D_x6u08"] +height = 0.725098 + +[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_1ceef"] +radius = 0.470016 + +[node name="Box Item" type="RigidBody3D"] +collision_layer = 0 +axis_lock_linear_x = true +axis_lock_linear_z = true +axis_lock_angular_x = true +axis_lock_angular_y = true +axis_lock_angular_z = true +script = ExtResource("1_holk0") +Stats = null + +[node name="CollisionShape3D" type="CollisionShape3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.00908482, 0) +shape = SubResource("CylinderShape3D_x6u08") + +[node name="Pickup" type="Area3D" parent="."] +unique_name_in_owner = true +collision_layer = 4 +collision_mask = 0 + +[node name="Sprite" type="Sprite3D" parent="Pickup"] +unique_name_in_owner = true +pixel_size = 0.0025 +billboard = 2 +shaded = true +texture_filter = 0 +render_priority = 100 +texture = ExtResource("2_holk0") + +[node name="CollisionShape3D" type="CollisionShape3D" parent="Pickup"] +shape = SubResource("CapsuleShape3D_1ceef") diff --git a/Zennysoft.Game.Ma/src/map/dungeon/code/DungeonFloor.cs b/Zennysoft.Game.Ma/src/map/dungeon/code/DungeonFloor.cs index 9fac5d0b..f721d7fb 100644 --- a/Zennysoft.Game.Ma/src/map/dungeon/code/DungeonFloor.cs +++ b/Zennysoft.Game.Ma/src/map/dungeon/code/DungeonFloor.cs @@ -50,7 +50,7 @@ public partial class DungeonFloor : Node3D, IDungeonFloor room.SpawnEnemies(enemyOdds); } - public (Vector3 Rotation, Vector3 Position) GetPlayerSpawnPoint() { return (_playerSpawnPoint.Rotation, new Vector3(_playerSpawnPoint.GlobalPosition.X, -2.5f, _playerSpawnPoint.GlobalPosition.Z)); } + public (Vector3 Rotation, Vector3 Position) GetPlayerSpawnPoint() { return (_playerSpawnPoint.Rotation, new Vector3(_playerSpawnPoint.GlobalPosition.X, 0, _playerSpawnPoint.GlobalPosition.Z)); } private Marker3D RandomizePlayerSpawnPoint() diff --git a/Zennysoft.Game.Ma/src/player/Player.tscn b/Zennysoft.Game.Ma/src/player/Player.tscn index 6d8708a9..9991d769 100644 --- a/Zennysoft.Game.Ma/src/player/Player.tscn +++ b/Zennysoft.Game.Ma/src/player/Player.tscn @@ -211,7 +211,7 @@ tracks/0/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 1, -"values": [&"normal_slash"] +"values": [&"Normal Slash 1"] } tracks/1/type = "value" tracks/1/imported = false @@ -309,6 +309,30 @@ tracks/8/keys = { "update": 0, "values": [Vector3(0.003, 2.1, -0.01)] } +tracks/9/type = "value" +tracks/9/imported = false +tracks/9/enabled = true +tracks/9/path = NodePath("SubViewportContainer/SubViewport/Hit Wall:animation") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [&"default"] +} +tracks/10/type = "value" +tracks/10/imported = false +tracks/10/enabled = true +tracks/10/path = NodePath("SubViewportContainer/SubViewport/Hit Wall:frame") +tracks/10/interp = 1 +tracks/10/loop_wrap = true +tracks/10/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [58] +} [sub_resource type="Animation" id="Animation_es4xk"] resource_name = "death" @@ -376,31 +400,31 @@ tracks/4/keys = { [sub_resource type="Animation" id="Animation_ebyyx"] resource_name = "hit_wall" -length = 0.155558 -step = 0.0222222 +length = 1.20834 +step = 0.0416667 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true -tracks/0/path = NodePath("SubViewportContainer/SubViewport/WeaponAttack:animation") +tracks/0/path = NodePath("SubViewportContainer/SubViewport/Hit Wall:animation") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { -"times": PackedFloat32Array(0, 0.0001), -"transitions": PackedFloat32Array(1, 1), +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), "update": 0, -"values": [&"hit_wall", &"hit_wall"] +"values": [&"default"] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true -tracks/1/path = NodePath("SubViewportContainer/SubViewport/WeaponAttack:frame") +tracks/1/path = NodePath("SubViewportContainer/SubViewport/Hit Wall:frame") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { -"times": PackedFloat32Array(0, 0.155556), +"times": PackedFloat32Array(0, 1.20833), "transitions": PackedFloat32Array(1, 1), "update": 0, -"values": [0, 7] +"values": [0, 29] } [sub_resource type="Animation" id="Animation_v5qoq"] @@ -417,7 +441,7 @@ tracks/0/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, -"values": [&"normal_slash"] +"values": [&"Normal Slash 1"] } tracks/1/type = "value" tracks/1/imported = false @@ -12253,7 +12277,7 @@ position = Vector2(764, 544) position = Vector2(720, 580) scale = Vector2(2.25, 2.25) sprite_frames = SubResource("SpriteFrames_jtmj1") -animation = &"normal_slash" +animation = &"Normal Slash 1" [node name="ColorRect" type="ColorRect" parent="ScreenFX/SubViewportContainer/SubViewport"] anchors_preset = 15 @@ -12274,7 +12298,6 @@ speed_scale = 2.0 position = Vector2(951, 498) sprite_frames = SubResource("SpriteFrames_5rmcm") frame = 58 -frame_progress = 1.0 [node name="ENTROPIC ELEMENT1" type="AnimatedSprite2D" parent="ScreenFX/SubViewportContainer/SubViewport"] position = Vector2(349, 200) @@ -12305,8 +12328,3 @@ bus = &"SFX" [node name="WalkSFX" type="AudioStreamPlayer3D" parent="."] unique_name_in_owner = true stream = ExtResource("6_v7rlw") - -[node name="CSGBox3D" type="CSGBox3D" parent="."] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -1.84353) -visible = false -size = Vector3(1, 4.2, 1) diff --git a/Zennysoft.Game.Ma/src/ui/load_next_level/LoadNextLevel.cs b/Zennysoft.Game.Ma/src/ui/load_next_level/LoadNextLevel.cs index bc003f85..b76c8655 100644 --- a/Zennysoft.Game.Ma/src/ui/load_next_level/LoadNextLevel.cs +++ b/Zennysoft.Game.Ma/src/ui/load_next_level/LoadNextLevel.cs @@ -110,7 +110,7 @@ public partial class LoadNextLevel : Control, IFloorClearMenu } if (animName == "fade_out") { - _fadingIn = true; + _fadingIn = false; CallDeferred(MethodName.ReleaseFocus); } }