From 79dd6eb33ae96be6ee5c47c709c659d2cab72239 Mon Sep 17 00:00:00 2001 From: Zenny Date: Sun, 25 Jan 2026 16:06:20 -0800 Subject: [PATCH] Fix player height --- .../Player/IPlayer.cs | 6 - Zennysoft.Game.Ma/src/game/Game.cs | 2 - .../src/map/dungeon/code/Altar.cs | 17 ++- .../src/map/dungeon/code/Overworld.cs | 2 +- .../floors/Special Floors/Overworld.tscn | 8 +- Zennysoft.Game.Ma/src/player/Player.cs | 17 --- Zennysoft.Game.Ma/src/player/Player.tscn | 125 ++++++------------ 7 files changed, 53 insertions(+), 124 deletions(-) diff --git a/Zennysoft.Game.Ma.Implementation/Player/IPlayer.cs b/Zennysoft.Game.Ma.Implementation/Player/IPlayer.cs index 796c7aa6..f23fd82f 100644 --- a/Zennysoft.Game.Ma.Implementation/Player/IPlayer.cs +++ b/Zennysoft.Game.Ma.Implementation/Player/IPlayer.cs @@ -18,16 +18,12 @@ public interface IPlayer : IKillable, ICharacterBody3D public void LevelUp(); - public void LookUp(); - public void TeleportPlayer(Transform3D newTransform); public void Equip(EquipableItem equipable); public void Unequip(EquipableItem equipable); - public void Reset(); - public IInventory Inventory { get; } public IHealthComponent HealthComponent { get; } @@ -50,6 +46,4 @@ public interface IPlayer : IKillable, ICharacterBody3D public event Action PlayerDied; public delegate InventoryItem RerollItem(InventoryItem item); - - public event Action PointUpFinished; } diff --git a/Zennysoft.Game.Ma/src/game/Game.cs b/Zennysoft.Game.Ma/src/game/Game.cs index 1d270152..59a11436 100644 --- a/Zennysoft.Game.Ma/src/game/Game.cs +++ b/Zennysoft.Game.Ma/src/game/Game.cs @@ -177,7 +177,6 @@ public partial class Game : Node3D, IGame _map.FloorLoaded += OnFloorLoadFinished; _player.PlayerDied += GameOver; - _player.PointUpFinished += PointUpFinished; GameOverMenu.NewGame += OnNewGame; GameOverMenu.QuitGame += OnQuit; @@ -338,7 +337,6 @@ public partial class Game : Node3D, IGame }) .Handle((in GameState.Output.LoadNextFloor _) => { - _player.Reset(); LoadNextLevel.FadeOut(); EmitSignal(SignalName.OnLoadLevelRequest); Task.Run(() => Save()); diff --git a/Zennysoft.Game.Ma/src/map/dungeon/code/Altar.cs b/Zennysoft.Game.Ma/src/map/dungeon/code/Altar.cs index 5f341860..9021faae 100644 --- a/Zennysoft.Game.Ma/src/map/dungeon/code/Altar.cs +++ b/Zennysoft.Game.Ma/src/map/dungeon/code/Altar.cs @@ -30,27 +30,26 @@ public partial class Altar : Node3D, IDungeonFloor public void OnResolved() { - Show(); - Exit.AreaEntered += Exit_AreaEntered; - NoExitArea.AreaEntered += NoExitArea_AreaEntered; - _player.PointUpFinished += _player_PointUpFinished; - FloorIsLoaded = true; + Show(); + Exit.AreaEntered += Exit_AreaEntered; + NoExitArea.AreaEntered += NoExitArea_AreaEntered; + FloorIsLoaded = true; } private void _player_PointUpFinished() { - _player.Activate(); + _player.Activate(); } private void NoExitArea_AreaEntered(Area3D area) { - DialogueController.ShowDialogue(Dialogue, "no_exit"); + DialogueController.ShowDialogue(Dialogue, "no_exit"); } private void Exit_AreaEntered(Area3D area) { - if (area.GetOwner() is IPlayer) - ExitReached(); + if (area.GetOwner() is IPlayer) + ExitReached(); } public void ExitReached() => Game.FloorExitReached(); diff --git a/Zennysoft.Game.Ma/src/map/dungeon/code/Overworld.cs b/Zennysoft.Game.Ma/src/map/dungeon/code/Overworld.cs index 0e693391..40ceb0c9 100644 --- a/Zennysoft.Game.Ma/src/map/dungeon/code/Overworld.cs +++ b/Zennysoft.Game.Ma/src/map/dungeon/code/Overworld.cs @@ -73,5 +73,5 @@ public partial class Overworld : Node3D, IDungeonFloor public void ExitReached() => Game.FloorExitReached(); - public Transform3D GetPlayerSpawnPoint() => new Transform3D(PlayerSpawnPoint.Basis, new Vector3(PlayerSpawnPoint.GlobalPosition.X, 3.5f, PlayerSpawnPoint.GlobalPosition.Z)); + public Transform3D GetPlayerSpawnPoint() => new Transform3D(PlayerSpawnPoint.Basis, new Vector3(PlayerSpawnPoint.GlobalPosition.X, 2.4f, PlayerSpawnPoint.GlobalPosition.Z)); } diff --git a/Zennysoft.Game.Ma/src/map/dungeon/floors/Special Floors/Overworld.tscn b/Zennysoft.Game.Ma/src/map/dungeon/floors/Special Floors/Overworld.tscn index f1346cde..0c834f3f 100644 --- a/Zennysoft.Game.Ma/src/map/dungeon/floors/Special Floors/Overworld.tscn +++ b/Zennysoft.Game.Ma/src/map/dungeon/floors/Special Floors/Overworld.tscn @@ -2,9 +2,9 @@ [ext_resource type="Script" uid="uid://cuhfkyh3d7noa" path="res://src/map/dungeon/code/Overworld.cs" id="1_5hmt3"] [ext_resource type="Texture2D" uid="uid://co6h8vyi11sl2" path="res://src/map/overworld/Models/Overworld_CLOUD_RINGS_INNER_63.png" id="2_g6b7b"] -[ext_resource type="AudioStream" uid="uid://ym4ur8a2qxhp" path="res://src/audio/amb/amb_perlin.wav" id="2_wbbo3"] -[ext_resource type="AudioStream" uid="uid://b7wxddjx3qw5o" path="res://src/audio/amb/amb_white_noise.wav" id="3_c2gp5"] -[ext_resource type="AudioStream" uid="uid://ddii3pi8x75xc" path="res://src/audio/amb/amb_beach.wav" id="3_pvi8n"] +[ext_resource type="AudioStream" uid="uid://dqmsaok6fyhe7" path="res://src/audio/AMB/amb_perlin.wav" id="2_wbbo3"] +[ext_resource type="AudioStream" uid="uid://dl07vg00se7hd" path="res://src/audio/AMB/amb_white_noise.wav" id="3_c2gp5"] +[ext_resource type="AudioStream" uid="uid://boypvgaweep8a" path="res://src/audio/AMB/amb_beach.wav" id="3_pvi8n"] [ext_resource type="Texture2D" uid="uid://w33fr6exryiy" path="res://src/map/overworld/Models/Overworld_CLOUD_RINGS_INNER_37.png" id="3_uyygh"] [ext_resource type="Texture2D" uid="uid://dv10yaqvp3mub" path="res://src/map/overworld/Models/Overworld_CLOUD_RINGS_INNER_71.png" id="4_r8r3k"] [ext_resource type="Shader" uid="uid://brhf7s3riyag5" path="res://src/map/map shaders/Metal.gdshader" id="5_d1qcb"] @@ -10898,7 +10898,7 @@ transform = Transform3D(0.99, 0, 0, 0, 0.99, 0, 0, 0, 0.99, -132.777, 0, -5.0904 [node name="PlayerSpawnPoint" type="Marker3D" parent="Spawn Points"] unique_name_in_owner = true -transform = Transform3D(-0.0104718, 0, 0.999944, 0, 0.999999, 0, -0.999944, 0, -0.0104718, -207.082, 2.442, 35.425) +transform = Transform3D(-0.0104718, 0, 0.999944, 0, 0.999999, 0, -0.999944, 0, -0.0104718, -207.082, 2.4, 35.425) [node name="Exit" type="Area3D" parent="Spawn Points"] unique_name_in_owner = true diff --git a/Zennysoft.Game.Ma/src/player/Player.cs b/Zennysoft.Game.Ma/src/player/Player.cs index 3148b3e7..83d369e1 100644 --- a/Zennysoft.Game.Ma/src/player/Player.cs +++ b/Zennysoft.Game.Ma/src/player/Player.cs @@ -71,8 +71,6 @@ public partial class Player : CharacterBody3D, IPlayer, IProvide private bool HealthTimerIsActive = false; #endregion - public event Action PointUpFinished; - #region Node Dependencies [Node] private IAnimationPlayer AnimationPlayer { get; set; } = default!; @@ -94,7 +92,6 @@ public partial class Player : CharacterBody3D, IPlayer, IProvide [Node] private ShakeCamera _camera3D { get; set; } = default!; - [Node] private AnimationPlayer CameraAnimations { get; set; } = default!; #endregion @@ -129,8 +126,6 @@ public partial class Player : CharacterBody3D, IPlayer, IProvide _itemReroller = new ItemReroller(ItemDatabase.Instance); - CameraAnimations.AnimationFinished += CameraAnimations_AnimationFinished; - Settings = new PlayerLogic.Settings() { RotationSpeed = RotationSpeed, MoveSpeed = MoveSpeed, Acceleration = Acceleration }; PlayerBinding = PlayerLogic.Bind(); @@ -194,8 +189,6 @@ public partial class Player : CharacterBody3D, IPlayer, IProvide SetHealthTimerStatus(false); } - public void LookUp() => CameraAnimations.Play("look_up"); - public void SetHealthTimerStatus(bool isActive) { if (isActive) @@ -242,11 +235,6 @@ public partial class Player : CharacterBody3D, IPlayer, IProvide SetPhysicsProcess(false); } - public void Reset() - { - CameraAnimations.Play("RESET"); - } - public override void _Input(InputEvent @event) { if (@event.IsActionPressed(GameInputs.Attack)) @@ -291,11 +279,6 @@ public partial class Player : CharacterBody3D, IPlayer, IProvide EquipmentComponent.Unequip(equipable); } - private void CameraAnimations_AnimationFinished(StringName animName) - { - PointUpFinished?.Invoke(); - } - private static Vector3 GlobalInputVector { get diff --git a/Zennysoft.Game.Ma/src/player/Player.tscn b/Zennysoft.Game.Ma/src/player/Player.tscn index 79ca4002..db8d0c90 100644 --- a/Zennysoft.Game.Ma/src/player/Player.tscn +++ b/Zennysoft.Game.Ma/src/player/Player.tscn @@ -1,7 +1,8 @@ -[gd_scene load_steps=1732 format=3 uid="uid://cfecvvav8kkp6"] +[gd_scene load_steps=1730 format=3 uid="uid://cfecvvav8kkp6"] [ext_resource type="Script" uid="uid://yxmiqy7i0t7r" path="res://src/player/Player.cs" id="1_xcol5"] [ext_resource type="PackedScene" uid="uid://didc6vnf5ftlg" path="res://src/camera/ShakeCamera.tscn" id="2_jtmj1"] +[ext_resource type="PackedScene" uid="uid://d60ka3oda7au" path="res://src/player/dont_look_in_here/tendomaya.glb" id="3_74hqa"] [ext_resource type="AudioStream" uid="uid://cth2xgoqhdf0m" path="res://src/audio/sfx/player_hit_wall.ogg" id="3_565yv"] [ext_resource type="Texture2D" uid="uid://c4ps26w7h3vpq" path="res://src/minimap/textures/player_map_icon.png" id="4_3ojaj"] [ext_resource type="Shader" uid="uid://dfk3eps71yyyl" path="res://src/player/InvertColors.gdshader" id="4_v5qoq"] @@ -46,42 +47,6 @@ material = SubResource("ShaderMaterial_jtmj1") flip_faces = true size = Vector2(2, 2) -[sub_resource type="Animation" id="Animation_ilpvp"] -length = 0.001 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath(".: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)] -} - -[sub_resource type="Animation" id="Animation_ubmds"] -resource_name = "look_up" -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath(".:rotation") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0, 1), -"transitions": PackedFloat32Array(1, 1), -"update": 0, -"values": [Vector3(0, 0, 0), Vector3(0.785398, 0, 0)] -} - -[sub_resource type="AnimationLibrary" id="AnimationLibrary_sifmb"] -_data = { -&"RESET": SubResource("Animation_ilpvp"), -&"look_up": SubResource("Animation_ubmds") -} - [sub_resource type="Animation" id="Animation_3ojaj"] resource_name = "IconAnimation" length = 2.5 @@ -1407,120 +1372,108 @@ tracks/1/keys = { tracks/2/type = "value" tracks/2/imported = false tracks/2/enabled = true -tracks/2/path = NodePath("../Camera/Camera3D:position") +tracks/2/path = NodePath("../Camera/Camera3D/MeshInstance3D:mesh:material:shader") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), -"update": 0, -"values": [Vector3(0.003, 1.2, -0.01)] +"update": 1, +"values": [null] } tracks/3/type = "value" tracks/3/imported = false tracks/3/enabled = true -tracks/3/path = NodePath("../Camera/Camera3D/MeshInstance3D:mesh:material:shader") +tracks/3/path = NodePath("../Camera/Camera3D/MeshInstance3D:mesh:material:shader_parameter/colorCount") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), -"update": 1, -"values": [null] +"update": 0, +"values": [Vector3(32, 32, 32)] } tracks/4/type = "value" tracks/4/imported = false tracks/4/enabled = true -tracks/4/path = NodePath("../Camera/Camera3D/MeshInstance3D:mesh:material:shader_parameter/colorCount") +tracks/4/path = NodePath("../Camera/Camera3D/MeshInstance3D:mesh:material:shader_parameter/includeAlpha") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), -"update": 0, -"values": [Vector3(32, 32, 32)] +"update": 1, +"values": [true] } tracks/5/type = "value" tracks/5/imported = false tracks/5/enabled = true -tracks/5/path = NodePath("../Camera/Camera3D/MeshInstance3D:mesh:material:shader_parameter/includeAlpha") +tracks/5/path = NodePath("../Camera/Camera3D/MeshInstance3D:mesh:material:shader_parameter/colorShift") tracks/5/interp = 1 tracks/5/loop_wrap = true tracks/5/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), -"update": 1, -"values": [true] +"update": 0, +"values": [Vector3(1, 1, 1)] } tracks/6/type = "value" tracks/6/imported = false tracks/6/enabled = true -tracks/6/path = NodePath("../Camera/Camera3D/MeshInstance3D:mesh:material:shader_parameter/colorShift") +tracks/6/path = NodePath("SubViewportContainer/SubViewport/Prosc Message:texture") tracks/6/interp = 1 tracks/6/loop_wrap = true tracks/6/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), -"update": 0, -"values": [Vector3(1, 1, 1)] +"update": 1, +"values": [null] } tracks/7/type = "value" tracks/7/imported = false tracks/7/enabled = true -tracks/7/path = NodePath("SubViewportContainer/SubViewport/Prosc Message:texture") +tracks/7/path = NodePath("SubViewportContainer/SubViewport/Prosc Message:modulate") tracks/7/interp = 1 tracks/7/loop_wrap = true tracks/7/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), -"update": 1, -"values": [null] +"update": 0, +"values": [Color(1, 1, 1, 1)] } tracks/8/type = "value" tracks/8/imported = false tracks/8/enabled = true -tracks/8/path = NodePath("SubViewportContainer/SubViewport/Prosc Message:modulate") +tracks/8/path = NodePath("SubViewportContainer/SubViewport/Divinity Recall:sprite_frames") tracks/8/interp = 1 tracks/8/loop_wrap = true tracks/8/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), -"update": 0, -"values": [Color(1, 1, 1, 1)] +"update": 1, +"values": [SubResource("SpriteFrames_xtuex")] } tracks/9/type = "value" tracks/9/imported = false tracks/9/enabled = true -tracks/9/path = NodePath("SubViewportContainer/SubViewport/Divinity Recall:sprite_frames") +tracks/9/path = NodePath("SubViewportContainer/SubViewport/Divinity Recall:modulate") tracks/9/interp = 1 tracks/9/loop_wrap = true tracks/9/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), -"update": 1, -"values": [SubResource("SpriteFrames_xtuex")] +"update": 0, +"values": [Color(1, 1, 1, 1)] } tracks/10/type = "value" tracks/10/imported = false tracks/10/enabled = true -tracks/10/path = NodePath("SubViewportContainer/SubViewport/Divinity Recall:modulate") +tracks/10/path = NodePath("SubViewportContainer/SubViewport/Geomantic Reactor Air:sprite_frames") tracks/10/interp = 1 tracks/10/loop_wrap = true tracks/10/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), -"update": 0, -"values": [Color(1, 1, 1, 1)] -} -tracks/11/type = "value" -tracks/11/imported = false -tracks/11/enabled = true -tracks/11/path = NodePath("SubViewportContainer/SubViewport/Geomantic Reactor Air:sprite_frames") -tracks/11/interp = 1 -tracks/11/loop_wrap = true -tracks/11/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), "update": 1, "values": [SubResource("SpriteFrames_xbcdg")] } @@ -1538,7 +1491,7 @@ tracks/0/keys = { "times": PackedFloat32Array(0, 2), "transitions": PackedFloat32Array(1, 1), "update": 0, -"values": [Vector3(0.003, 1.2, -0.01), Vector3(0.003, 0, -1)] +"values": [Vector3(0.003, 2.1, -0.01), Vector3(0.003, 0, -1)] } tracks/1/type = "value" tracks/1/imported = false @@ -12353,7 +12306,7 @@ script = ExtResource("1_xcol5") [node name="MainCollision" type="CollisionShape3D" parent="."] unique_name_in_owner = true -transform = Transform3D(-0.0242399, 0.00507889, 0.999693, 0.000123113, 0.999987, -0.00507739, -0.999706, 0, -0.0242402, 0, 1.06447, 0.00162865) +transform = Transform3D(-0.0242399, 0.00507889, 0.999693, 0.000123113, 0.999987, -0.00507739, -0.999706, 0, -0.0242402, 0, 1.53331, 0.00162865) shape = SubResource("CapsuleShape3D_dw45s") [node name="HealthTimer" type="Timer" parent="."] @@ -12365,9 +12318,9 @@ wait_time = 3.0 [node name="Camera3D" parent="Camera" instance=ExtResource("2_jtmj1")] unique_name_in_owner = true -transform = Transform3D(1, 0, 0, 0, 0.999848, -0.0174524, 0, 0.0174524, 0.999848, 0.003, 1.2, -0.01) +transform = Transform3D(1, 0, 0, 0, 0.999848, -0.0174524, 0, 0.0174524, 0.999848, 0.003, 2.1, -0.01) current = true -fov = 50.0 +fov = 52.9 [node name="MeshInstance3D" type="MeshInstance3D" parent="Camera/Camera3D"] extra_cull_margin = 16384.0 @@ -12376,6 +12329,9 @@ mesh = SubResource("QuadMesh_ebyyx") [node name="player_model" type="Node3D" parent="Camera"] transform = Transform3D(-0.015, 0, -2.26494e-09, 0, 0.015, 0, 2.26494e-09, 0, -0.015, 0, -0.268445, -0.00941753) +[node name="tendomaya" parent="Camera/player_model" instance=ExtResource("3_74hqa")] +transform = Transform3D(1.355, 0, 2.84217e-14, 0, 1.355, 0, -2.84217e-14, 0, 1.355, 3.57499e-06, 0, -23.676) + [node name="Lights" type="Node3D" parent="Camera"] [node name="OmniLight3D" type="OmniLight3D" parent="Camera/Lights"] @@ -12389,12 +12345,6 @@ shadow_blur = 2.038 omni_range = 6.0 omni_attenuation = 0.017 -[node name="CameraAnimations" type="AnimationPlayer" parent="Camera"] -unique_name_in_owner = true -libraries = { -&"": SubResource("AnimationLibrary_sifmb") -} - [node name="Minimap" type="Node3D" parent="."] [node name="Minimap Sprite" type="Sprite3D" parent="Minimap"] @@ -12425,7 +12375,7 @@ collision_layer = 448 collision_mask = 388 [node name="CollisionShape3D" type="CollisionShape3D" parent="Collision/CollisionDetector"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0479561, 0.427706, -0.811867) +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0244394, 1.73597, -0.811867) shape = SubResource("BoxShape3D_hs4wf") [node name="WallCheck" type="RigidBody3D" parent="Collision"] @@ -12674,3 +12624,8 @@ 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)