public virtual void SetKit(WeaponKitData data, KitSlot slot)
        {
            for (int i = 0; i < WeaponKit.Count; i++)
            {
                if (kit[i] != null)
                {
                    Drop(WeaponKit.IndexToSlot(i));
                }
            }

            for (int i = 0; i < WeaponKit.Count; i++)
            {
                kit[i] = SpawnWeapon(data.Kit[i]);

                kit[i].Init(This);

                if (i == WeaponKit.SlotToIndex(slot))
                {
                    EquipInternal(slot);
                }
                else
                {
                    kit[i].UnEquip.Apply();
                }
            }
        }
        public virtual void Update()
        {
            int count = WeaponKit.Count;

            if (count > MaxCount)
            {
                count = MaxCount;
            }

            KitSlot slot;

            for (int i = 0; i < count; i++)
            {
                if (Input.GetKeyDown(Keys[i]))
                {
                    slot = WeaponKit.IndexToSlot(i);

                    Controller.Equip(slot);
                }
            }
        }