From f624ba05077458b476f76cb8d666029a2fb56807 Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期四, 18 四月 2019 14:37:00 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
---
System/WorldMap/LocalMapTag.cs | 154 +++++++++++++++++++++++++++++----------------------
1 files changed, 87 insertions(+), 67 deletions(-)
diff --git a/System/WorldMap/LocalMapTag.cs b/System/WorldMap/LocalMapTag.cs
index cd767be..e4e1c3d 100644
--- a/System/WorldMap/LocalMapTag.cs
+++ b/System/WorldMap/LocalMapTag.cs
@@ -18,40 +18,28 @@
[SerializeField] TextEx m_Level;
[SerializeField] Button m_Moveto;
[SerializeField] Image m_TaskState;
+ [SerializeField] UIEffect m_Effect;
TagType m_TagType;
public TagType tagType {
- get {
- return m_TagType;
- }
- set {
- m_TagType = value;
- }
+ get { return m_TagType; }
+ set { m_TagType = value; }
}
- LocalMapFindPath localMapFindPath;
- Vector3 worldPosition = Vector3.zero;
int npcId = 0;
int index = 0;
- TaskModel taskmodel {
- get {
- return ModelCenter.Instance.GetModel<TaskModel>();
- }
- }
- FairyLeagueModel fairyLeagueModel {
- get {
- return ModelCenter.Instance.GetModel<FairyLeagueModel>();
- }
- }
+ MapModel mapModel { get { return ModelCenter.Instance.GetModel<MapModel>(); } }
+ TaskModel taskModel { get { return ModelCenter.Instance.GetModel<TaskModel>(); } }
+ FairyLeagueModel fairyLeagueModel { get { return ModelCenter.Instance.GetModel<FairyLeagueModel>(); } }
- public void Display(int _npcId, TextColType _colorType)
+ public void Display(int npcId, TextColType colorType)
{
- npcId = _npcId;
+ this.npcId = npcId;
switch (m_TagType)
{
case TagType.Function:
- var status = taskmodel.StatusLightQuery(npcId);
+ var status = this.taskModel.StatusLightQuery(this.npcId);
if (status > 0)
{
m_TaskState.SetSprite(StringUtility.Contact("LocalMapTaskState_", status));
@@ -64,6 +52,10 @@
m_TaskState.SetNativeSize();
TaskModel.Event_TaskResponse -= OnTaskStateChange;
TaskModel.Event_TaskResponse += OnTaskStateChange;
+
+ OnSelectEvent(mapModel.selectedMapEventPoint);
+ mapModel.selectMapEventPointEvent -= OnSelectEvent;
+ mapModel.selectMapEventPointEvent += OnSelectEvent;
break;
case TagType.WayPoint:
break;
@@ -71,61 +63,88 @@
break;
case TagType.Elite:
case TagType.Monster:
- var config = NPCConfig.Get(npcId);
+ var config = NPCConfig.Get(this.npcId);
m_NpcName.text = config.charName;
- m_NpcName.colorType = _colorType;
+ m_NpcName.colorType = colorType;
break;
case TagType.Crystal:
- OnCrystalStateChange(npcId);
+ this.OnCrystalStateChange(this.npcId);
m_Moveto.RemoveAllListeners();
m_Moveto.AddListener(MoveTo);
- PlayerDatas.Instance.playerDataRefreshEvent -= PlayerDataRefreshInfoEvent;
- PlayerDatas.Instance.playerDataRefreshEvent += PlayerDataRefreshInfoEvent;
+ PlayerDatas.Instance.playerDataRefreshEvent -= PlayerDataRefreshEvent;
+ PlayerDatas.Instance.playerDataRefreshEvent += PlayerDataRefreshEvent;
fairyLeagueModel.UpdateWarCrystalEvent -= OnCrystalStateChange;
fairyLeagueModel.UpdateWarCrystalEvent += OnCrystalStateChange;
break;
}
}
- public void Display(int _npcId, TextColType _colorType, Vector3 _position)
+ public void Display(int npcId, TextColType colorType, Vector3 _position)
{
- worldPosition = _position;
- npcId = _npcId;
-
+ this.npcId = npcId;
switch (m_TagType)
{
case TagType.Boss:
- var config = NPCConfig.Get(npcId);
+ var config = NPCConfig.Get(this.npcId);
m_NpcName.text = config.charName;
m_Level.text = Language.Get("HeadUpName_Monster", config.NPCLV);
- m_NpcName.colorType = _colorType;
+ m_NpcName.colorType = colorType;
var dangerous = PlayerDatas.Instance.baseData.LV <= config.NPCLV;
m_Level.color = UIHelper.GetUIColor(dangerous ? TextColType.Red : TextColType.Green, false);
- m_Moveto.RemoveAllListeners();
- m_Moveto.AddListener(MoveTo);
+ m_Moveto.SetListener(MoveTo);
break;
default:
break;
}
}
- public void Display(int _index)
+ public void Display(int index)
{
- index = _index;
+ this.index = index;
switch (m_TagType)
{
case TagType.FairyLeagueBuff:
- m_Moveto.RemoveAllListeners();
- m_Moveto.AddListener(MoveTo);
+ m_Moveto.SetListener(MoveTo);
break;
}
}
public void Dispose()
{
+ mapModel.selectMapEventPointEvent += OnSelectEvent;
TaskModel.Event_TaskResponse -= OnTaskStateChange;
fairyLeagueModel.UpdateWarCrystalEvent -= OnCrystalStateChange;
- PlayerDatas.Instance.playerDataRefreshEvent -= PlayerDataRefreshInfoEvent;
+ PlayerDatas.Instance.playerDataRefreshEvent -= PlayerDataRefreshEvent;
+ }
+
+ private void OnSelectEvent(int eventId)
+ {
+ var config = MapEventPointConfig.Get(eventId);
+
+ var isFunctionNpc = false;
+ if (config != null && config.NPCID == this.npcId)
+ {
+ var npcConfig = NPCConfig.Get(config.NPCID);
+ if (npcConfig.NPCType == 0)
+ {
+ isFunctionNpc = true;
+ }
+ }
+
+ if (isFunctionNpc)
+ {
+ if (!m_Effect.IsPlaying)
+ {
+ m_Effect.Play();
+ }
+ }
+ else
+ {
+ if (m_Effect.IsPlaying)
+ {
+ m_Effect.Stop();
+ }
+ }
}
private void MoveTo()
@@ -134,33 +153,31 @@
{
case TagType.FairyLeagueBuff:
{
- var _help = fairyLeagueModel.fairyLeagueHelp;
- Vector2 _buffPos = fairyLeagueModel.crystalPosList[index];
- var _hero = PlayerDatas.Instance.hero;
- if (_hero != null)
+ var buffPos = fairyLeagueModel.crystalPosList[index];
+ var hero = PlayerDatas.Instance.hero;
+ if (hero != null)
{
- _hero.MoveToPosition(new Vector3(_buffPos.x, _hero.Pos.y, _buffPos.y));
+ hero.MoveToPosition(new Vector3(buffPos.x, hero.Pos.y, buffPos.y));
}
}
break;
default:
{
- var model = ModelCenter.Instance.GetModel<MapModel>();
WindowCenter.Instance.Close<WorldMapWin>();
WindowCenter.Instance.Close<LocalMapWin>();
WindowCenter.Instance.Open<MainInterfaceWin>();
MapTransferUtility.Instance.MoveToNPC(npcId);
- model.selectedMapEventPoint = -1;
+ mapModel.selectedMapEventPoint = -1;
}
break;
}
}
- private void OnTaskStateChange(int _nowNPCid, int _nPCLamp, Dictionary<int, int> _dic)
+ private void OnTaskStateChange(int nowNpcId, int npcLamp, Dictionary<int, int> dic)
{
- if (npcId == _nowNPCid)
+ if (npcId == nowNpcId)
{
- var status = taskmodel.StatusLightQuery(npcId);
+ var status = taskModel.StatusLightQuery(npcId);
if (status > 0)
{
m_TaskState.SetSprite(StringUtility.Contact("LocalMapTaskState_", status));
@@ -178,31 +195,34 @@
OnCrystalStateChange(npcId);
}
- private void PlayerDataRefreshInfoEvent(PlayerDataType _type)
+ private void PlayerDataRefreshEvent(PlayerDataType type)
{
- if (_type == PlayerDataType.Faction)
+ if (type == PlayerDataType.Faction)
{
OnCrystalStateChange();
}
}
- private void OnCrystalStateChange(int _npcId)
+ private void OnCrystalStateChange(int npcId)
{
- if (npcId != _npcId)
+ if (this.npcId != npcId)
{
return;
}
- var _index = fairyLeagueModel.GetCrystalIndex(_npcId);
- m_NpcName.text = (_index + 1).ToString();
- var _camp = fairyLeagueModel.fairyLeagueHelp.GetCrystalBelongCamp(_npcId);
- if (_camp == 0)
+
+ var index = fairyLeagueModel.GetCrystalIndex(npcId);
+ m_NpcName.text = (index + 1).ToString();
+ var camp = fairyLeagueModel.fairyLeagueHelp.GetCrystalBelongCamp(npcId);
+ if (camp == 0)
{
m_TaskState.SetSprite("GrayCrystal");
m_Moveto.image.SetSprite("GreyBottom");
return;
}
- m_TaskState.SetSprite((FairyCampType)_camp == FairyCampType.Blue ? "BlueCrystal" : "RedCrystal");
- m_Moveto.image.SetSprite((FairyCampType)_camp == FairyCampType.Blue ? "BlueBottom" : "RedBottom");
+
+ var isBlue = (FairyCampType)camp == FairyCampType.Blue;
+ m_TaskState.SetSprite(isBlue ? "BlueCrystal" : "RedCrystal");
+ m_Moveto.image.SetSprite(isBlue ? "BlueBottom" : "RedBottom");
}
public enum TagType
@@ -222,13 +242,13 @@
{
static Dictionary<int, GameObjectPoolManager.GameObjectPool> pools = new Dictionary<int, GameObjectPoolManager.GameObjectPool>();
- public static LocalMapTag Require(LocalMapTag.TagType _pattern)
+ public static LocalMapTag Require(LocalMapTag.TagType pattern)
{
GameObjectPoolManager.GameObjectPool pool = null;
- var poolKey = (int)_pattern;
+ var poolKey = (int)pattern;
if (!pools.ContainsKey(poolKey))
{
- var prefab = UILoader.LoadPrefab(StringUtility.Contact("LocalMap_", _pattern));
+ var prefab = UILoader.LoadPrefab(StringUtility.Contact("LocalMap_", pattern));
if (prefab != null)
{
pool = GameObjectPoolManager.Instance.RequestPool(prefab);
@@ -244,7 +264,7 @@
{
var instance = pool.Request();
var npcBehaviour = instance.GetComponent<LocalMapTag>();
- npcBehaviour.tagType = _pattern;
+ npcBehaviour.tagType = pattern;
npcBehaviour.enabled = true;
return npcBehaviour;
}
@@ -254,14 +274,14 @@
}
}
- public static void Recycle(LocalMapTag _npcBehaviour)
+ public static void Recycle(LocalMapTag behaviour)
{
- var pattern = _npcBehaviour.tagType;
+ var pattern = behaviour.tagType;
GameObjectPoolManager.GameObjectPool pool;
if (pools.TryGetValue((int)pattern, out pool))
{
- _npcBehaviour.enabled = false;
- pool.Release(_npcBehaviour.gameObject);
+ behaviour.enabled = false;
+ pool.Release(behaviour.gameObject);
}
}
--
Gitblit v1.8.0