Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- IEnumerator CheckNeightboorCoroutine()
- {
- yield return weaponOverSlot.inventorySlots.Count == weaponSo.slotAmountNeeded;
- if (slotIsStorage || !slotIsFull || !weaponOverSlot || !weaponOverSlot.weaponIsPlace) yield break;
- foreach (var neightboorSlot in neightboorsSlotsList)
- {
- if (weaponOverSlot.inventorySlots.Contains(neightboorSlot) || !neightboorSlot.weaponOverSlot)
- continue;
- if (neightboorSlot.weaponSo == weaponSo)
- continue;
- if (weaponSo.isAffectedByTag)
- {
- if (CanBeBuffedBy(weaponSo, neightboorSlot.weaponSo)) AddNeightboorToMyListAndBuffMe(neightboorSlot);
- if (CanBeBuffedBy(neightboorSlot.weaponSo, weaponSo)) AddMeToNeightboorListAndBuffThem(neightboorSlot);
- }
- if (weaponSo.affectOtherByTag && CanBuff(weaponSo, neightboorSlot.weaponSo))
- {
- AddMeToNeightboorListAndBuffThem(neightboorSlot);
- }
- }
- }
- private void AddNeightboorToMyListAndBuffMe(InventorySlot neightboorSlot)
- {
- if (!weaponOverSlot.neightboorsWichBuffMe.Contains(neightboorSlot.weaponOverSlot) && weaponOverSlot.TryGetComponent<IBuff>(out var buff))
- {
- weaponOverSlot.neightboorsWichBuffMe.Add(neightboorSlot.weaponOverSlot);
- neightboorSlot.weaponOverSlot.neightboorsBuffed.Add(weaponOverSlot);
- buff.AddBuff();
- }
- }
- private void AddMeToNeightboorListAndBuffThem(InventorySlot neightboorSlot)
- {
- if (!neightboorSlot.weaponOverSlot.neightboorsWichBuffMe.Contains(weaponOverSlot) && neightboorSlot.weaponOverSlot.TryGetComponent<IBuff>(out var buff))
- {
- neightboorSlot.weaponOverSlot.neightboorsWichBuffMe.Add(weaponOverSlot);
- weaponOverSlot.neightboorsBuffed.Add(neightboorSlot.weaponOverSlot);
- buff.AddBuff();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment