Add collisions to A2 corridors

Start implementation of fading ambient audio in/out on level load
This commit is contained in:
2026-02-05 14:17:45 -08:00
parent 147f04d2ff
commit 36b851254e
58 changed files with 1523 additions and 3666 deletions

View File

@@ -1,12 +1,11 @@
using Chickensoft.AutoInject;
using Chickensoft.Introspection;
using Godot;
using System.Collections.Immutable;
using Zennysoft.Ma.Adapter;
namespace Zennysoft.Game.Ma;
[Meta(typeof(IAutoNode))]
public partial class Overworld : Node3D, IDungeonFloor
public partial class Overworld : SpecialFloor, IDungeonFloor
{
public override void _Notification(int what) => this.Notify(what);
@@ -20,13 +19,9 @@ public partial class Overworld : Node3D, IDungeonFloor
[Node] private Area3D RestoreArea { get; set; } = default!;
public ImmutableList<IDungeonRoom> Rooms => [];
public bool FloorIsLoaded { get; set; }
private Timer RestoreTimer { get; set; }
public void InitializeDungeon()
public override void InitializeDungeon()
{
Show();
Exit.AreaEntered += Exit_AreaEntered;
@@ -73,6 +68,6 @@ public partial class Overworld : Node3D, IDungeonFloor
public void ExitReached() => Game.FloorExitReached();
public (Vector3 Rotation, Vector3 Position) GetPlayerSpawnPoint() { return (PlayerSpawnPoint.Rotation, new Vector3(PlayerSpawnPoint.GlobalPosition.X, 2.4f, PlayerSpawnPoint.GlobalPosition.Z)); }
public override (Vector3 Rotation, Vector3 Position) GetPlayerSpawnPoint() { return (PlayerSpawnPoint.Rotation, new Vector3(PlayerSpawnPoint.GlobalPosition.X, 2.4f, PlayerSpawnPoint.GlobalPosition.Z)); }
}