コード例 #1
0
ファイル: Factory.cs プロジェクト: dcturner/ECS_Factory
    public void ALERT_WorkshopPartUnavailable(VehiclePart_Config _part)
    {
        L3.Clear_all_requests();
        RAM.Clear_all_requests();
        HD.Clear_all_requests();

        L3.Change_state(StorageState.IDLE);
        RAM.Change_state(StorageState.IDLE);
        HD.Change_state(StorageState.IDLE);

        if (factoryMode == FactoryMode.OOP)
        {
            Workshop _purgeMe        = null;
            int      _leastUsedSpace = 999999;
            foreach (Workshop _WORKSHOP in workshops)
            {
                if (_WORKSHOP.usedSpace > 0 && _WORKSHOP.usedSpace < _leastUsedSpace)
                {
                    _purgeMe        = _WORKSHOP;
                    _leastUsedSpace = _WORKSHOP.usedSpace;
                    _WORKSHOP.Clear_all_requests_then_idle();
                }
            }

            if (_purgeMe != null)
            {
                Debug.Log("PART SHORTAGE: " + _part);
                _purgeMe.Purge_parts_to_shared_storage();
            }
        }
    }