| | |
| | | using System; |
| | | using System.Collections; |
| | | using System.Collections.Generic; |
| | | using System.Text.RegularExpressions; |
| | | using UnityEngine; |
| | | using UnityEngine.UI; |
| | | namespace Snxxz.UI |
| | | { |
| | | public class DungeonRankBehaviour : MonoBehaviour |
| | | { |
| | | [SerializeField] List<Text> playerNameTexts; |
| | | [SerializeField] List<Text> valueTexts; |
| | | [SerializeField] Text mineRankText; |
| | | [SerializeField] Text mineNameText; |
| | | [SerializeField] Text mineValueText; |
| | | |
| | | int currentDugeonId = 0; |
| | | |
| | | private object RegexPlayerDatas; |
| | | |
| | | DungeonModel model { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } } |
| | | |
| | | public void Init(int mapID) |
| | | { |
| | | currentDugeonId = mapID; |
| | | SetMineInfo(0, 0); |
| | | SetDefault(); |
| | | UpdateMissionEvent(); |
| | | } |
| | | |
| | | private void OnEnable() |
| | | { |
| | | model.updateMissionEvent += UpdateMissionEvent; |
| | | } |
| | | |
| | | private void UpdateMissionEvent() |
| | | { |
| | | if (currentDugeonId == 0) return; |
| | | switch (currentDugeonId) |
| | | { |
| | | case 31170: |
| | | case DemonJarModel.DEMONJAR_MAPID: |
| | | { |
| | | if (model.mission.hurtInfo != null && model.mission.hurtInfo.Length > 0) |
| | | { |
| | | int i = 0; |
| | | for (i = 0; i < model.mission.hurtInfo.Length; i++) |
| | | { |
| | | var rank = model.mission.hurtInfo[i].rank; |
| | | if (rank - 1 < playerNameTexts.Count) |
| | | { |
| | | playerNameTexts[rank - 1].text = model.mission.hurtInfo[i].playerName; |
| | | valueTexts[rank - 1].text = UIHelper.ReplaceLargeNum(model.mission.hurtInfo[i].totalHurt); |
| | | if (Regex.IsMatch(UIHelper.ServerStringTrim(model.mission.hurtInfo[i].playerName), UIHelper.ServerStringTrim(PlayerDatas.Instance.baseData.PlayerName))) |
| | | { |
| | | SetMineInfo(rank, model.mission.hurtInfo[i].totalHurt); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | SetMineInfo(rank, model.mission.hurtInfo[i].totalHurt); |
| | | } |
| | | } |
| | | while (i < playerNameTexts.Count) |
| | | { |
| | | playerNameTexts[i].text = string.Empty; |
| | | valueTexts[i].text = string.Empty; |
| | | i++; |
| | | } |
| | | } |
| | | } |
| | | break; |
| | | } |
| | | } |
| | | |
| | | private void SetMineInfo(int rank, long hurt) |
| | | { |
| | | if (mineRankText != null) |
| | | { |
| | | mineRankText.text = rank == 0 ?Language.Get("FamilyMatchUnBeOnList") : StringUtility.Contact(rank, ":"); |
| | | } |
| | | if (mineNameText != null) |
| | | { |
| | | mineNameText.text = PlayerDatas.Instance.baseData.PlayerName; |
| | | } |
| | | mineValueText.text = UIHelper.ReplaceLargeNum((ulong)hurt); |
| | | } |
| | | |
| | | private void SetDefault() |
| | | { |
| | | for (int i = 0; i < playerNameTexts.Count; i++) |
| | | { |
| | | playerNameTexts[i].text = string.Empty; |
| | | } |
| | | for (int i = 0; i < valueTexts.Count; i++) |
| | | { |
| | | valueTexts[i].text = string.Empty; |
| | | } |
| | | } |
| | | |
| | | private void OnDisable() |
| | | { |
| | | model.updateMissionEvent -= UpdateMissionEvent; |
| | | } |
| | | } |
| | | } |
| | | |
| | | using System;
|
| | | using System.Collections;
|
| | | using System.Collections.Generic;
|
| | | using System.Text.RegularExpressions;
|
| | | using UnityEngine;
|
| | | using UnityEngine.UI;
|
| | | namespace Snxxz.UI
|
| | | {
|
| | | public class DungeonRankBehaviour : MonoBehaviour
|
| | | {
|
| | | [SerializeField] List<Text> playerNameTexts;
|
| | | [SerializeField] List<Text> valueTexts;
|
| | | [SerializeField] Text mineRankText;
|
| | | [SerializeField] Text mineNameText;
|
| | | [SerializeField] Text mineValueText;
|
| | |
|
| | | int currentDugeonId = 0;
|
| | |
|
| | | private object RegexPlayerDatas;
|
| | |
|
| | | DungeonModel model { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } }
|
| | |
|
| | | public void Init(int mapID)
|
| | | {
|
| | | currentDugeonId = mapID;
|
| | | SetMineInfo(0, 0);
|
| | | SetDefault();
|
| | | UpdateMissionEvent();
|
| | | }
|
| | |
|
| | | private void OnEnable()
|
| | | {
|
| | | model.updateMissionEvent += UpdateMissionEvent;
|
| | | }
|
| | |
|
| | | private void UpdateMissionEvent()
|
| | | {
|
| | | if (currentDugeonId == 0) return;
|
| | | switch (currentDugeonId)
|
| | | {
|
| | | case 31170:
|
| | | case DemonJarModel.DEMONJAR_MAPID:
|
| | | {
|
| | | if (model.mission.hurtInfo != null && model.mission.hurtInfo.Length > 0)
|
| | | {
|
| | | int i = 0;
|
| | | for (i = 0; i < model.mission.hurtInfo.Length; i++)
|
| | | {
|
| | | var rank = model.mission.hurtInfo[i].rank;
|
| | | if (rank - 1 < playerNameTexts.Count)
|
| | | {
|
| | | playerNameTexts[rank - 1].text = model.mission.hurtInfo[i].playerName;
|
| | | valueTexts[rank - 1].text = UIHelper.ReplaceLargeNum(model.mission.hurtInfo[i].totalHurt);
|
| | | if (Regex.IsMatch(UIHelper.ServerStringTrim(model.mission.hurtInfo[i].playerName), UIHelper.ServerStringTrim(PlayerDatas.Instance.baseData.PlayerName)))
|
| | | {
|
| | | SetMineInfo(rank, model.mission.hurtInfo[i].totalHurt);
|
| | | }
|
| | | }
|
| | | else
|
| | | {
|
| | | SetMineInfo(rank, model.mission.hurtInfo[i].totalHurt);
|
| | | }
|
| | | }
|
| | | while (i < playerNameTexts.Count)
|
| | | {
|
| | | playerNameTexts[i].text = string.Empty;
|
| | | valueTexts[i].text = string.Empty;
|
| | | i++;
|
| | | }
|
| | | }
|
| | | }
|
| | | break;
|
| | | }
|
| | | }
|
| | |
|
| | | private void SetMineInfo(int rank, long hurt)
|
| | | {
|
| | | if (mineRankText != null)
|
| | | {
|
| | | mineRankText.text = rank == 0 ?Language.Get("FamilyMatchUnBeOnList") : StringUtility.Contact(rank, ":");
|
| | | }
|
| | | if (mineNameText != null)
|
| | | {
|
| | | mineNameText.text = PlayerDatas.Instance.baseData.PlayerName;
|
| | | }
|
| | | mineValueText.text = UIHelper.ReplaceLargeNum((ulong)hurt);
|
| | | }
|
| | |
|
| | | private void SetDefault()
|
| | | {
|
| | | for (int i = 0; i < playerNameTexts.Count; i++)
|
| | | {
|
| | | playerNameTexts[i].text = string.Empty;
|
| | | }
|
| | | for (int i = 0; i < valueTexts.Count; i++)
|
| | | {
|
| | | valueTexts[i].text = string.Empty;
|
| | | }
|
| | | }
|
| | |
|
| | | private void OnDisable()
|
| | | {
|
| | | model.updateMissionEvent -= UpdateMissionEvent;
|
| | | }
|
| | | }
|
| | | }
|
| | |
|