예제 #1
0
        public static List <ChaFileAccessory.PartsInfo> ListPartsInfo(ChaControl _chaCtrl, int _coordinateIndex)
        {
            List <ChaFileAccessory.PartsInfo> _partInfo = _chaCtrl.chaFile.coordinate[_coordinateIndex].accessory.parts.ToList();

            if (MoreAccessories.Installed)
            {
                _partInfo.AddRange(MoreAccessories.ListMorePartsInfo(_chaCtrl, _coordinateIndex) ?? new List <ChaFileAccessory.PartsInfo>());
            }
            return(_partInfo);
        }
예제 #2
0
        public static void SetPartsInfo(ChaControl _chaCtrl, int _coordinateIndex, int _slotIndex, ChaFileAccessory.PartsInfo _partInfo)
        {
            if (_slotIndex < 0)
            {
                return;
            }
            if (_slotIndex >= 20 && !MoreAccessories.Installed)
            {
                return;
            }

            if (_slotIndex < 20)
            {
                _chaCtrl.chaFile.coordinate[_coordinateIndex].accessory.parts[_slotIndex] = _partInfo;
            }
            else
            {
                MoreAccessories.CheckAndPadPartInfo(_chaCtrl, _coordinateIndex, _slotIndex - 20);
                MoreAccessories.ListMorePartsInfo(_chaCtrl, _coordinateIndex)[_slotIndex - 20] = _partInfo;
            }
        }
예제 #3
0
        public static ChaFileAccessory.PartsInfo GetPartsInfo(ChaControl _chaCtrl, int _coordinateIndex, int _slotIndex)
        {
            if (_slotIndex < 0)
            {
                return(null);
            }
            if (_slotIndex >= 20 && !MoreAccessories.Installed)
            {
                return(null);
            }

            if (_slotIndex < 20)
            {
                if (_chaCtrl.chaFile.coordinate.ElementAtOrDefault(_coordinateIndex) == null)
                {
                    return(null);
                }
                return(_chaCtrl.chaFile.coordinate[_coordinateIndex].accessory.parts.ElementAtOrDefault(_slotIndex));
            }
            return(MoreAccessories.ListMorePartsInfo(_chaCtrl, _coordinateIndex).ElementAtOrDefault(_slotIndex - 20));
        }