Static catalog of shop items for bombs. Defines BombShopItem DTO with properties like Type, Name, Icon, Description, Cost and Hint, and a static readonly list BombCatalog.All containing predefined bomb entries.
// BombCatalog.cs
using System.Collections.Generic;
public class BombShopItem
{
public GridManager.BombType Type { get; set; }
public string Name { get; set; }
public string Icon { get; set; }
public string Description { get; set; }
public int Cost { get; set; }
public string Hint { get; set; } // blast pattern hint
}
public static class BombCatalog
{
public static readonly List<BombShopItem> All = new()
{
new BombShopItem {
Type = GridManager.BombType.Sniper,
Name = "Sniper",
Icon = "🏹",
Description = "Fires 3 tiles in one direction. Rotate with right-click before placing.",
Cost = 600,
Hint = "3 tiles in one direction"
},
new BombShopItem {
Type = GridManager.BombType.Diagonal,
Name = "Diagonal",
Icon = "⚡",
Description = "Blasts in an X shape — great for chests placed diagonally.",
Cost = 800,
Hint = "✕ shape, 2 tile range"
},
new BombShopItem {
Type = GridManager.BombType.Square,
Name = "Square",
Icon = "💣",
Description = "Destroys a full 3×3 area. Highest chest coverage per bomb.",
Cost = 1500,
Hint = "3×3 area"
},
new BombShopItem {
Type = GridManager.BombType.Chain,
Name = "Chain",
Icon = "🔗",
Description = "Triggers all nearby bombs instantly. Built for chain reactions.",
Cost = 3000,
Hint = "triggers nearby bombs"
},
};
}