public override NET_RESULT_DEFINE.PACKET_EXE Execute(PacketBase pPacket, ref Peer pPlayer) { if (GameProcedure.GetActiveProcedure() == (GameProcedure)GameProcedure.s_ProcMain) { LogManager.Log("Receive GCDetailBuff Packet"); GCDetailBuff detailBuffPacket = (GCDetailBuff)pPacket; if (detailBuffPacket.Enable != 0) { _BUFF_IMPACT_INFO infoBuffImpact = new _BUFF_IMPACT_INFO(); infoBuffImpact.m_nReceiverID = (uint)detailBuffPacket.RecieverID; infoBuffImpact.m_nSenderID = (uint)detailBuffPacket.SenderID; infoBuffImpact.m_nBuffID = detailBuffPacket.BuffID; infoBuffImpact.m_nSkillID = detailBuffPacket.SkillID; infoBuffImpact.m_nSenderLogicCount = detailBuffPacket.SenderLogicCount; infoBuffImpact.m_nSN = detailBuffPacket.SN; infoBuffImpact.m_nTimer = detailBuffPacket.Continuance; // 接口未实现 CDataPool.Instance.BuffImpact_Add(infoBuffImpact); } else { // 接口未实现 CDataPool.Instance.BuffImpact_Remove((int)detailBuffPacket.SN); } } return(NET_RESULT_DEFINE.PACKET_EXE.PACKET_EXE_CONTINUE); }
public int BuffImpact_GetTimeByIndex(int nIndex) { _BUFF_IMPACT_INFO BuffImpactInfo = BuffImpact_GetByIndex(nIndex); if (BuffImpactInfo != null) { return(BuffImpactInfo.m_nTimer); } else { return(-1); } }
public bool BuffImpact_DispelByIndex(int nIndex) { _BUFF_IMPACT_INFO BuffImpactInfo = BuffImpact_GetByIndex(nIndex); if (BuffImpactInfo != null) { CGDispelBuffReq msgDispelBuffReq = new CGDispelBuffReq(); msgDispelBuffReq.SN = (int)BuffImpactInfo.m_nSN; NetManager.GetNetManager().SendPacket(msgDispelBuffReq); return(true); } return(false); }
public string BuffImpact_GetIconNameByIndex(int nIndex) { _BUFF_IMPACT_INFO pBuffImpactInfo = BuffImpact_GetByIndex(nIndex); if (pBuffImpactInfo != null) { _DBC_BUFF_IMPACT pBuffImpact = CDataBaseSystem.Instance.GetDataBase <_DBC_BUFF_IMPACT>((int)DataBaseStruct.DBC_BUFF_IMPACT).Search_Index_EQU(pBuffImpactInfo.m_nBuffID); if (pBuffImpact != null) { return(pBuffImpact.m_szIconName); } } return(""); }
public string BuffImpact_GetToolTips(int nSN) { _BUFF_IMPACT_INFO pBuffImpactInfo = BuffImpact_Get(nSN); if (pBuffImpactInfo != null) { _DBC_BUFF_IMPACT pBuffImpact = CDataBaseSystem.Instance.GetDataBase <_DBC_BUFF_IMPACT>((int)DataBaseStruct.DBC_BUFF_IMPACT).Search_Index_EQU(pBuffImpactInfo.m_nBuffID); if (pBuffImpact != null) { return(pBuffImpact.m_pszInfo); } } return(""); }
public void OnClick() { if (type_ == ENUM_BUFFER_TYPE.AVATAR) { //先不做是否能取消buff的判定 _BUFF_IMPACT_INFO pBuffImpactInfo = CDataPool.Instance.BuffImpact_GetByIndex(index_); if (pBuffImpactInfo != null) { CGDispelBuffReq msgDispelBuffReq = new CGDispelBuffReq(); msgDispelBuffReq.SN = (int)pBuffImpactInfo.m_nSN; NetManager.GetNetManager().SendPacket(msgDispelBuffReq); } } }
public bool BuffImpact_Add(_BUFF_IMPACT_INFO pBuffImpact) { if (pBuffImpact == null) { return(false); } int nSN = (int)pBuffImpact.m_nSN; if (!m_mapBuffImpact.ContainsKey(nSN)) { m_mapBuffImpact.Add(nSN, pBuffImpact); } CEventSystem.Instance.PushEvent(GAME_EVENT_ID.GE_IMPACT_SELF_UPDATE); return(true); }
public bool BuffImpact_Dispel(int nSN) { _BUFF_IMPACT_INFO BuffImpactInfo = BuffImpact_Get(nSN); if (BuffImpactInfo != null) { CGDispelBuffReq msgDispelBuffReq = new CGDispelBuffReq(); msgDispelBuffReq.SN = (int)nSN; NetManager.GetNetManager().SendPacket(msgDispelBuffReq); return(true); } else { return(false); } }
public override NET_RESULT_DEFINE.PACKET_EXE Execute(PacketBase pPacket, ref Peer pPlayer) { if (GameProcedure.GetActiveProcedure() == (GameProcedure)GameProcedure.s_ProcMain) { LogManager.Log("Receive GCDetailImpactListUpdate Packet"); GCDetailImpactListUpdate Packet = (GCDetailImpactListUpdate)pPacket; CDataPool.Instance.BuffImpact_RemoveAll(); DetailImpactStruct_T[] pImpactList = Packet.Impacts; for (short i = 0; i < Packet.NumImpact; i++) { _BUFF_IMPACT_INFO infoBuffImpact = new _BUFF_IMPACT_INFO(); infoBuffImpact.m_nReceiverID = (uint)Packet.OwnerID; infoBuffImpact.m_nSenderID = (uint)pImpactList[i].m_nSenderID; infoBuffImpact.m_nBuffID = pImpactList[i].m_nBuffID; infoBuffImpact.m_nSkillID = pImpactList[i].m_nSkillID; infoBuffImpact.m_nSenderLogicCount = -1; infoBuffImpact.m_nSN = pImpactList[i].m_nSN; infoBuffImpact.m_nTimer = pImpactList[i].m_nContinuance; CDataPool.Instance.BuffImpact_Add(infoBuffImpact); } } return(NET_RESULT_DEFINE.PACKET_EXE.PACKET_EXE_CONTINUE); }
public bool BuffImpact_Add(_BUFF_IMPACT_INFO pBuffImpact) { return(mPlayerBuffImpact.BuffImpact_Add(pBuffImpact)); }
public void UpdateTime() { //CObject_Character pChar = null; switch (type_) { case ENUM_BUFFER_TYPE.AVATAR: { _BUFF_IMPACT_INFO buff = CDataPool.Instance.BuffImpact_GetByIndex(index_); if (buff != null) { if (buff.m_nBuffID != bufferID_) { _DBC_BUFF_IMPACT pBuffImpact = CDataBaseSystem.Instance.GetDataBase <_DBC_BUFF_IMPACT>((int)DataBaseStruct.DBC_BUFF_IMPACT).Search_Index_EQU(buff.m_nBuffID); string iconName = ""; if (pBuffImpact != null) { iconName = pBuffImpact.m_szIconName; } bufferID_ = buff.m_nBuffID; Texture2D tex = IconManager.Instance.GetIcon(iconName); SetTexture(tex); } timeStamp_ = GameProcedure.s_pTimeSystem.GetTimeNow(); Hide(false); this.Text = string.Format("{0:F1}", buff.m_nTimer / 1000.0f) + "s"; } else { Hide(true); bufferID_ = 0; } } break; case ENUM_BUFFER_TYPE.TARGET: { bool needHide = true; if (CObjectManager.Instance.GetMainTarget() != null) { CObject_Character obj = CObjectManager.Instance.GetMainTarget() as CObject_Character; if (obj != null) { SImpactEffect impactEffect = obj.Impact.BuffImpact_GetByIndex(index_); if (impactEffect != null) { if ((short)impactEffect.GetImpactID() != bufferID_) { _DBC_BUFF_IMPACT pBuffImpact = CDataBaseSystem.Instance.GetDataBase <_DBC_BUFF_IMPACT>((int)DataBaseStruct.DBC_BUFF_IMPACT).Search_Index_EQU((int)impactEffect.GetImpactID()); string iconName = ""; if (pBuffImpact != null) { iconName = pBuffImpact.m_szIconName; } bufferID_ = (short)impactEffect.GetImpactID(); Texture2D tex = IconManager.Instance.GetIcon(iconName); SetTexture(tex); } needHide = false; } } } if (needHide) { bufferID_ = 0; } Hide(needHide); this.Text = ""; } break; case ENUM_BUFFER_TYPE.TEAM: break; } }