Game/Shop/BombCatalog.cs

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"
        },
    };
}