public static void ReceiveRollingMsgNtf(CSPkg msg) { SCPKG_ROLLINGMSG_NTF stRollingMsgNtf = msg.stPkgData.stRollingMsgNtf; int num = Mathf.Min(stRollingMsgNtf.astRollingMsg.Length, stRollingMsgNtf.bMsgCnt); for (int i = 0; i < num; i++) { RollingInfo item = new RollingInfo(); CSDT_ROLLING_MSG csdt_rolling_msg = stRollingMsgNtf.astRollingMsg[i]; item.resetPriorityTime = Singleton <CRoleInfoManager> .GetInstance().GetMasterRoleInfo().getCurrentTimeSinceLogin(); item.priority = CalculatePriority((COM_ROLLINGMSG_TYPE)csdt_rolling_msg.bType, csdt_rolling_msg.bPriority); item.repeatCount = CalculateRepeatCount(csdt_rolling_msg.dwStartTime, csdt_rolling_msg.dwEndTime, csdt_rolling_msg.wPeriod); item.content = Utility.UTF8Convert(csdt_rolling_msg.szContent, csdt_rolling_msg.wContentLen); if (csdt_rolling_msg.bType == 0) { item.content = "<color=#00ff00>" + item.content + "</color>"; } if (csdt_rolling_msg.bIsChat == 0) { Singleton <EventRouter> .GetInstance().BroadCastEvent <string>(EventID.ROLLING_SYSTEM_CHAT_INFO_RECEIVED, item.content); } Singleton <CRollingSystem> .GetInstance().m_rollingInfos.Add(item); } Singleton <CRollingSystem> .GetInstance().StartRolling(); }
public static void ReceiveRollingMsgNtf(CSPkg msg) { SCPKG_ROLLINGMSG_NTF stRollingMsgNtf = msg.stPkgData.get_stRollingMsgNtf(); int num = Mathf.Min(stRollingMsgNtf.astRollingMsg.Length, (int)stRollingMsgNtf.bMsgCnt); for (int i = 0; i < num; i++) { RollingInfo rollingInfo = new RollingInfo(); CSDT_ROLLING_MSG cSDT_ROLLING_MSG = stRollingMsgNtf.astRollingMsg[i]; rollingInfo.resetPriorityTime = CRoleInfo.GetCurrentUTCTime(); rollingInfo.priority = CRollingSystem.CalculatePriority(cSDT_ROLLING_MSG.bType, cSDT_ROLLING_MSG.bPriority); rollingInfo.repeatCount = CRollingSystem.CalculateRepeatCount(cSDT_ROLLING_MSG.dwStartTime, cSDT_ROLLING_MSG.dwEndTime, cSDT_ROLLING_MSG.wPeriod); rollingInfo.content = Utility.UTF8Convert(cSDT_ROLLING_MSG.szContent, (int)cSDT_ROLLING_MSG.wContentLen); if (cSDT_ROLLING_MSG.bType == 0) { rollingInfo.content = "<color=#b5e9ff>" + rollingInfo.content + "</color>"; } if (cSDT_ROLLING_MSG.bIsChat == 0) { Singleton <EventRouter> .GetInstance().BroadCastEvent <string>(EventID.ROLLING_SYSTEM_CHAT_INFO_RECEIVED, rollingInfo.content); } Singleton <CRollingSystem> .GetInstance().m_rollingInfos.Add(rollingInfo); } Singleton <CRollingSystem> .GetInstance().StartRolling(); }
public static void ReceiveRollingMsgNtf(CSPkg msg) { SCPKG_ROLLINGMSG_NTF stRollingMsgNtf = msg.stPkgData.stRollingMsgNtf; int num = Mathf.Min(stRollingMsgNtf.astRollingMsg.Length, (int)stRollingMsgNtf.bMsgCnt); for (int i = 0; i < num; i++) { RollingInfo rollingInfo = new RollingInfo(); CSDT_ROLLING_MSG cSDT_ROLLING_MSG = stRollingMsgNtf.astRollingMsg[i]; rollingInfo.resetPriorityTime = CRoleInfo.GetCurrentUTCTime(); rollingInfo.priority = CRollingSystem.CalculatePriority((COM_ROLLINGMSG_TYPE)cSDT_ROLLING_MSG.bType, cSDT_ROLLING_MSG.bPriority); rollingInfo.repeatCount = CRollingSystem.CalculateRepeatCount(cSDT_ROLLING_MSG.dwStartTime, cSDT_ROLLING_MSG.dwEndTime, cSDT_ROLLING_MSG.wPeriod); rollingInfo.content = Utility.UTF8Convert(cSDT_ROLLING_MSG.szContent, (int)cSDT_ROLLING_MSG.wContentLen); bool flag = false; ListView <UrlAction> listView = UrlAction.ParseFromText(rollingInfo.content, null); if (listView.Count > 0) { UrlAction urlAction = listView[0]; if (!string.IsNullOrEmpty(urlAction.target) && urlAction.action == UrlAction.Action.openUrl && !string.IsNullOrEmpty(urlAction.url)) { rollingInfo.content = urlAction.target; rollingInfo.url = urlAction.url; flag = true; } } if (cSDT_ROLLING_MSG.bType == 0) { if (flag) { rollingInfo.content = "<color=#fdb900>" + rollingInfo.content + "</color>"; } else { rollingInfo.content = "<color=#b5e9ff>" + rollingInfo.content + "</color>"; } } if (cSDT_ROLLING_MSG.bIsChat == 1) { Singleton <EventRouter> .GetInstance().BroadCastEvent <string>(EventID.ROLLING_SYSTEM_CHAT_INFO_RECEIVED, rollingInfo.content); } Singleton <CRollingSystem> .GetInstance().m_rollingInfos.Add(rollingInfo); } Singleton <CRollingSystem> .GetInstance().StartRolling(); }