void InitTimeLimitItem(tagActionEventConfig tagInfo, byte state, uint curValue = 0) { LimitTimeItem item = new LimitTimeItem(); item.Init(m_BaseItem); item.SetItemInfo(m_ActivityID, tagInfo, state, curValue); m_NodeList.Add(item); }
bool HandleChangeActionInfo(NetCmdBase obj) { LC_Cmd_GetOnceActionInfo ncb = (LC_Cmd_GetOnceActionInfo)obj; RoleActionBase pAction = GetAction(ncb.ActionInfo.ActionID); if (pAction == null) { //直接添加 tagActionConfig pConfig = null; if (!FishConfig.Instance.m_ActionInfo.m_ActionMap.TryGetValue(ncb.ActionInfo.ActionID, out pConfig)) { return(false); } pAction = CreateAction((EventTargetType)pConfig.EventID); if (pAction == null || !pAction.OnInit(ncb.ActionInfo, this)) { return(false); } m_ActionMap.Add(ncb.ActionInfo.ActionID, pAction); // CheckIsExistsFinishItem(); tagOnceActionChangeEvent pEvent = new tagOnceActionChangeEvent(ncb.ActionInfo.ActionID); MsgEventHandle.HandleMsg(pEvent); return(true); } else { UInt32 ID = (ncb.ActionInfo.ActionStates ^ pAction.pActionInfo.ActionStates); pAction.pActionInfo = ncb.ActionInfo; // CheckIsExistsFinishItem(); tagOnceActionChangeEvent pEvent = new tagOnceActionChangeEvent(ncb.ActionInfo.ActionID); MsgEventHandle.HandleMsg(pEvent); RoleActionBase pBase = GetAction(ncb.ActionInfo.ActionID); if (pBase != null && pBase.pConfig.EventMap.ContainsKey(ID)) { tagActionEventConfig pEventConfig = pBase.pConfig.EventMap[ID]; tagActionOnceRewardEvent pReward = new tagActionOnceRewardEvent(ncb.ActionInfo.ActionID, ID, pEventConfig.RewardID); MsgEventHandle.HandleMsg(pReward); tagUserOperationEvent pUOM = new tagUserOperationEvent(UserOperateMessage.UOM_Action_GetReward_Sucess); MsgEventHandle.HandleMsg(pUOM); } //pAction.ChangeActionErrorInfo(ncb.ActionInfo); } return(true); }
public void SetItemInfo(byte ActivityID, tagActionEventConfig tagInfo, byte state, uint curValue) { m_NodeState = state; m_ActivityID = ActivityID; m_NodeID = tagInfo.ID; m_NodeName.text = tagInfo.Common; if (state <= 2) { m_NodeProgress.text = curValue.ToString() + "/" + tagInfo.FinishValue.ToString(); } else { m_NodeProgress.text = tagInfo.FinishValue + "/" + tagInfo.FinishValue.ToString(); } tagRewardOnce pReward = FishConfig.Instance.GetRewardOnceByID((ushort)tagInfo.RewardID); if (pReward == null) { return; } for (byte i = 0; i < pReward.RewardItemVec.Count; ++i) { uint ItemID = pReward.RewardItemVec[i].ItemID; if (FishConfig.Instance.m_ItemInfo.m_ItemMap.ContainsKey(ItemID) != true) { continue; } if (i >= 3) { break; } m_NodeReward[i].m_RewardIcon.spriteName = FishConfig.Instance.m_ItemInfo.m_ItemMap[ItemID].ItemIcon; m_NodeReward[i].m_RewardSum.text = "x" + pReward.RewardItemVec[i].ItemSum.ToString(); m_NodeReward[i].m_Obj.SetActive(true); } ChangeBtnSate(state); }