Merge branch 'master' into Equip
| | |
| | | public virtual void Export(BinaryWriter bw) |
| | | { |
| | | bw.Write((byte)type); |
| | | Debug.LogFormat("type: {0}", type); |
| | | bw.Write(id); |
| | | Debug.LogFormat("id: {0}", id); |
| | | } |
| | | #endif |
| | | } |
| | |
| | | int _count = br.ReadInt32(); |
| | | for (int i = 0; i < _count; ++i) |
| | | { |
| | | var _go = new GameObject(); |
| | | var _resName = br.ReadString(); |
| | | GameObject _go = null; |
| | | |
| | | if (!string.IsNullOrEmpty(_resName.Trim())) |
| | | { |
| | | string _path = "Assets/ResourcesOut/Mob/Prefab_Race_" + _resName + ".prefab"; |
| | | _go = AssetDatabase.LoadAssetAtPath<GameObject>(_path); |
| | | if (_go) |
| | | { |
| | | _go = Instantiate(_go); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | _go = GameObject.CreatePrimitive(PrimitiveType.Capsule); |
| | | } |
| | | |
| | | _go.transform.SetParent(transform); |
| | | _go.transform.localPosition = Vector3.zero; |
| | | _go.transform.eulerAngles = Vector3.zero; |
| | |
| | | for (int i = monsterList.Count - 1; i >= 0; --i) |
| | | { |
| | | EditorGUILayout.BeginHorizontal(GUILayout.Height(22)); |
| | | EditorGUILayout.LabelField("NPCID", guiSkin.customStyles[0], GUILayout.Height(22), GUILayout.Width(50)); |
| | | EditorGUILayout.LabelField(monsterList[i].npcID.ToString(), guiSkin.textField, GUILayout.Height(20)); |
| | | EditorGUILayout.LabelField("模型名", guiSkin.customStyles[0], GUILayout.Height(22), GUILayout.Width(50)); |
| | | EditorGUILayout.LabelField(monsterList[i].resName, guiSkin.textField, GUILayout.Height(22), GUILayout.Width(70)); |
| | | EditorGUILayout.LabelField("NPCID", guiSkin.customStyles[0], GUILayout.Height(20), GUILayout.Width(50)); |
| | | EditorGUILayout.LabelField(monsterList[i].npcID.ToString(), guiSkin.textField, GUILayout.Height(20), GUILayout.Width(70)); |
| | | EditorGUILayout.LabelField("模型名", guiSkin.customStyles[0], GUILayout.Height(20), GUILayout.Width(50)); |
| | | EditorGUILayout.LabelField(monsterList[i].resName, guiSkin.textField, GUILayout.Height(20), GUILayout.Width(70)); |
| | | if (GUILayout.Button("定高", guiSkin.button, GUILayout.Width(60), GUILayout.Height(20))) |
| | | { |
| | | Vector3 _pos = monsterList[i].transform.position; |
| | |
| | | |
| | | public void Save(BinaryWriter bw) |
| | | { |
| | | bw.Write(npcID); |
| | | bw.Write(resName); |
| | | bw.Write(npcID); |
| | | bw.Write(ai); |
| | | bw.Write((float)System.Math.Round(transform.position.x, 2)); |
| | | bw.Write((float)System.Math.Round(transform.position.y, 2)); |
| | |
| | | public void Load(BinaryReader br) |
| | | { |
| | | npcID = br.ReadInt32(); |
| | | resName = br.ReadString(); |
| | | ai = br.ReadByte(); |
| | | float _x = br.ReadSingle(); |
| | | float _y = br.ReadSingle(); |
| | |
| | | public Evt.E_EventType type; |
| | | public E_TriggerType triggerType; |
| | | public int prevID; |
| | | public int nextID; |
| | | public int id; |
| | | public int[] evevntIDs; |
| | | public Vector3 position; |
| | |
| | | triggerType = (E_TriggerType)br.ReadByte(); |
| | | type = (Evt.E_EventType)br.ReadByte(); |
| | | prevID = br.ReadInt32(); |
| | | nextID = br.ReadInt32(); |
| | | float _pX = br.ReadSingle(); |
| | | float _pY = br.ReadSingle(); |
| | | float _pZ = br.ReadSingle(); |
| | |
| | | |
| | | public override void OnInspectorGUI() |
| | | { |
| | | if (GUILayout.Button("测试")) |
| | | { |
| | | var m = MapData.LoadFormFile(10120); |
| | | if (m == null) |
| | | { |
| | | Debug.Log("加载失败"); |
| | | } |
| | | } |
| | | if (gUISkin == null) |
| | | { |
| | | gUISkin = AssetDatabase.LoadAssetAtPath<GUISkin>("Assets/Scripts/Core/MapEditor/Editor/EditorResources/EditorSkin.guiskin"); |
| | |
| | | taskmodel.TaskRefreshes((int)vNetData.MissionID, vNetData.DictKeyLen, vNetData.DictKey, (int)vNetData.DictValue);//任务字典 |
| | | taskmodel.Task0820(vNetData); |
| | | taskmodel.GetTaskGetOnNow((int)vNetData.MissionID, vNetData.DictKey); |
| | | PreFightMission.Instance.HandleNewPlayerMission(vNetData); |
| | | // PreFightMission.Instance.HandleNewPlayerMission(vNetData); |
| | | ClientSceneManager.Instance.Handle_0820(vNetData); |
| | | } |
| | | } |
| | | |
| | |
| | | }
|
| | |
|
| | | EffectConfig _effectModel = EffectConfig.Get(id);
|
| | | |
| | | if (_effectModel.setParent > 0)
|
| | | {
|
| | | _controller.transform.SetParent(parent);
|
| | |
| | | m_Hero.SelectTarget = null;
|
| | | }
|
| | |
|
| | | var _clientNpc = _target as GA_NpcClientFightNorm;
|
| | | if (_clientNpc.belongEventID != -1)
|
| | | {
|
| | | var _eventHandler = ClientSceneManager.Instance.GetEventHandler(_clientNpc.belongEventID) as EventRefreshNPCHandler;
|
| | | if (_eventHandler != null)
|
| | | {
|
| | | _eventHandler.NpcDead(_clientNpc.NpcConfig.NPCID);
|
| | | }
|
| | | }
|
| | | // 前期战斗只发送石头人的
|
| | | //if (1000 == _target.NpcConfig.NPCID)
|
| | | //{
|
| | |
| | | |
| | | public class GA_NpcClientFightNorm : GActorNpcFight |
| | | { |
| | | public int belongEventID; |
| | | private HeadUpName m_HeadUpName; |
| | | private LifeBar m_LifeBar; |
| | | |
| | |
| | | m_Obstacle = null; |
| | | } |
| | | |
| | | belongEventID = -1; |
| | | |
| | | base.OnUnit(); |
| | | } |
| | | |
| | |
| | | public class DungeonStage : Stage
|
| | | {
|
| | | public static Dictionary<MapArea.E_Type, List<MapArea>> s_MapAreaDict;
|
| | | private static List<TransferGroup> m_TransferGroupList = new List<TransferGroup>();
|
| | | public static MapType CurrentMapType;
|
| | | private H2Engine.MapData mapData;
|
| | |
|
| | | public override void Initialize()
|
| | | {
|
| | |
| | | SoundPlayer.Instance.PlayBackGroundMusic(mapResConfig.Music);
|
| | | SceneResourcesReplace();
|
| | |
|
| | | foreach (var _t in m_TransferGroupList)
|
| | | {
|
| | | _t.UnInit();
|
| | | }
|
| | | m_TransferGroupList.Clear();
|
| | | // 做一些前期战斗的预加载
|
| | | // if (!PreFightMission.Instance.IsFinished())
|
| | | // {
|
| | |
| | | _hero.SkillMgr.ResetAllCD();
|
| | | }
|
| | |
|
| | | HandleMapData();
|
| | | ClientSceneManager.Instance.Init();
|
| | |
|
| | | GA_Hero.s_MapSwitching = false;
|
| | | }
|
| | |
| | | base.UnInitialize();
|
| | |
|
| | | StopAllCoroutines();
|
| | | mapData = null;
|
| | |
|
| | | if (s_MapAreaDict != null)
|
| | | {
|
| | |
| | | CameraController.Instance.StopZoom();
|
| | | CameraController.Instance.StopShake();
|
| | | }
|
| | |
|
| | | ClientSceneManager.Instance.UnInit();
|
| | | GAMgr.Instance.UnInit();
|
| | | DropItemManager.ReleaseAll();
|
| | | SFXPlayUtility.Instance.Unitialize();
|
| | |
| | |
|
| | | DropItemManager.Update();
|
| | |
|
| | | foreach (var _trasfer in m_TransferGroupList)
|
| | | {
|
| | | _trasfer.Update();
|
| | | }
|
| | | ClientSceneManager.Instance.Update();
|
| | |
|
| | | // if (PreFightMission.Instance.IsFinished() == false)
|
| | | // {
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | private void HandleMapData()
|
| | | {
|
| | | mapData = H2Engine.MapData.LoadFormFile(PlayerDatas.Instance.baseData.MapID);
|
| | | if (mapData == null)
|
| | | {
|
| | | return;
|
| | | }
|
| | | // 目前版本只处理刷场景物件
|
| | | // foreach (var _trigger in mapData.triggers)
|
| | | // {
|
| | | // if (_trigger.triggerType != H2Engine.MapTrigger.E_TriggerType.EnterStage)
|
| | | // {
|
| | | // continue;
|
| | | // }
|
| | |
|
| | | // foreach (var _id in _trigger.evevntIDs)
|
| | | // {
|
| | | // var _event = mapData.eventDict[_id];
|
| | | // if (_event.type == H2Engine.Evt.E_EventType.SceneObject)
|
| | | // {
|
| | | // var _refreshSceneObject = _event as H2Engine.Evt_RefreshSceneObject;
|
| | | // if (_refreshSceneObject != null)
|
| | | // {
|
| | | // foreach (var _sceneObjData in _refreshSceneObject.sceneObjects)
|
| | | // {
|
| | | // var _prefab = InstanceResourcesLoader.LoadModelPrefab(InstanceResourcesLoader.raceSuffix, _sceneObjData.resName, false);
|
| | | // if (_prefab)
|
| | | // {
|
| | | // var _go = GameObject.Instantiate(_prefab);
|
| | | // _go.transform.position = _sceneObjData.position;
|
| | | // _go.transform.eulerAngles = _sceneObjData.eulerAngles;
|
| | | // }
|
| | | // }
|
| | | // }
|
| | | // }
|
| | | // }
|
| | | // }
|
| | | foreach (var _trasfer in mapData.transfers)
|
| | | {
|
| | | m_TransferGroupList.Add(new TransferGroup(_trasfer));
|
| | | }
|
| | | }
|
| | |
|
| | | private void HandleAutoFight()
|
| | | {
|
| | |
| | | default:
|
| | | break;
|
| | | }
|
| | | }
|
| | |
|
| | | public Vector3 GetCloseTransPoint(Vector3 pos)
|
| | | {
|
| | | // 遍历找到离给定点最近并且可寻路至的传送点 P
|
| | | // 找到 P点的 另一端 P1
|
| | | // 判断当前传入的点是否可以寻路至 P1
|
| | | // 不行的话重新寻找 可以的话返回 P1 的坐标
|
| | | float _compareDis;
|
| | | float _dis;
|
| | |
|
| | | foreach (var _p in m_TransferGroupList)
|
| | | {
|
| | |
|
| | | }
|
| | |
|
| | | return Vector3.zero;
|
| | | }
|
| | |
|
| | | private void SceneResourceReplace10010()
|
| New file |
| | |
| | | using H2Engine; |
| | | using System.Collections; |
| | | using System.Collections.Generic; |
| | | using UnityEngine; |
| | | |
| | | public class ClientSceneManager : Singleton<ClientSceneManager> |
| | | { |
| | | private H2Engine.MapData m_MapData; |
| | | private List<TransferGroup> m_TransferGroupList = new List<TransferGroup>(); |
| | | private Dictionary<int, IEventHandler> m_EventHandlerDict = new Dictionary<int, IEventHandler>(); |
| | | private List<IEventHandler> m_ReadyRemoveEventHandlerList = new List<IEventHandler>(); |
| | | |
| | | public void Handle_0820(H0820_tagMissionDict package) |
| | | { |
| | | if (package.DictKey.Equals("riggerID")) |
| | | { |
| | | SnxxzGame.Instance.StartCoroutine(DelayTrigger((int)package.DictValue)); |
| | | } |
| | | } |
| | | |
| | | private bool m_Inited = false; |
| | | |
| | | public void Init() |
| | | { |
| | | if (m_Inited) |
| | | { |
| | | return; |
| | | } |
| | | m_Inited = true; |
| | | |
| | | int _mapID = PlayerDatas.Instance.baseData.MapID; |
| | | m_MapData = MapData.LoadFormFile(_mapID); |
| | | if (m_MapData == null) |
| | | { |
| | | return; |
| | | } |
| | | |
| | | foreach (var _trasfer in m_MapData.transfers) |
| | | { |
| | | m_TransferGroupList.Add(new TransferGroup(_trasfer)); |
| | | } |
| | | |
| | | } |
| | | |
| | | public void UnInit() |
| | | { |
| | | foreach (var _t in m_TransferGroupList) |
| | | { |
| | | _t.UnInit(); |
| | | } |
| | | m_TransferGroupList.Clear(); |
| | | |
| | | m_Inited = false; |
| | | } |
| | | |
| | | public void Update() |
| | | { |
| | | foreach (var _trasfer in m_TransferGroupList) |
| | | { |
| | | _trasfer.Update(); |
| | | } |
| | | |
| | | m_ReadyRemoveEventHandlerList.Clear(); |
| | | |
| | | foreach (var _eventHandler in m_EventHandlerDict.Values) |
| | | { |
| | | _eventHandler.Update(); |
| | | if (_eventHandler.IsCompelete()) |
| | | { |
| | | m_ReadyRemoveEventHandlerList.Add(_eventHandler); |
| | | } |
| | | } |
| | | |
| | | foreach (var _eventHandler in m_ReadyRemoveEventHandlerList) |
| | | { |
| | | _eventHandler.UnInit(); |
| | | m_EventHandlerDict.Remove(_eventHandler.GetEventID()); |
| | | } |
| | | |
| | | m_ReadyRemoveEventHandlerList.Clear(); |
| | | } |
| | | |
| | | public IEventHandler GetEventHandler(int id) |
| | | { |
| | | if (m_EventHandlerDict.ContainsKey(id)) |
| | | { |
| | | return m_EventHandlerDict[id]; |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | public Vector3 GetCloseTransPoint(Vector3 pos) |
| | | { |
| | | // 遍历找到离给定点最近并且可寻路至的传送点 P |
| | | // 找到 P点的 另一端 P1 |
| | | // 判断当前传入的点是否可以寻路至 P1 |
| | | // 不行的话重新寻找 可以的话返回 P1 的坐标 |
| | | float _compareDis; |
| | | float _dis; |
| | | |
| | | foreach (var _p in m_TransferGroupList) |
| | | { |
| | | |
| | | } |
| | | |
| | | return Vector3.zero; |
| | | } |
| | | |
| | | private IEnumerator DelayTrigger(int id) |
| | | { |
| | | while (StageLoad.Instance.isLoading) |
| | | { |
| | | yield return null; |
| | | } |
| | | |
| | | if (m_MapData == null) |
| | | { |
| | | Init(); |
| | | } |
| | | |
| | | if (m_MapData.triggers == null |
| | | || m_MapData.triggers.Length == 0) |
| | | { |
| | | yield break; |
| | | } |
| | | |
| | | foreach (var _trigger in m_MapData.triggers) |
| | | { |
| | | if (_trigger.id != id) |
| | | { |
| | | continue; |
| | | } |
| | | |
| | | if (_trigger.evevntIDs == null |
| | | || _trigger.evevntIDs.Length == 0) |
| | | { |
| | | continue; |
| | | } |
| | | |
| | | foreach (var _eventID in _trigger.evevntIDs) |
| | | { |
| | | if (!m_MapData.eventDict.ContainsKey(_eventID)) |
| | | { |
| | | continue; |
| | | } |
| | | |
| | | var _event = m_MapData.eventDict[_eventID]; |
| | | if (_event.type == Evt.E_EventType.Enemy) |
| | | { |
| | | var _refreshEvent = new EventRefreshNPCHandler(); |
| | | _refreshEvent.Init(_event as Evt_RefreshMonster); |
| | | m_EventHandlerDict.Add(_refreshEvent.GetEventID(), _refreshEvent); |
| | | } |
| | | } |
| | | |
| | | break; |
| | | } |
| | | } |
| | | } |
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: b5880d5e8e289c74cab760bb8367869c |
| | | timeCreated: 1551698978 |
| | | licenseType: Pro |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| New file |
| | |
| | | using UnityEngine; |
| | | using H2Engine; |
| | | |
| | | public class EventRefreshNPCHandler : IEventHandler |
| | | { |
| | | private Evt_RefreshMonster m_Evt = null; |
| | | |
| | | private int m_DeadCount = 0; |
| | | private float m_Duration = 0; |
| | | private int m_RefreshCount = -1; |
| | | private float m_RefreshInterval = 0; |
| | | |
| | | public int GetEventID() |
| | | { |
| | | if (m_Evt != null) |
| | | { |
| | | return m_Evt.id; |
| | | } |
| | | return -1; |
| | | } |
| | | |
| | | public Evt.E_EventType GetEventType() |
| | | { |
| | | return Evt.E_EventType.Enemy; |
| | | } |
| | | |
| | | public void Init(Evt evt) |
| | | { |
| | | m_Evt = evt as Evt_RefreshMonster; |
| | | m_DeadCount = 0; |
| | | m_Duration = 0; |
| | | m_RefreshCount = -1; |
| | | m_RefreshInterval = 0; |
| | | } |
| | | |
| | | public void Update() |
| | | { |
| | | if (IsCompelete() && m_Duration > 0) |
| | | { |
| | | return; |
| | | } |
| | | |
| | | m_Duration += Time.deltaTime; |
| | | |
| | | // 此模式下刷出第一只怪 |
| | | if (m_Evt.refreshType == Evt_RefreshMonster.E_RefreshType.OneByOnePrevDie) |
| | | { |
| | | if (m_RefreshCount == -1) |
| | | { |
| | | RefreshNpc(); |
| | | } |
| | | } |
| | | else if (m_Evt.refreshType == Evt_RefreshMonster.E_RefreshType.All) |
| | | { |
| | | RefreshAll(); |
| | | } |
| | | else if (m_Evt.refreshType == Evt_RefreshMonster.E_RefreshType.OneByOneTime) |
| | | { |
| | | m_RefreshInterval += Time.deltaTime; |
| | | if (m_RefreshInterval > m_Evt.refreshParam) |
| | | { |
| | | m_RefreshInterval = 0; |
| | | RefreshNpc(); |
| | | } |
| | | } |
| | | } |
| | | |
| | | public void NpcDead(int npcID) |
| | | { |
| | | m_DeadCount += 1; |
| | | Debug.LogFormat("通知死亡: {0}, 当前计数: {1}", npcID, m_DeadCount); |
| | | if (m_Evt.refreshType == Evt_RefreshMonster.E_RefreshType.OneByOnePrevDie) |
| | | { |
| | | RefreshNpc(); |
| | | } |
| | | |
| | | CA225_tagCMClientTaskCount _a225 = new CA225_tagCMClientTaskCount |
| | | { |
| | | CountID = (uint)npcID |
| | | }; |
| | | GameNetSystem.Instance.SendInfo(_a225); |
| | | } |
| | | |
| | | private void RefreshNpc() |
| | | { |
| | | m_RefreshCount += 1; |
| | | if (m_RefreshCount >= 0 && m_RefreshCount < m_Evt.monsters.Length) |
| | | { |
| | | var _data = m_Evt.monsters[m_RefreshCount]; |
| | | var _npc = GAMgr.Instance.ReqClntFightNpc<GA_NpcClientFightNorm>((uint)_data.npcID, E_ActorGroup.Enemy); |
| | | _npc.Pos = _data.position; |
| | | _npc.belongEventID = m_Evt.id; |
| | | } |
| | | } |
| | | |
| | | private void RefreshAll() |
| | | { |
| | | if (m_RefreshCount < m_Evt.monsters.Length) |
| | | { |
| | | foreach (var _data in m_Evt.monsters) |
| | | { |
| | | var _npc = GAMgr.Instance.ReqClntFightNpc<GA_NpcClientFightNorm>((uint)_data.npcID, E_ActorGroup.Enemy); |
| | | _npc.Pos = _data.position; |
| | | _npc.belongEventID = m_Evt.id; |
| | | } |
| | | m_RefreshCount = m_Evt.monsters.Length; |
| | | } |
| | | } |
| | | |
| | | public void UnInit() |
| | | { |
| | | Debug.LogFormat("事件: {0} => UnInit()", m_Evt.id); |
| | | } |
| | | |
| | | public bool IsCompelete() |
| | | { |
| | | if (m_Evt == null) |
| | | { |
| | | return true; |
| | | } |
| | | |
| | | if (m_Evt.overCondition == Evt_RefreshMonster.E_OverCondition.DeadCount) |
| | | { |
| | | if (m_Evt.conditionParam <= 0) |
| | | { |
| | | return m_DeadCount >= m_Evt.monsters.Length; |
| | | } |
| | | |
| | | return m_DeadCount >= m_Evt.conditionParam; |
| | | } |
| | | else if (m_Evt.overCondition == Evt_RefreshMonster.E_OverCondition.Time) |
| | | { |
| | | return m_Duration >= m_Evt.conditionParam && m_DeadCount >= m_Evt.monsters.Length; |
| | | } |
| | | return false; |
| | | } |
| | | } |
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: c7f7e93eba93cd044bdd4b6ddc9aa334 |
| | | timeCreated: 1551667471 |
| | | licenseType: Pro |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| New file |
| | |
| | | using H2Engine; |
| | | |
| | | public interface IEventHandler |
| | | { |
| | | int GetEventID(); |
| | | Evt.E_EventType GetEventType(); |
| | | void Init(Evt evt); |
| | | bool IsCompelete(); |
| | | void Update(); |
| | | void UnInit(); |
| | | } |
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: 8831940d4fa557e42825777dcd3ca1b7 |
| | | timeCreated: 1551684662 |
| | | licenseType: Pro |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| New file |
| | |
| | | using H2Engine; |
| | | using UnityEngine; |
| | | |
| | | public class TriggerHandler |
| | | { |
| | | private MapTrigger m_Trigger; |
| | | |
| | | public TriggerHandler(MapTrigger trigger) |
| | | { |
| | | m_Trigger = trigger; |
| | | } |
| | | } |
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: d4b520a4d7e5d434a8cbbfa2f21eaadc |
| | | timeCreated: 1551678527 |
| | | licenseType: Pro |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| | |
| | | void SkillButton()
|
| | | {
|
| | | WindowCenter.Instance.Close<MainInterfaceWin>();
|
| | | WindowCenter.Instance.Open<SkillWin>();
|
| | |
|
| | | var skillModel = ModelCenter.Instance.GetModel<SkillModel>();
|
| | | var treasureSkillModel = ModelCenter.Instance.GetModel<TreasureSkillModel>();
|
| | | var talentModel = ModelCenter.Instance.GetModel<TalentModel>();
|
| | | if (skillModel.passSkillRedpoint.state == RedPointState.Simple)
|
| | | {
|
| | | WindowCenter.Instance.Open<SkillWin>(false, 1);
|
| | | }
|
| | | else if (treasureSkillModel.redpoint.state == RedPointState.Simple)
|
| | | {
|
| | | WindowCenter.Instance.Open<SkillWin>(false, 2);
|
| | | }
|
| | | else if (talentModel.talentRedpoint.state == RedPointState.Simple)
|
| | | {
|
| | | WindowCenter.Instance.Open<SkillWin>(false, 3);
|
| | | }
|
| | | else
|
| | | {
|
| | | WindowCenter.Instance.Open<SkillWin>();
|
| | | }
|
| | |
|
| | | //DesignDebug.Log("技能按钮");
|
| | | }
|
| | |
| | | #endregion
|
| | |
|
| | | #region 红点
|
| | | Redpoint talentRedpoint = new Redpoint(103, 10303);
|
| | | public Redpoint talentRedpoint = new Redpoint(103, 10303);
|
| | | void UpdateRedpoint()
|
| | | {
|
| | | talentRedpoint.state = RedPointState.None;
|
| | |
| | |
|
| | | Display();
|
| | |
|
| | | List<int> list;
|
| | | if (model.TryGetSkills(out list))
|
| | | {
|
| | | var index = list.IndexOf(model.selectSkill);
|
| | | if (index != -1)
|
| | | {
|
| | | m_Controller.JumpIndex(index);
|
| | | }
|
| | | }
|
| | |
|
| | | model.treasureSkillRefresh += TreasureSkillRefresh;
|
| | | model.selectRefresh += SelectRefresh;
|
| | | model.skillLevelUpRefresh += SkillLevelUpRefresh;
|
| | |
| | | private Vector2 _start;
|
| | | private Vector2 _end;
|
| | |
|
| | | private int _triggerID;
|
| | |
|
| | | public override void OnInspectorGUI()
|
| | | {
|
| | | GUILayout.Space(5);
|
| | |
|
| | | EditorGUILayout.BeginHorizontal();
|
| | | _triggerID = EditorGUILayout.IntField("触发器ID", _triggerID);
|
| | | if (GUILayout.Button("触发客户端触发器"))
|
| | | {
|
| | | }
|
| | | EditorGUILayout.EndHorizontal();
|
| | |
|
| | | if (GUILayout.Button("清空任务"))
|
| | | {
|
| | | CA225_tagCMClientTaskCount _a225 = new CA225_tagCMClientTaskCount
|
| | | {
|
| | | CountID = 10000
|
| | | };
|
| | | GameNetSystem.Instance.SendInfo(_a225);
|
| | | }
|
| | |
|
| | | EditorGUILayout.LabelField("Log存储路径", RuntimeLogUtility.s_LogPath);
|
| | |
|
| | |
| | | RuntimeLogUtility.TEST_CLIENT_PVP = EditorGUILayout.Toggle("模拟客户端PVP状态", RuntimeLogUtility.TEST_CLIENT_PVP);
|
| | | RuntimeLogUtility.TEST_CLIENT_PVP_AI = EditorGUILayout.Toggle("模拟客户端PVP的AI状态", RuntimeLogUtility.TEST_CLIENT_PVP_AI);
|
| | |
|
| | |
|
| | | if (GUILayout.Button("创建PVP敌方"))
|
| | | {
|
| | | GActorPlayerBase.PlayerInfo _playerInfo = new GActorPlayerBase.PlayerInfo();
|