// #nullable enable namespace GFramework.Game.Config.Generated; /// /// Auto-generated config type for schema file 'monster.schema.json'. /// Represents one monster entry generated from schema metadata. /// public sealed partial class MonsterConfig { /// /// Unique monster identifier. /// /// /// Schema property path: 'id'. /// public int Id { get; set; } /// /// Localized monster display name. /// /// /// Schema property path: 'name'. /// Display title: 'Monster Name'. /// Allowed values: Slime, Goblin. /// Generated default initializer: = "Slime"; /// public string Name { get; set; } = "Slime"; /// /// Gets or sets the value mapped from schema property path 'hp'. /// /// /// Schema property path: 'hp'. /// Generated default initializer: = 10; /// public int? Hp { get; set; } = 10; /// /// Referenced drop ids. /// /// /// Schema property path: 'dropItems'. /// Allowed values: potion, slime_gel. /// References config table: 'item'. /// Generated default initializer: = new string[] { "potion" }; /// public global::System.Collections.Generic.IReadOnlyList DropItems { get; set; } = new string[] { "potion" }; /// /// Reward payload. /// /// /// Schema property path: 'reward'. /// Generated default initializer: = new(); /// public RewardConfig Reward { get; set; } = new(); /// /// Encounter phases. /// /// /// Schema property path: 'phases'. /// Generated default initializer: = global::System.Array.Empty<PhasesItemConfig>(); /// public global::System.Collections.Generic.IReadOnlyList Phases { get; set; } = global::System.Array.Empty(); /// /// Auto-generated nested config type for schema property path 'reward'. /// Reward payload. /// public sealed partial class RewardConfig { /// /// Gets or sets the value mapped from schema property path 'reward.gold'. /// /// /// Schema property path: 'reward.gold'. /// Generated default initializer: = 10; /// public int Gold { get; set; } = 10; /// /// Gets or sets the value mapped from schema property path 'reward.currency'. /// /// /// Schema property path: 'reward.currency'. /// Allowed values: coin, gem. /// Generated default initializer: = string.Empty; /// public string Currency { get; set; } = string.Empty; } /// /// Auto-generated nested config type for schema property path 'phases[]'. /// This nested type is generated so object-valued schema fields remain strongly typed in consumer code. /// public sealed partial class PhasesItemConfig { /// /// Gets or sets the value mapped from schema property path 'phases[].wave'. /// /// /// Schema property path: 'phases[].wave'. /// public int Wave { get; set; } /// /// Monster reference id. /// /// /// Schema property path: 'phases[].monsterId'. /// Generated default initializer: = string.Empty; /// public string MonsterId { get; set; } = string.Empty; } }