to rename

This commit is contained in:
2026-03-28 11:32:28 -04:00
parent 04d182e93f
commit 640e147ea8
25 changed files with 367 additions and 224 deletions

View File

@@ -0,0 +1,48 @@
using Microsoft.Extensions.Options;
using SpaceGame.Api.Universe.Scenario;
using SpaceGame.Api.Universe.Simulation;
namespace SpaceGame.Api.Universe.Bootstrap;
public sealed class WorldBootstrapper
{
private readonly BalanceOptions _defaultBalance;
private readonly WorldGenerationOptions _defaultWorldGeneration;
private readonly StaticDataCatalog _staticData;
private readonly ScenarioLoader _scenarioLoader;
private readonly SystemTemplateLoader _systemTemplateLoader;
private readonly WorldBuilder _worldBuilder;
public WorldBootstrapper(
StaticDataCatalog staticData,
ScenarioLoader scenarioLoader,
SystemTemplateLoader systemTemplateLoader,
WorldBuilder worldBuilder,
IOptions<BalanceOptions> defaultBalanceOptions,
IOptions<WorldGenerationOptions> defaultWorldGenerationOptions)
{
_defaultBalance = defaultBalanceOptions.Value;
_defaultWorldGeneration = defaultWorldGenerationOptions.Value;
_staticData = staticData;
_scenarioLoader = scenarioLoader;
_systemTemplateLoader = systemTemplateLoader;
_worldBuilder = worldBuilder;
}
public SimulationWorld Bootstrap()
{
var scenario = _scenarioLoader.Load();
var gameStartOptions = scenario?.GameStartOptions ?? new GameStartOptionsDefinition
{
Seed = 1,
WorldGeneration = _defaultWorldGeneration,
};
return _worldBuilder.Build(
_staticData,
_defaultBalance,
_systemTemplateLoader.Load(),
gameStartOptions,
scenario);
}
}