Namespace Serenity.Score.Infrastructure.Editor.Builder
Classes
CreateScoreSettingsWindow
Step-by-step window for creating (or updating) the project-wide UnityScoreSettings asset:
choose the output folder, the asset name and the Id, author the metric rows through the exact same table
the inspector shows (ScoreMetricsTableGui), and optionally wire the "InstallScore"
pipeline task. Mirrors CreateGameSaveSettingsWindow's shape (a single project-wide settings
asset, no multi-entity list): the window only collects input and renders results,
ScoreSettingsCreator does the actual validation and generation work.
"Edit existing" follows CreateHudWindow's ObjectField pattern rather than GameSave's silent
auto-update: picking (or being auto-handed, when exactly one already exists) an existing
UnityScoreSettings asset disables the folder/name fields and switches the metrics table to
editing that asset's rows directly — the same live undo/dirty flow the inspector itself uses, not a
scratch copy — because Score has no multi-tab editing surface that would make a partial in-place edit
unsafe to leave uncommitted.
ScoreSettingsCreator
Generates (or updates) the project-wide UnityScoreSettings asset from a single
description. Mirrors Serenity.GameSave.Infrastructure.Editor.Builder.GameSaveCreator: static
class, Input/Result DTOs, Validate/ValidateIdentity, Create with created-paths rollback on failure.
CreateScoreSettingsWindow only collects input and renders results; every asset mutation
lives here. No [MenuItem] anymore — the window owns the menu entry point.
ScoreSettingsCreator.Input
Everything needed to create or update the settings asset.
ScoreSettingsCreator.Result
Outcome of a Create(Input) call.