protected override void onExit(TBTWorkingData wData, int runningStatus) { GuideWorkingData gData = wData as GuideWorkingData; UGuideWidget widget0 = GuideManager.Instance.GetGuideWidget(gData.GuideCurrentNode, 0); if (widget0 != null) { widget0.Hide(); } UGuideWidget widget1 = GuideManager.Instance.GetGuideWidget(gData.GuideCurrentNode, 1); if (widget1 != null) { widget1.Hide(); } UISystem.Instance.SendTargetWndMessage(WndID.WND_ID_PLAYERBUTTONFRAME, WndMsgID.WND_MSG_PLAYERBUTTONFRAME_WARHALLBUTTON_REMOVEGUIDEWIDGET, new UGuideWidgetMsgData((int)gData.GuideCurrentNode, 0, m_nEffectID)); UISystem.Instance.SendTargetWndMessage(WndID.WND_ID_WAR_MAIN_FRAME, WndMsgID.WND_MSG_WAR_MAIN_GAMEMODEBTN_REMOVEGUIDEWIDGET, new UGuideWidgetMsgData((int)gData.GuideCurrentNode, 1, m_nEffectID, _oUserData: m_nGameModeID)); base.onExit(wData, runningStatus); }
protected override int onExecute(TBTWorkingData wData) { int runningState = TBTRunningStatus.USER_EXECUTING; if (EntityFactory.MainHeroView == null || !EntityFactory.MainHeroView.IsValid) { return(runningState); } GuideWorkingData gData = wData as GuideWorkingData; List <EntityView> AroundEntitiesList = MapFinderManager.Nearest(EntityFactory.MainHeroView.StateMachine.transform.position, m_nSearchNearRadius, m_eCampFlag).ToList(); if (AroundEntitiesList != null) { for (int i = AroundEntitiesList.Count - 1; i >= 0; i--) { if (AroundEntitiesList[i].Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_ID) != m_nPropertyID) { AroundEntitiesList.RemoveAt(i); } } //检测附近范围内有没有敌人 runningState = AroundEntitiesList.Count == 0 ? TBTRunningStatus.USER_EXECUTING : TBTRunningStatus.USER_FINISHED; } return(runningState); }
protected override void onEnter(TBTWorkingData wData) { GuideWorkingData gData = wData as GuideWorkingData; bool IsAutoGuideUIPlaying = gData.GuideDynamicBB.GetValue <bool>(EGuideBBKey.IsAutoGuideMessagePlaying, false); int AutoGuideMessageID = m_nAutoGuideMessageID == -1 ? gData.GuideDynamicBB.GetValue <int>(EGuideBBKey.AutoGuideMessageID, -1) : m_nAutoGuideMessageID; //if ((!IsAutoGuideUIPlaying && AutoGuideMessageID != -1 && AutoGuideMessageID != m_nCurrentID)) if ((AutoGuideMessageID != -1))//&& AutoGuideMessageID != m_nCurrentID)) { gData.GuideDynamicBB.SetValue(EGuideBBKey.IsAutoGuideMessagePlaying, true); m_nCurrentID = AutoGuideMessageID; SSchemeGuideNodeData guideNodeData = GuideManager.Instance.getNodeConfigData((EGuideNodeID)m_nCurrentID); int nDelayRemoveTime = guideNodeData.GuideIntParams[(int)EGuideNodeConfigParamID.GuideParamID_0]; if (guideNodeData.GuideIntParams.Count > (int)EGuideNodeConfigParamID.GuideParamID_1) { int nSoundID = guideNodeData.GuideIntParams[(int)EGuideNodeConfigParamID.GuideParamID_1]; SoundManager.CreateUISound(nSoundID); } string strMessage = guideNodeData.GuideStringParams[(int)EGuideNodeConfigParamID.GuideParamID_0]; UISystem.Instance.SendTargetWndMessage(WndID.WND_ID_GAMEGUIDE, WndMsgID.WND_MSG_GAMEGUIDE_ADDAUTOMESSAGE, new UGuideMsgData(strMessage, (EGuideNodeID)m_nCurrentID, nDelayRemoveTime)); gData.GuideDynamicBB.SetValue(EGuideBBKey.AutoGuideMessageID, -1); } base.onEnter(wData); }
protected override int onExecute(TBTWorkingData wData) { int runningState = TBTRunningStatus.USER_EXECUTING; if (EntityFactory.MainHeroView == null || !EntityFactory.MainHeroView.IsValid) { return(runningState); } GuideWorkingData gData = wData as GuideWorkingData; IList <EntityView> AroundEntitiesList = MapFinderManager.Nearest(EntityFactory.MainHeroView.StateMachine.transform.position, m_nSearchNearRadius, SPELL.CampFlag.CampFlag_Enemy); //检测附近范围内有没有敌人 runningState = AroundEntitiesList.Count == 0 ? TBTRunningStatus.USER_EXECUTING : TBTRunningStatus.USER_FINISHED; if (runningState == TBTRunningStatus.USER_FINISHED && !m_bDoOnce) {//有敌人则记录并显示UI m_bDoOnce = true; USpeedUI.UGuideMsgData msg = new USpeedUI.UGuideMsgData(m_strTextParam, gData.GuideCurrentNode, m_nSpriteParam); USpeedUI.UISystem.Instance.SendWndMessage(USpeedUI.WndMsgID.WND_MSG_GAMEGUIDE_ADDNODEMESSAGE, msg); } return(runningState); }
protected override bool CustomPrecondition(TBTWorkingData wData) { bool result = false; if (EntityFactory.MainHeroView == null || !EntityFactory.MainHeroView.IsValid) { return(result); } GuideWorkingData gData = wData as GuideWorkingData; List <EntityView> AroundEntitiesList = MapFinderManager.Nearest(EntityFactory.MainHeroView.StateMachine.transform.position, m_nSearchNearRadius, m_eCampFlag).ToList(); if (AroundEntitiesList != null) { for (int i = AroundEntitiesList.Count - 1; i >= 0; i--) { if (AroundEntitiesList[i].Property == null || AroundEntitiesList[i].Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_ID) != m_nPropertyID) { AroundEntitiesList.RemoveAt(i); } } //检测附近范围内有没有实体 result = AroundEntitiesList.Count != 0; } return(result); }
protected override int onExecute(TBTWorkingData wData) { GuideWorkingData gData = wData as GuideWorkingData; UGuideWidget widget0 = GuideManager.Instance.GetGuideWidget(gData.GuideCurrentNode, m_nHallBtnStepID); if (widget0 != null) { widget0.Hide(); } UGuideWidget widget1 = GuideManager.Instance.GetGuideWidget(gData.GuideCurrentNode, m_nGameModeStepID); if (widget1 != null) { widget1.Hide(); } UISystem.Instance.SendTargetWndMessage(WndID.WND_ID_PLAYERBUTTONFRAME, WndMsgID.WND_MSG_PLAYERBUTTONFRAME_WARHALLBUTTON_REMOVEGUIDEWIDGET, new UGuideWidgetMsgData((int)gData.GuideCurrentNode, m_nHallBtnStepID, m_nEffectID)); UISystem.Instance.SendTargetWndMessage(WndID.WND_ID_WAR_MAIN_FRAME, WndMsgID.WND_MSG_WAR_MAIN_GAMEMODEBTN_REMOVEGUIDEWIDGET, new UGuideWidgetMsgData((int)gData.GuideCurrentNode, m_nGameModeStepID, m_nEffectID, _oUserData: m_nGameModeID)); return(base.onExecute(wData)); }
protected override int onUpdate(TBTWorkingData wData) { GuideWorkingData gData = wData as GuideWorkingData; gData.GuideCurrentNode = GuideNodeID(); return(base.onUpdate(wData)); }
protected override void onEnter(TBTWorkingData wData) { base.onEnter(wData); GuideWorkingData gData = wData as GuideWorkingData; UISystem.Instance.SendTargetWndMessage(WndID.WND_ID_GAMEGUIDE, WndMsgID.WND_MSG_GAMEGUIDE_REMOVEGUIDEEFFECT, new UGuideWidgetMsgData((int)gData.GuideCurrentNode, m_nStepID, m_nEffectID)); }
protected override void onEnter(TBTWorkingData wData) { GuideWorkingData gData = wData as GuideWorkingData; ShowWidget(gData); base.onEnter(wData); }
protected override int onExecute(TBTWorkingData wData) { GuideWorkingData gData = wData as GuideWorkingData; USpeedUI.UGuideMsgRemoveData msg = new USpeedUI.UGuideMsgRemoveData(m_bIsRemoveMessage, m_bIsRemoveModal); USpeedUI.UISystem.Instance.SendWndMessage(USpeedUI.WndMsgID.WND_MSG_GAMEGUIDE_REMOVENODEREWARDMESSAGE, msg); return(base.onExecute(wData)); }
protected override int onExecute(TBTWorkingData wData) { GuideWorkingData gData = wData as GuideWorkingData; USpeedUI.UGuideMsgData msg = new USpeedUI.UGuideMsgData(m_strTextParam, gData.GuideCurrentNode, m_nSpriteParam, _bModal: m_bModal, _userData: m_userData); USpeedUI.UISystem.Instance.SendWndMessage(USpeedUI.WndMsgID.WND_MSG_GAMEGUIDE_ADDNODEMESSAGE, msg); return(base.onExecute(wData)); }
protected override void onEnter(TBTWorkingData wData) { GuideWorkingData gData = wData as GuideWorkingData; if (m_strToStringDebugMessage == null) { m_strToStringDebugMessage = string.Format(m_strDefaultDebugMessage, gData.GuideCurrentNode, m_strTextParam, m_nSpriteParam); } base.onEnter(wData); }
protected override int onExecute(TBTWorkingData wData) { GuideWorkingData gData = wData as GuideWorkingData; UGuideMsgData data = new UGuideMsgData(m_strShowMessage, gData.GuideCurrentNode); UISystem.Instance.SendTargetWndMessage(WndID.WND_ID_GAMEGUIDE, WndMsgID.WND_MSG_GAMEGUIDE_ALWAYMESSAGE, data); return(base.onExecute(wData)); }
protected override void onEnter(TBTWorkingData wData) { base.onEnter(wData); GuideWorkingData data = wData as GuideWorkingData; if (data != null) { data.GuideStateBB.SetValue(EGuideStateBBKey.GuideStateID, m_nGuideStateID); GuideManager.Instance.CreateNewDynamicGuideRoot(data); } }
public override bool IsTrue(TBTWorkingData wData) { bool result = true; GuideWorkingData gData = wData as GuideWorkingData; if (m_eGameState != EStage_State.ESS_NONE && gData != null) { result = (gData.GuideStateBB.GetValue <EStage_State>(EGuideStateBBKey.GameStageState, EStage_State.ESS_NONE) == m_eGameState); } TLogger.PROFILE("判断当前比赛类型ID是否是(" + m_eGameState + "):" + result); return(result); }
protected override void onExit(TBTWorkingData wData, int runningStatus) { GuideWorkingData gData = wData as GuideWorkingData; if (m_bFinishRemoveUIMessage) { USpeedUI.UGuideMsgRemoveData msg = new USpeedUI.UGuideMsgRemoveData(); USpeedUI.UISystem.Instance.SendWndMessage(USpeedUI.WndMsgID.WND_MSG_GAMEGUIDE_REMOVENODEMESSAGE, msg); } SSchemeGuideNodeData cData = GuideManager.Instance.getNodeConfigData(gData.GuideCurrentNode); cData.bGuideFinished = true; base.onExit(wData, runningStatus); }
protected override bool CustomPrecondition(TBTWorkingData wData) { bool result = false; GuideWorkingData gData = wData as GuideWorkingData; EGuideNodeID tmpGuideNodeID = m_eGuideNodeID == EGuideNodeID.GuideNodeID_None ? gData.GuideCurrentNode : m_eGuideNodeID; UGuideWidget widget = GuideManager.Instance.GetGuideWidget(tmpGuideNodeID, m_nStepID); if (widget != null) { result = widget.IsWidgetClick(); } return(result); }
protected override void onEnter(TBTWorkingData wData) { GuideWorkingData gData = wData as GuideWorkingData; UGuideWidget widget = GuideManager.Instance.GetGuideWidget(gData.GuideCurrentNode, m_nStepID); if (widget != null) { if (m_strToStringDebugMessage == null) { m_strToStringDebugMessage = string.Format(m_strDefaultDebugMessage, gData.GuideCurrentNode, widget.ToString()); } widget.Hide(); } base.onEnter(wData); }
protected override int onExecute(TBTWorkingData wData) { GuideWorkingData gData = wData as GuideWorkingData; UGuideWidget widget0 = GuideManager.Instance.GetGuideWidget(gData.GuideCurrentNode, m_nHallBtnStepID); if (widget0 != null && widget0.gameObject.activeInHierarchy && widget0.gameObject.activeSelf && !widget0.IsWidgetShow()) { widget0.Show(); } else if (widget0 == null) { UISystem.Instance.SendTargetWndMessage(WndID.WND_ID_PLAYERBUTTONFRAME, WndMsgID.WND_MSG_PLAYERBUTTONFRAME_WARHALLBUTTON_ADDGUIDEWIDGET, new UGuideWidgetMsgData((int)gData.GuideCurrentNode, m_nHallBtnStepID, m_nEffectID, _bClickEvent: false)); } UGuideWidget widget1 = GuideManager.Instance.GetGuideWidget(gData.GuideCurrentNode, m_nGameModeStepID); if (widget1 != null && widget1.gameObject.activeInHierarchy && widget1.gameObject.activeSelf && !widget1.IsWidgetShow()) { widget1.Show(); } else if (widget1 == null) { UISystem.Instance.SendTargetWndMessage(WndID.WND_ID_WAR_MAIN_FRAME, WndMsgID.WND_MSG_WAR_MAIN_GAMEMODEBTN_ADDGUIDEWIDGET, new UGuideWidgetMsgData((int)gData.GuideCurrentNode, m_nGameModeStepID, m_nEffectID, _oUserData: m_nGameModeID, _bClickEvent: false)); } int result = TBTRunningStatus.EXECUTING; //UGuideWidget widget = GuideManager.Instance.GetGuideWidget(gData.GuideCurrentNode, 1); //if (widget != null && widget.IsWidgetClick()) //{ // result = base.onExecute(wData); //} if (LogicDataCenter.playerSystemDataManager != null && LogicDataCenter.lifeHeroDataManager.LifeHeroMatchType == ELifeHeroMatchType.HAVE_MatchType_Rank) { result = base.onExecute(wData); } return(result); }
protected override bool onEvaluate(/*in*/ TBTWorkingData wData) { GuideWorkingData gWData = wData as GuideWorkingData; EStage_State tmpCurState = EStage_State.ESS_NONE; int tmpNoviceID = -1; if (gWData != null) { tmpCurState = gWData.GuideStateBB.GetValue <EStage_State>(EGuideStateBBKey.GameStageState, EStage_State.ESS_NONE); tmpNoviceID = gWData.GuideStateBB.GetValue <int>(EGuideStateBBKey.PlayerNoviceGuideType, -1); } if (m_eOldStage != EStage_State.ESS_NONE && m_eOldStage != tmpCurState) { GuideManager.Instance.DestroyOldDynamicGuideRoot(wData); } else if (m_eOldStage != EStage_State.ESS_NONE && m_eOldStage == tmpCurState) { if (tmpNoviceID != -1 && tmpNoviceID != m_nNoviceID) { GuideManager.Instance.DestroyOldDynamicGuideRoot(wData); } } m_eOldStage = tmpCurState; m_nNoviceID = tmpNoviceID; TBTActionPrioritizedSelectorContext thisContext = getContext <TBTActionPrioritizedSelectorContext>(wData); thisContext.currentSelectedIndex = -1; int childCount = GetChildCount(); for (int i = 0; i < childCount; ++i) { TBTAction node = GetChild <TBTAction>(i); if (node.Evaluate(wData)) { thisContext.currentSelectedIndex = i; return(true); } } return(false); }
protected override int onExecute(TBTWorkingData wData) { GuideWorkingData gData = wData as GuideWorkingData; int result = base.onExecute(wData); result = ShowWidget(gData); if (TBTRunningStatus.IsFinished(result)) { result = m_bClickWidgetFinished ? TBTRunningStatus.USER_EXECUTING : result; UGuideWidget widget = GuideManager.Instance.GetGuideWidget(gData.GuideCurrentNode, m_nStepID); if (widget != null && widget.IsWidgetClick()) { result = TBTRunningStatus.FINISHED; } } return(result); }
public override bool IsTrue(TBTWorkingData wData) { bool result = true; GuideWorkingData gData = wData as GuideWorkingData; if (gData != null) { if (m_eUserIDType == EGuideStateUserIDType.EST_NoviceID) { result = (gData.GuideStateBB.GetValue <int>(EGuideStateBBKey.PlayerNoviceGuideType, -1) == m_nUserID); } else { result = (gData.GuideStateBB.GetValue <int>(EGuideStateBBKey.GuideMatchTypeID, -1)) == m_nUserID; } } TLogger.PROFILE("判断当前用户ID类型:" + m_eUserIDType + ",ID:" + m_nUserID + "" + result); return(result); }
protected void UpdateLogicData(TBTWorkingData _data) { GuideWorkingData gData = _data.As <GuideWorkingData>(); if (gData != null && m_nLogicStepID != gData.GuideDynamicBB.GetValue <int>(EGuideBBKey.LogicStepID, -1)) { if (m_nLogicStepID != -1) { Transition(_data); } m_nLogicStepID = gData.GuideDynamicBB.GetValue <int>(EGuideBBKey.LogicStepID, -1); GuideRoot_01Context thisContext = getContext <GuideRoot_01Context>(_data); thisContext.currentSelectedIndex++; if (!IsIndexValid(thisContext.currentSelectedIndex)) { thisContext.currentSelectedIndex = -1; } } }
protected void InitGuideState() { ////////////////////////////////////////////////////////初始化引导状态行为树 m_GuideStateRoot = new GuideState_Root(); for (int i = 0; i < dicGuideStateConfigTable.Count; ++i) { SSchemeGuideStateData data = dicGuideStateConfigTable[i]; if (data != null && data.GuideNodeIDList != null && data.GuideNodeIDList.Count > 0) { GuideState_GameState_Selector gameStateSelector = null; //判断已经有该状态类型 if (!m_GuideStateRoot.TryGetGameStateSelector(data.GameStateID, out gameStateSelector)) {//没有则增加 gameStateSelector = new GuideState_GameState_Selector(data.GameStateID); m_GuideStateRoot.AddChild(gameStateSelector); } //判断是否已有该用户ID GuideState_UserID_Selector userIDSelector = null; if (!gameStateSelector.TryGetUserIDSelector(data.UserIDType, data.UserID, out userIDSelector)) { userIDSelector = new GuideState_UserID_Selector(data.UserIDType, data.UserID); gameStateSelector.AddChild(userIDSelector); } //挂接创建动态引导根节点逻辑 if (userIDSelector != null) { GuideState_CreateDynamicGuideLeaf dynamic = new GuideState_CreateDynamicGuideLeaf(data.GuideStateID); dynamic.SetPrecondition(new TBTPreconditionAND(new CON_IsMainPlayerCreated(), new CON_IsPlayerLevelExit(data.PlayerLevelLimit))); userIDSelector.AddChild(dynamic); } } } m_guideData = new GuideWorkingData(); m_guideData.GuideDynamicBB = new GuideBlackboard_EGuideBBKey(); m_guideData.GuideStateBB = new GuideBlackboard_EGuideStateBBKey(); m_guideData.GuideStateBB.SetValue(EGuideStateBBKey.PlayerNoviceGuideType, ENNOVICEGUIDE_TYPE.ENNOVICEGUIDE_TYPE_GUIDE_TWOSTEP); }
public void CreateNewDynamicGuideRoot(TBTWorkingData wData) { if (m_GuideDynamicRoot == null) { GuideWorkingData data = wData as GuideWorkingData; if (data != null && data.GuideDynamicBB != null) { int GuideStateID = data.GuideStateBB.GetValue <int>(EGuideStateBBKey.GuideStateID, -1); SSchemeGuideStateData stateData = GetGuideStateData(GuideStateID); if (stateData != null) { m_GuideDynamicRoot = CreateDynamicRoot(stateData.GuideRootType); for (int j = 0; j < stateData.GuideNodeIDList.Count; ++j) { EGuideNodeID guideNodeID = (EGuideNodeID)stateData.GuideNodeIDList[j]; SSchemeGuideNodeData guideNodeData = null; if (dicGuideConfigTable.TryGetValue(guideNodeID, out guideNodeData)) { //先根据引导节点需要挂接的父节点类型处理 EGuideActionLayerType layerType = (EGuideActionLayerType)guideNodeData.nGuideActionLayerType; TBTAction layerTypeAction = null; if (!m_GuideDynamicRoot.TryGetLayerTypeAction(layerType, out layerTypeAction)) { layerTypeAction = CreateLayerTypeAction(layerType); m_GuideDynamicRoot.AddChild(layerTypeAction); } layerTypeAction.AddChild(getNodeDataInstance(guideNodeID)); } else { Trace.LogWarning("没有引导ID为:" + guideNodeID + " 的引导数据,配错了?"); } } } } } }
protected override bool CustomPrecondition(TBTWorkingData wData) { bool result = m_bDoOnce; if (!m_bDoOnce) { GuideWorkingData gData = wData as GuideWorkingData; Vector3 MonsterDeadPos = gData.GuideDynamicBB.GetValue <Vector3>(EGuideBBKey.DeadEntityID, Vector3.zero); if (MonsterDeadPos.magnitude != 0 && EntityFactory.MainHero != null) { result = (EntityFactory.MainHero.transform.position - MonsterDeadPos).sqrMagnitude <= m_nNearbySize; //清空下 if (result) { gData.GuideDynamicBB.SetValue(EGuideBBKey.DeadEntityID, Vector3.zero); m_bDoOnce = true; } } TLogger.PROFILE("判断玩家附近是否有敌方实体死亡(实体死亡会销毁比较难检测到):" + result); } return(result); }
protected override bool CustomPrecondition(TBTWorkingData wData) { bool result = false; if (EntityFactory.MainHeroView == null || !EntityFactory.MainHeroView.IsValid) { return(result); } GuideWorkingData gData = wData as GuideWorkingData; int nDeadEntityID = gData.GuideDynamicBB.GetValue <int>(EGuideBBKey.DeadEntityID, -1); EntityView ev = EntityFactory.getEntityViewByID(nDeadEntityID); if (nDeadEntityID != -1 && ev != null) { int propertyID = ev.Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_ID); result = propertyID == m_nPropertyID; } return(result); }
protected int ShowWidget(GuideWorkingData _data) { if (m_bDoOnce) { return(TBTRunningStatus.USER_FINISHED); } UGuideWidget widget = GuideManager.Instance.GetGuideWidget(_data.GuideCurrentNode, m_nStepID); if (widget != null) { if (m_strToStringDebugMessage == null) { m_strToStringDebugMessage = string.Format(m_strDefaultDebugMessage, _data.GuideCurrentNode, widget.ToString()); } widget.Show(); m_bDoOnce = true; return(TBTRunningStatus.USER_FINISHED); } return(TBTRunningStatus.USER_EXECUTING); }
protected override int onExecute(TBTWorkingData wData) { GuideWorkingData gData = wData as GuideWorkingData; UGuideWidget widget0 = GuideManager.Instance.GetGuideWidget(gData.GuideCurrentNode, 0); if (widget0 != null && widget0.gameObject.activeInHierarchy && widget0.gameObject.activeSelf && !widget0.IsWidgetShow()) { widget0.Show(); } else if (widget0 == null) { UISystem.Instance.SendTargetWndMessage(WndID.WND_ID_PLAYERBUTTONFRAME, WndMsgID.WND_MSG_PLAYERBUTTONFRAME_WARHALLBUTTON_ADDGUIDEWIDGET, new UGuideWidgetMsgData((int)gData.GuideCurrentNode, 0, m_nEffectID, _bClickEvent: false)); } UGuideWidget widget1 = GuideManager.Instance.GetGuideWidget(gData.GuideCurrentNode, 1); if (widget1 != null && widget1.gameObject.activeInHierarchy && widget1.gameObject.activeSelf && !widget1.IsWidgetShow()) { widget1.Show(); } else if (widget1 == null) { UISystem.Instance.SendTargetWndMessage(WndID.WND_ID_WAR_MAIN_FRAME, WndMsgID.WND_MSG_WAR_MAIN_GAMEMODEBTN_ADDGUIDEWIDGET, new UGuideWidgetMsgData((int)gData.GuideCurrentNode, 1, m_nEffectID, _oUserData: m_nGameModeID, _bClickEvent: false)); } int result = TBTRunningStatus.EXECUTING; if (LogicDataCenter.lifeHeroDataManager.HistoryRecord.Count >= m_nMatchLimit) { result = base.onExecute(wData); } return(result); }