Defines a set of shop item definitions for charms in the ProgressManager partial class. It declares a NoCharm ShopItemDef, a NoCharmDescription function, and builds an array of various Charm ShopItemDef entries with ids, names, prices, icons and description delegates.
public static partial class ProgressManager
{
public static readonly ShopItemDef NoCharm = new ShopItemDef
{
Id = "",
Category = ShopItemCategory.Charm,
Name = "None",
Price = 0,
IconPath = "/textures/ui/stats/blank.png",
ItemDescription = NoCharmDescription
};
public static string NoCharmDescription() => $"No charm equipped.";
private static ShopItemDef[] BuildCharmItems()
{
return new ShopItemDef[]
{
new ShopItemDef
{
Id = CharmRandomPerk.ItemId,
Category = ShopItemCategory.Charm,
Name = "Random Charm",
Price = 2,
RequiredPurchases = 1,
IconPath = "/textures/ui/stats/perk_auto_choose.png",
ItemDescription = CharmRandomPerk.Description,
},
new ShopItemDef
{
Id = CharmDice.ItemId,
Category = ShopItemCategory.Charm,
Name = "Lucky Dice",
Price = 3,
RequiredPurchases = 0,
IconPath = "/textures/ui/stats/reroll.png",
ItemDescription = CharmDice.Description,
},
new ShopItemDef
{
Id = CharmDash.ItemId,
Category = ShopItemCategory.Charm,
Name = "Dash Charm",
Price = 4,
RequiredPurchases = 1,
IconPath = "/textures/ui/stats/dash.png",
ItemDescription = CharmDash.Description,
},
new ShopItemDef
{
Id = CharmHoming.ItemId,
Category = ShopItemCategory.Charm,
Name = "Homing Charm",
Price = 4,
RequiredPurchases = 1,
IconPath = "/textures/ui/stats/homing.png",
ItemDescription = CharmHoming.Description,
},
new ShopItemDef
{
Id = CharmLightning.ItemId,
Category = ShopItemCategory.Charm,
Name = "Lightning Rod",
Price = 30,
RequiredPurchases = 2,
IconPath = "/textures/icons/vector/shock.png",
ItemDescription = CharmLightning.Description,
},
new ShopItemDef
{
Id = CharmHealthpackExtraArmor.ItemId,
Category = ShopItemCategory.Charm,
Name = "Triage Pack",
Price = 20,
RequiredPurchases = 1,
IconPath = "/textures/ui/stats/armor.png",
ItemDescription = CharmHealthpackExtraArmor.Description,
},
new ShopItemDef
{
Id = CharmExtraLife.ItemId,
Category = ShopItemCategory.Charm,
Name = "Extra Life",
Price = 35,
RequiredPurchases = 2,
IconPath = "/textures/ui/stats/heal.png",
ItemDescription = CharmExtraLife.Description,
},
new ShopItemDef
{
Id = CharmRerollConsecutive.ItemId,
Category = ShopItemCategory.Charm,
Name = "Reroll Streak",
Price = 30,
RequiredPurchases = 7,
IconPath = "/textures/ui/stats/reroll.png",
ItemDescription = CharmRerollConsecutive.Description,
},
};
}
}