Learn English – Two things which can go together

single-word-requests

I am looking for a word, or words, which would appropriately convey that two items can go together. As an example, a Sword and Shield. I am using this for a game that I am making, and I have items which can go in the off-hand slot of the inventory. So, as an example, if you have a one-handed sword, axe, or mace equipped in the main hand, you can equip a shield in the off-hand slot, because these things are, as I'm currently calling it, unifiable. Other such examples are a Bow and Quiver. However, with a Bow equipped, you cannot equip a shield, because a Bow is not unifiable with a shield. Another example is a Staff or Wand, which are both unifiable with a Tome. Again though, a Tome cannot be equipped with a Sword, Mace, or Axe, etc.

Sentence example:

"You can equip a Shield with a Sword, because they're _____."
"You cannot equip a Tome with a Bow, because they're not ____."

It may be unnecessary to post this, but here is the coding example of this concept written out. I just want a better naming mechanism for the function:

        public static bool IsUnifiableWith(this ItemType itemType, ItemType other)
        {
            switch (itemType)
            {
                case ItemType.Bow:
                    return other == ItemType.Quiver;
                case ItemType.Dagger:
                    return other == ItemType.Dagger;
                case ItemType.Fist:
                    return other == ItemType.Fist;
                case ItemType.Instrument:
                    return other == ItemType.Score;
                case ItemType.OneHandedAxe:
                case ItemType.OneHandedMace:
                case ItemType.OneHandedSword:
                    return
                        other == ItemType.Shield ||
                        other == ItemType.OneHandedSword ||
                        other == ItemType.OneHandedAxe ||
                        other == ItemType.OneHandedMace;
                case ItemType.Scythe:
                    return other == ItemType.Phylactery;
                case ItemType.Staff:
                case ItemType.Wand:
                    return other == ItemType.Tome;
                case ItemType.Phylactery:
                    return other == ItemType.Scythe;
                case ItemType.Quiver:
                    return other == ItemType.Bow;
                case ItemType.Score:
                    return other == ItemType.Instrument;
                case ItemType.Shield:
                    return
                        other == ItemType.OneHandedAxe ||
                        other == ItemType.OneHandedMace ||
                        other == ItemType.OneHandedSword;
                case ItemType.Tome:
                    return other == ItemType.Staff || other == ItemType.Wand;
                default:
                    return false;
            }
        }

What other words could convey a matching of items, as I have mentioned?

Best Answer

Those things are said to be compatible (or not):

(of two things) able to exist or occur together without problems or conflict.

(source: Oxford Dictionaries)

These things can be abstract definitions or concrete items. It's widely used when talking about electronics or computer software, but it works just as well as for 'primitive' technology.