Пример #1
0
        private void ChargeOneTool(ChargeTool tool, UnityAction onComplete)
        {
            var resources      = elementCtrl.GetElements <ChargeResource>();
            var chargeResource = resources.Find(x => tool.CanLoad(x.type) && x.Active);
            var value          = Mathf.Min(tool.capacity, chargeResource.current);
            var type           = chargeResource.type;

            tool.PickUpAble = false;
            tool.LoadData(chargeResource.transform.position, new ChargeData(type, value), () => {
                tool.PickUpAble = true;
            });
            chargeResource.Subtruct(value, () => { onComplete.Invoke(); });
        }