示例#1
0
        private void Refresh(PlayerActor player)
        {
            int       id        = player.CurrentDevicePoint.ID;
            AgentData agentData = Singleton <Game> .Instance.WorldData.AgentTable[id];

            MapUIContainer.SetVisibleHUD(false);
            AgentActor agentActor = Singleton <Manager.Map> .Instance.AddAgent(id, agentData);

            agentActor.DisableBehavior();
            Actor.BehaviorSchedule schedule = agentActor.Schedule;
            schedule.enabled              = false;
            agentActor.Schedule           = schedule;
            agentActor.TargetInSightActor = (Actor)null;
            agentActor.DeactivateNavMeshAgent();
            if (Object.op_Inequality((Object)agentActor.CurrentPoint, (Object)null))
            {
                agentActor.CurrentPoint.SetActiveMapItemObjs(true);
                agentActor.CurrentPoint.ReleaseSlot((Actor)agentActor);
                agentActor.CurrentPoint = (ActionPoint)null;
            }
            agentActor.TargetInSightActionPoint = (ActionPoint)null;
            player.ChaControl.visibleAll        = false;
            Transform pivotPoint = player.CurrentDevicePoint.PivotPoint;

            agentActor.Position = pivotPoint.get_position();
            agentActor.Rotation = pivotPoint.get_rotation();
            agentData.Position  = player.CurrentDevicePoint.RecoverPoints[0].get_position();
            agentData.Rotation  = player.CurrentDevicePoint.RecoverPoints[0].get_rotation();
            Animator animator = this._locator = player.CameraControl.EventCameraLocator;

            ((Component)animator).get_transform().set_position(pivotPoint.get_position());
            ((Component)animator).get_transform().set_rotation(pivotPoint.get_rotation());
            CommonDefine commonDefine = Singleton <Resources> .Instance.CommonDefine;
            RuntimeAnimatorController itemAnimator = Singleton <Resources> .Instance.Animation.GetItemAnimator(commonDefine.ItemAnims.AppearCameraAnimatorID);

            animator.set_runtimeAnimatorController(itemAnimator);
            ((Component)animator).get_transform().set_position(pivotPoint.get_position());
            ((Component)animator).get_transform().set_rotation(pivotPoint.get_rotation());
            animator.set_speed(0.0f);
            animator.Play(commonDefine.AppearCameraInStates[agentActor.ChaControl.fileParam.personality][0]);
            this._eventCamera = ((Component)player.CameraControl.EventCamera).get_transform();
            ((Component)this._eventCamera).get_transform().SetParent(player.CameraControl.EventCameraParent, false);
            ((Component)this._eventCamera).get_transform().set_localPosition(Vector3.get_zero());
            ((Component)this._eventCamera).get_transform().set_localRotation(Quaternion.Euler(0.0f, 180f, 0.0f));
            player.SetActiveOnEquipedItem(false);
            player.CameraControl.Mode = CameraMode.Event;
            Transform playerRecoverPoint = player.CurrentDevicePoint.PlayerRecoverPoint;

            if (Object.op_Inequality((Object)playerRecoverPoint, (Object)null))
            {
                player.NavMeshAgent.Warp(playerRecoverPoint.get_position());
                player.Rotation = playerRecoverPoint.get_rotation();
            }
            this._agent = agentActor;
            Resources.UnloadUnusedAssets();
            GC.Collect();
        }
示例#2
0
    public void InitMonsterInfo(MotionBase monster)
    {
        _Monster = monster;

        ResourceManager.Instance.SetImage(_MagicImg, CommonDefine.GetElementIcon(monster._MonsterRecord.ElementType));
        RefreshCD();

        _MaxHP = monster._MaxHP;
        RefreshHP((float)monster._HP);
    }
示例#3
0
    private void Refresh()
    {
        var mapRecord = StageMapRecord.ReadStageMap(_StageInfo.StageRecord.ScenePath);

        for (int i = 0; i < _StarImgs.Count; ++i)
        {
            if (_StageInfo.IsStarOn(i))
            {
                _StarImgs[i].gameObject.SetActive(true);
            }
            else
            {
                _StarImgs[i].gameObject.SetActive(false);
            }

            _StarTexts[i].text = StarInfoBase.GetStarConditionStr(mapRecord._StarInfos[i]);
        }

        Dictionary <ELEMENT_TYPE, int> monsterList = new Dictionary <ELEMENT_TYPE, int>();

        foreach (var wave in mapRecord._MapStageLogic._Waves)
        {
            foreach (var monsterID in wave.NPCs)
            {
                var monRecord = Tables.TableReader.MonsterBase.GetRecord(monsterID);
                if (!monsterList.ContainsKey(monRecord.ElementType))
                {
                    monsterList.Add(monRecord.ElementType, 0);
                }
                ++monsterList[monRecord.ElementType];
            }
        }

        int monImgIdx = 0;

        foreach (var monsterType in monsterList)
        {
            if (monImgIdx == _EnemyImgs.Count)
            {
                break;
            }

            _EnemyImgs[monImgIdx].transform.parent.gameObject.SetActive(true);
            ResourceManager.Instance.SetImage(_EnemyImgs[monImgIdx], CommonDefine.GetElementIcon(monsterType.Key));
            _EnemyTexts[monImgIdx].text = monsterType.Value.ToString();

            ++monImgIdx;
        }

        for (int i = monImgIdx; i < _EnemyImgs.Count; ++i)
        {
            _EnemyImgs[i].transform.parent.gameObject.SetActive(false);
        }
    }
示例#4
0
        protected override void InitializeCommandLabels()
        {
            if (!((IReadOnlyList <CommandLabel.CommandInfo>) this.getLabels).IsNullOrEmpty <CommandLabel.CommandInfo>())
            {
                return;
            }
            CommonDefine commonDefine = !Singleton <Resources> .IsInstance() ? (CommonDefine)null : Singleton <Resources> .Instance.CommonDefine;

            CommonDefine.CommonIconGroup commonIconGroup = !Object.op_Inequality((Object)commonDefine, (Object)null) ? (CommonDefine.CommonIconGroup)null : commonDefine.Icon;
            Resources instance      = Singleton <Resources> .Instance;
            int       guideCancelId = commonIconGroup.GuideCancelID;
            Sprite    sprite;

            instance.itemIconTables.InputIconTable.TryGetValue(guideCancelId, out sprite);
            List <string> source;

            instance.Map.EventPointCommandLabelTextTable.TryGetValue(0, out source);
            int index = !Singleton <GameSystem> .IsInstance() ? 0 : Singleton <GameSystem> .Instance.languageInt;

            this.getLabels = new CommandLabel.CommandInfo[1]
            {
                new CommandLabel.CommandInfo()
                {
                    Text             = source.GetElement <string>(index),
                    Transform        = this.LabelPoint,
                    IsHold           = false,
                    Icon             = sprite,
                    TargetSpriteInfo = commonIconGroup?.CharaSpriteInfo,
                    Event            = (System.Action)(() =>
                    {
                        PlayerActor playerActor           = !Singleton <Manager.Map> .IsInstance() ? (PlayerActor)null : Singleton <Manager.Map> .Instance.Player;
                        PlayerController playerController = !Object.op_Inequality((Object)playerActor, (Object)null) ? (PlayerController)null : playerActor.PlayerController;
                        EventPoint.SetCurrentPlayerStateName();
                        if (Object.op_Inequality((Object)playerController, (Object)null))
                        {
                            playerController.ChangeState("Idle");
                        }
                        RequestUI requestUi = MapUIContainer.RequestUI;
                        requestUi.SubmitEvent     = (System.Action)(() => this.GetMecha());
                        requestUi.SubmitCondition = (Func <bool>)(() => this.CanGet());
                        requestUi.ClosedEvent     = (System.Action)(() => EventPoint.ChangePrevPlayerMode());
                        requestUi.Open(Popup.Request.Type.Cuby);
                        if (!requestUi.IsImpossible)
                        {
                            return;
                        }
                        MapUIContainer.PushWarningMessage(Popup.Warning.Type.InsufficientBattery);
                    })
                }
            };
        }
示例#5
0
    public static void WriteMapRecord(string stageID)
    {
        string path = Application.persistentDataPath + "/maprecord/" + stageID;

        for (int i = 0; i < _MapRecord.Count; ++i)
        {
            string recordPath = path + "_" + i + ".txt";
            CommonDefine.CheckTargetPath(recordPath);
            System.IO.StreamWriter write = new System.IO.StreamWriter(recordPath);
            foreach (var line in _MapRecord[i])
            {
                write.WriteLine(line);
            }
            write.Close();
        }
    }
示例#6
0
 public void OnRecvChat(string strRoleName, string strBeastName, string nickName, bool isRandom, ECampType eCampType)
 {
     if (base.Prepared)
     {
         string forwardStr = isRandom ? "随机" : "";
         string colorStr   = CommonDefine.CampTypeToChatColor(eCampType == Singleton <PlayerRole> .singleton.CampType);
         //if (eCampType == Singleton<PlayerRole>.singleton.CampType)
         //{
         base.uiBehaviour.m_TextList_Chat.Add(string.Format("{0}{1}[-]{2}[FDFDFD]选择了[00ffff]{3}[-]", new object[]
         {
             colorStr,
             strRoleName,
             forwardStr,
             strBeastName
         }));
         //}
     }
 }
示例#7
0
    public void ShowCostCurrency(string itemDataID, int costValue, int ownCnt = -1)
    {
        int Ownvalue = ownCnt;

        if (Ownvalue < 0)
        {
        }
        ShowCurrency(itemDataID, Ownvalue);

        string currencyStr = "";

        if (costValue > Ownvalue)
        {
            currencyStr = CommonDefine.GetEnableRedStr(0) + Ownvalue.ToString() + "</color>/" + costValue.ToString();
        }
        else
        {
            currencyStr = CommonDefine.GetEnableRedStr(1) + Ownvalue.ToString() + "</color>/" + costValue.ToString();
        }
        _CurrencyValue.text = currencyStr;
    }
示例#8
0
    public void SetAwardInfo(string awardID, int value)
    {
        var itemRecord = TableReader.CommonItem.GetRecord(awardID);

        if (_AwardQuality != null)
        {
            ResourceManager.Instance.SetImage(_AwardQuality, CommonDefine.GetQualityIcon(itemRecord.Quality));
        }
        if (_AwardIcon != null)
        {
            ResourceManager.Instance.SetImage(_AwardIcon, itemRecord.Icon);
        }
        if (_AwardName != null)
        {
            _AwardName.text = StrDictionary.GetFormatStr(itemRecord.NameStrDict);
        }
        if (_AwardValue != null)
        {
            _AwardValue.text = value.ToString();
        }
    }
示例#9
0
        protected override void InitializeCommandLabels()
        {
            if (!((IReadOnlyList <CommandLabel.CommandInfo>) this.getLabels).IsNullOrEmpty <CommandLabel.CommandInfo>())
            {
                return;
            }
            CommonDefine commonDefine = !Singleton <Resources> .IsInstance() ? (CommonDefine)null : Singleton <Resources> .Instance.CommonDefine;

            CommonDefine.CommonIconGroup commonIconGroup = !Object.op_Inequality((Object)commonDefine, (Object)null) ? (CommonDefine.CommonIconGroup)null : commonDefine.Icon;
            this.getLabels = new CommandLabel.CommandInfo[1]
            {
                new CommandLabel.CommandInfo()
                {
                    Text             = "捕まえる",
                    Transform        = ((Component)this).get_transform(),
                    IsHold           = false,
                    Icon             = (Sprite)null,
                    TargetSpriteInfo = commonIconGroup?.CharaSpriteInfo,
                    Event            = (Action)(() =>
                    {
                        StuffItemInfo itemInfo = this.ItemInfo;
                        if (itemInfo != null)
                        {
                            StuffItem stuffItem = new StuffItem(itemInfo.CategoryID, itemInfo.ID, 1);
                            Singleton <Manager.Map> .Instance.Player.PlayerData.ItemList.AddItem(stuffItem);
                            MapUIContainer.AddSystemItemLog(itemInfo, stuffItem.Count, true);
                        }
                        else
                        {
                            MapUIContainer.AddNotify(MapUIContainer.ItemGetEmptyText);
                        }
                        this.Destroy();
                    })
                }
            };
        }
示例#10
0
 public virtual string GetNameWithColor()
 {
     return(CommonDefine.GetQualityColorStr(CommonItemRecord.Quality) + GetName() + "</color>");
 }
示例#11
0
        protected override void OnAwake(PlayerActor player)
        {
            this._player   = player;
            this._agent    = Singleton <Manager.Map> .Instance.TutorialAgent;
            this._isFinish = false;
            if (Object.op_Equality((Object)this._player, (Object)null) || Object.op_Equality((Object)this._agent, (Object)null))
            {
                Debug.LogError((object)"OpeningWakeUp: プレイヤー キャラが空っぽなのはおかしい");
            }
            else
            {
                AgentProfile agentProfile = Singleton <Resources> .Instance.AgentProfile;
                CommonDefine commonDefine = Singleton <Resources> .Instance.CommonDefine;
                Resources.AnimationTables    animation = Singleton <Resources> .Instance.Animation;
                CommonDefine.TutorialSetting setting   = commonDefine.Tutorial;
                player.ChaControl.visibleAll = false;
                this._agent.ChangeTutorialBehavior(AIProject.Definitions.Tutorial.ActionType.Idle);
                player.EventKey = (AIProject.EventType) 0;
                this._fadeEnd   = false;
                int        personality = this._agent.ChaControl.fileParam.personality;
                ChaControl chaControl1 = this._agent.ChaControl;
                chaControl1.ChangeLookEyesPtn(0);
                chaControl1.ChangeLookNeckPtn(3, 1f);
                PoseKeyPair pose;
                PlayState   playState;
                this.TryGetWakeUpAnimState(personality, out pose, out playState);
                MapUIContainer.SetVisibleHUD(false);
                MapUIContainer.SetCommandLabelAcception(CommandLabel.AcceptionState.None);
                Singleton <Manager.Input> .Instance.ReserveState(Manager.Input.ValidType.UI);

                Singleton <Manager.Input> .Instance.SetupState();

                // ISSUE: cast to a reference type
                // ISSUE: explicit reference operation
                this._prevStyle = (CinemachineBlendDefinition.Style)(^ (CinemachineBlendDefinition&)ref player.CameraControl.CinemachineBrain.m_DefaultBlend).m_Style;
                // ISSUE: cast to a reference type
                // ISSUE: explicit reference operation
                (^ (CinemachineBlendDefinition&)ref player.CameraControl.CinemachineBrain.m_DefaultBlend).m_Style = (__Null)0;
                this._eventCamera = player.CameraControl.EventCamera;
                ((Component)this._eventCamera).get_transform().SetParent(player.CameraControl.EventCameraParent, false);
                ((Component)this._eventCamera).get_transform().set_localPosition(Vector3.get_zero());
                ((Component)this._eventCamera).get_transform().set_localRotation(Quaternion.Euler(0.0f, 180f, 0.0f));
                Animator eventCameraLocator            = player.CameraControl.EventCameraLocator;
                RuntimeAnimatorController itemAnimator = animation.GetItemAnimator(commonDefine.ItemAnims.OpeningWakeUpCameraAnimatorID);
                eventCameraLocator.set_runtimeAnimatorController(itemAnimator);
                ((Component)eventCameraLocator).get_transform().set_position(this._agent.Position);
                ((Component)eventCameraLocator).get_transform().set_rotation(this._agent.Rotation);
                eventCameraLocator.set_speed(0.0f);
                float  shapeBodyValue      = this._agent.ChaControl.GetShapeBodyValue(0);
                string heightParameterName = Singleton <Resources> .Instance.DefinePack.AnimatorParameter.HeightParameterName;
                eventCameraLocator.SetFloat(heightParameterName, shapeBodyValue);
                player.CameraControl.Mode = CameraMode.Event;
                this._agent.Animation.LoadEventKeyTable(pose.postureID, pose.poseID);
                this._agent.Animation.InitializeStates(playState);
                this._agent.LoadEventItems(playState);
                this._agent.Animation.StopAllAnimCoroutine();
                this._agent.Animation.PlayInAnimation(playState.MainStateInfo.InStateInfo.EnableFade, playState.MainStateInfo.InStateInfo.FadeSecond, playState.MainStateInfo.FadeOutTime, playState.Layer);
                this.PlayCameraAnimation(eventCameraLocator, personality);
                Transform  transform   = ((Component)player.CameraControl.CameraComponent).get_transform();
                ChaControl chaControl2 = this._agent.ChaControl;
                chaControl2.ChangeLookEyesTarget(1, transform, 0.5f, 0.0f, 1f, 2f);
                chaControl2.ChangeLookEyesPtn(1);
                this._fadeTimerDisposable = ObservableExtensions.Subscribe <long>(Observable.TakeUntilDestroy <long>((IObservable <M0>)Observable.Timer(TimeSpan.FromSeconds((double)setting.OpeningWakeUpStartFadeTime)), (Component)player), (System.Action <M0>)(_ =>
                {
                    if (Singleton <Sound> .IsInstance())
                    {
                        Singleton <Sound> .Instance.StopBGM(setting.OpeningWakeUpFadeTime);
                    }
                    this._fadeTimerDisposable = ObservableExtensions.Subscribe <Unit>((IObservable <M0>)MapUIContainer.StartFade(FadeCanvas.PanelType.Blackout, (global::FadeType)1, setting.OpeningWakeUpFadeTime, false), (System.Action <M0>)(__ => {}), (System.Action)(() => this._fadeEnd = true));
                }));
                ObservableExtensions.Subscribe <Unit>(Observable.Take <Unit>((IObservable <M0>) this._onEndAction, 1), (System.Action <M0>)(_ =>
                {
                    this._isFinish = true;
                    this.Elapsed(player);
                }));
            }
        }
示例#12
0
        protected override void InitializeCommandLabels()
        {
            if (!((IReadOnlyList <CommandLabel.CommandInfo>) this.getLabels).IsNullOrEmpty <CommandLabel.CommandInfo>())
            {
                return;
            }
            CommonDefine commonDefine = !Singleton <Resources> .IsInstance() ? (CommonDefine)null : Singleton <Resources> .Instance.CommonDefine;

            CommonDefine.CommonIconGroup commonIconGroup = !Object.op_Inequality((Object)commonDefine, (Object)null) ? (CommonDefine.CommonIconGroup)null : commonDefine.Icon;
            Resources instance      = Singleton <Resources> .Instance;
            int       guideCancelId = commonIconGroup.GuideCancelID;
            Sprite    sprite;

            instance.itemIconTables.InputIconTable.TryGetValue(guideCancelId, out sprite);
            List <string> source;

            instance.Map.EventPointCommandLabelTextTable.TryGetValue(18, out source);
            int index = !Singleton <GameSystem> .IsInstance() ? 0 : Singleton <GameSystem> .Instance.languageInt;

            this.getLabels = new CommandLabel.CommandInfo[1]
            {
                new CommandLabel.CommandInfo()
                {
                    Text             = source.GetElement <string>(index),
                    Transform        = this.LabelPoint,
                    IsHold           = false,
                    Icon             = sprite,
                    TargetSpriteInfo = commonIconGroup?.CharaSpriteInfo,
                    Event            = (System.Action)(() =>
                    {
                        bool flag1 = true;
                        if (Object.op_Inequality((Object)this.habitatPoint, (Object)null) && Singleton <Resources> .IsInstance() && Singleton <Manager.Map> .IsInstance())
                        {
                            PlayerActor player = Singleton <Manager.Map> .Instance.Player;
                            Dictionary <int, ItemTableElement> tableInFrogPoint = Singleton <Resources> .Instance.GameInfo.GetItemTableInFrogPoint(this.habitatPoint.ItemID);
                            Actor.SearchInfo searchInfo = player.RandomAddItem(tableInFrogPoint, true);
                            if (searchInfo.IsSuccess)
                            {
                                bool flag2 = false;
                                foreach (Actor.ItemSearchInfo itemSearchInfo in searchInfo.ItemList)
                                {
                                    PlayerData playerData     = player.PlayerData;
                                    List <StuffItem> itemList = playerData.ItemList;
                                    StuffItem stuffItem       = new StuffItem(itemSearchInfo.categoryID, itemSearchInfo.id, itemSearchInfo.count);
                                    int possible;
                                    if (StuffItemExtensions.CanAddItem((IReadOnlyCollection <StuffItem>)itemList, playerData.InventorySlotMax, stuffItem, out possible) && 0 < possible)
                                    {
                                        int count = Mathf.Min(possible, itemSearchInfo.count);
                                        itemList.AddItem(stuffItem, count, playerData.InventorySlotMax);
                                        MapUIContainer.AddSystemItemLog(Singleton <Resources> .Instance.GameInfo.GetItem(itemSearchInfo.categoryID, itemSearchInfo.id), count, true);
                                        flag2 = true;
                                    }
                                }
                                if (!flag2)
                                {
                                    flag1 = false;
                                    MapUIContainer.PushWarningMessage(Popup.Warning.Type.PouchIsFull);
                                }
                            }
                            else
                            {
                                MapUIContainer.AddNotify(MapUIContainer.ItemGetEmptyText);
                            }
                        }
                        if (!flag1)
                        {
                            return;
                        }
                        this.Destroy();
                    })
                }
            };
        }
        /// <summary>
        /// 工程結束請求,“工程狀態界面”進行調用,並返回工程數據資料殘缺類型,如果數據資料完整時調用“工程結束界面”,否則調用相關的模塊進行資料補充。
        /// </summary>
        /// <param name="projectFinishType">工程結束類型--“結束”或“抽起”</param>
        /// <returns></returns>
        public override ReturnValueInfo ProjectFinishRequest(CommonDefine.ProjectFinishType projectFinishType)
        {
            CommonDefine.ProjectDataType projectDataType = CommonDefine.ProjectDataType.DataFull;
            ReturnValueInfo result = new ReturnValueInfo();

            try
            {
                projectDataType = this.ShiftProductionDataManager.CheckProjectProductionDataFull(this.MachineBaseInfo.DepartmentCode, CustEnum.ProjectStatus.STOP, this.MachineShiftInfo, this.ProductionData);
            }
            catch (Exception ex)
            {
                throw ex;
            }

            if (projectDataType == CommonDefine.ProjectDataType.MachineHaltRecord || projectDataType == CommonDefine.ProjectDataType.ProjectQC || projectDataType == CommonDefine.ProjectDataType.ShiftStaff || projectDataType == CommonDefine.ProjectDataType.DataFull)
            {
                if (projectDataType == CommonDefine.ProjectDataType.DataFull)
                {
                    base.OnProjectFinishTypeEvent(projectFinishType);
                }

                this.OnDataIncompleteInform(projectDataType);
                result.boolValue = true;
            }

            if (projectDataType == CommonDefine.ProjectDataType.ProjectAdditionalInformation)
            {
                result.messageText = CommonDefine.SystemMessageText.MessageText_W_ProjectAdditionalImperfect;
                result.boolValue = false;
            }

            if (projectDataType == CommonDefine.ProjectDataType.ProjectGrade)
            {
                result.messageText = CommonDefine.SystemMessageText.MessageText_W_ProjectGradeImperfect;
                result.boolValue = false;
            }

            return result;
        }
        /// <summary>
        /// 工程結束通知,“工程結束界面”進行調用
        /// </summary>
        /// <param name="projectFinishType">工程結束類型--“結束”或“抽起”</param>
        public override void ProjectFinishInform(CommonDefine.ProjectFinishType projectFinishType, List<BaseModel> extractionReasonList, string remark)
        {
            CommonDefine.ProjectDataType projectDataType = CommonDefine.ProjectDataType.DataFull;

            try
            {
                projectDataType = this.ShiftProductionDataManager.CheckProjectProductionDataFull(this.MachineBaseInfo.DepartmentCode, CustEnum.ProjectStatus.STOP, this.MachineShiftInfo, this.ProductionData);
            }
            catch (Exception ex)
            {
                throw ex;
            }

            if (projectDataType == CommonDefine.ProjectDataType.DataFull)
            {
                if (this.ProductionData.ExtractionReason == null)
                {
                    return;
                }

                this.ProductionData.ExtractionReason.psr_cRemark = remark;

                if (projectFinishType == CommonDefine.ProjectFinishType.Extraction)
                {
                    if (extractionReasonList != null && extractionReasonList.Count > 0)
                    {
                        if (this.ProductionData.ExtractionReason.ExtractionReasonIems == null)
                        {
                            this.ProductionData.ExtractionReason.ExtractionReasonIems = new List<ProjectExtractionReasonIem>();
                        }

                        for (int i = 0; i < extractionReasonList.Count; i++)
                        {
                            ProjectExtractionReasonIem er = new ProjectExtractionReasonIem();
                            er.psr_cStopCode = extractionReasonList[i].Code;
                            er.RecordID = Guid.NewGuid();
                            er.AddDate = DateTime.Now;
                            er.LastDate = DateTime.Now;

                            this.ProductionData.ExtractionReason.ExtractionReasonIems.Add(er);
                        }
                    }

                    this.OnProjectCompleteSingnal(CustEnum.ProjectStatus.STOP);
                }
                else if (projectFinishType == CommonDefine.ProjectFinishType.Complete)
                {
                    this.OnProjectCompleteSingnal(CustEnum.ProjectStatus.FINISH);
                }
            }
            else
            {
                this.OnDataIncompleteInform(projectDataType);
            }
        }