Exemple #1
0
        private void SetDespawnTime(Item item, DroppedItem droppedItem)
        {
            if (!_config.Enabled || droppedItem == null)
            {
                return;
            }

            droppedItem.CancelInvoke(nameof(DroppedItem.IdleDestroy));
            droppedItem.Invoke(nameof(DroppedItem.IdleDestroy), GetItemRate(item, droppedItem));
        }
        private void SetDespawnTime(DroppedItem item)
        {
            if (!_config.Enabled || item == null)
            {
                return;
            }

            item.CancelInvoke(nameof(DroppedItem.IdleDestroy));
            item.Invoke(nameof(DroppedItem.IdleDestroy), item.GetDespawnDuration() * (item.GetBuildingPrivilege() == null ? _config.MultiplierNonCupboard : _config.MultiplierCupboard));
        }
        void SetDespawnTime(DroppedItem item)
        {
            if (item == null)
            {
                return;
            }

            if (item.IsDestroyed)
            {
                return;
            }

            item.Invoke(new Action(item.IdleDestroy), settings.Instance.GetDespawnTime(item.item));
        }
        void SetDespawnTime(DroppedItem item)
        {
            if (!enabled)
            {
                return;
            }
            if (item == null)
            {
                return;
            }

            var entityRadius = Physics.OverlapSphere(item.transform.position, 0.5f, LayerMask.GetMask("Trigger"));

            foreach (var cupboard in entityRadius)
            {
                if (cupboard.GetComponentInParent <BuildingPrivlidge>() != null)
                {
                    item.CancelInvoke("IdleDestroy");
                    item.Invoke("IdleDestroy", despawnMultiplier * item.GetDespawnDuration());
                }
            }
        }