Files
zfxaction26_1/godot/scripts/hero/rules/HeroRuleConfig.cs
2026-04-21 22:54:14 +02:00

38 lines
1.3 KiB
C#

#nullable enable
using System.Collections.Generic;
namespace SideScrollerGame.Hero.Rules;
public sealed class HeroRuleConfig
{
public HeroRuleConfig(int primaryWeaponSlotCount, string basePrimaryWeaponId, string baseSecondaryWeaponId, string defaultSpecialWeaponId, int defaultSpecialAmmo, int maxSquadronMateCount, IReadOnlyList<int> pointThresholds)
{
PrimaryWeaponSlotCount = primaryWeaponSlotCount;
BasePrimaryWeaponId = basePrimaryWeaponId;
BaseSecondaryWeaponId = baseSecondaryWeaponId;
DefaultSpecialWeaponId = defaultSpecialWeaponId;
DefaultSpecialAmmo = defaultSpecialAmmo;
MaxSquadronMateCount = maxSquadronMateCount;
PointThresholds = pointThresholds;
}
public static HeroRuleConfig CreateDefault()
{
return new HeroRuleConfig(2, "weapon.primary.basic", "weapon.secondary.vertical", "weapon.special.bomb", 12, 4, [500, 1500, 3000]);
}
public int PrimaryWeaponSlotCount { get; }
public string BasePrimaryWeaponId { get; }
public string BaseSecondaryWeaponId { get; }
public string DefaultSpecialWeaponId { get; }
public int DefaultSpecialAmmo { get; }
public int MaxSquadronMateCount { get; }
public IReadOnlyList<int> PointThresholds { get; }
}