Small adjustment to map loading stuff

This commit is contained in:
2025-09-30 18:20:55 -07:00
parent 6f582fcca1
commit abf34d7d9e
9 changed files with 21 additions and 20 deletions

View File

@@ -23,6 +23,9 @@ public partial class Map : Node3D, IMap
[Dependency]
public IPlayer Player => this.DependOn<IPlayer>();
[Node]
public Node MapOrder { get; set; } = default!;
#region Save
public ISaveChunk<MapInfo> MapChunk { get; set; } = default!;
@@ -35,9 +38,6 @@ public partial class Map : Node3D, IMap
public ISaveChunk<GameData> GameChunk => this.DependOn<ISaveChunk<GameData>>();
#endregion
[Export]
private Array<LayoutType> Floors { get; set; } = default!;
public IDungeonFloor CurrentFloor { get; private set; }
public AutoProp<int> CurrentFloorNumber { get; private set; } = new AutoProp<int>(0);
@@ -69,7 +69,7 @@ public partial class Map : Node3D, IMap
public async Task LoadFloor()
{
var floor = GetChildren().OfType<LayoutType>().ElementAt(CurrentFloorNumber.Value);
var floor = MapOrder.GetChildren().OfType<LayoutType>().ElementAt(CurrentFloorNumber.Value);
var sceneToLoad = LayoutToScenePathConverter.Convert(floor);
await LoadFloor(sceneToLoad);
if (CurrentFloor is DungeonFloor dungeonFloor && floor is DungeonFloorLayout dungeonFloorLayout)
@@ -108,7 +108,6 @@ public partial class Map : Node3D, IMap
private void ClearCurrentMap()
{
CurrentFloor?.CallDeferred(MethodName.QueueFree, []);
Floors.Remove(Floors.First());
}
private void SetupDungeonFloor()