少年修仙传客户端代码仓库
client_linchunjie
2019-05-23 2c15cd1ba3b2bd6ec52b9b835a4c549a9a46287c
3335 缥缈仙域优化
1个文件已修改
33 ■■■■■ 已修改文件
System/HazyRegion/ClientHazyGrassStage.cs 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/HazyRegion/ClientHazyGrassStage.cs
@@ -7,7 +7,7 @@
{
    static readonly Vector3 PlayerBornPosition1 = new Vector3(19.401f, 4.985f, 5.494f);
    static List<Vector3> s_NpcPositions = new List<Vector3>();
    static List<int> s_RandomIndexs = new List<int>();
    static readonly int s_EnemyNpcId = 40208005;
@@ -29,7 +29,7 @@
    {
        base.Initialize();
        s_NpcPositions.Clear();
        s_RandomIndexs.Clear();
        s_Sid2NpcIds.Clear();
        s_CollectNpcs.Clear();
        s_Sid2NpcIndexs.Clear();
@@ -124,7 +124,13 @@
    void InitializeNpc()
    {
        var config = ScriptableObjectLoader.LoadSoHazyMapNpc(ClientDungeonStageUtility.clientMapId);
        s_NpcPositions.AddRange(config.GetNpcPositions());
        var positions = config.GetNpcPositions();
        s_RandomIndexs.Clear();
        for (int i = 0; i < positions.Count; i++)
        {
            s_RandomIndexs.Add(i);
        }
        var mapId = model.GetGrassMapId(hazyRegionModel.processingIncidentId);
        var npcInfos = model.GetGrassNpcInfos(mapId);
@@ -143,8 +149,6 @@
                    continue;
                }
                hasInitializedNpc = true;
                for (int j = 0; j < count; j++)
                {
                    var index = -1;
@@ -155,12 +159,15 @@
                    if (jsonInfoIndex != -1)
                    {
                        index = npcJsonDatas[jsonInfoIndex].index;
                        npcJsonDatas.RemoveAt(jsonInfoIndex);
                    }
                    if (index == -1)
                    {
                        break;
                    }
                    InitializeNpc(npcId, index);
                    s_RandomIndexs.Remove(index);
                }
            }
        }
@@ -172,16 +179,15 @@
            for (int j = 0; j < count; j++)
            {
                var index = UnityEngine.Random.Range(0, s_NpcPositions.Count);
                InitializeNpc(npcId, index);
                var index = UnityEngine.Random.Range(0, s_RandomIndexs.Count);
                InitializeNpc(npcId, s_RandomIndexs[index]);
                hasInitializedNpc = true;
                s_RandomIndexs.RemoveAt(index);
            }
        }
        if (hasInitializedNpc)
        {
            var positions = config.GetNpcPositions();
            var enemyPosition = positions[UnityEngine.Random.Range(0, positions.Count)];
            if (ClientDungeonStageUtility.clientMapId == HazyGrassModel.FAIRY_CLIENTDATAMAP)
@@ -198,7 +204,12 @@
    void InitializeNpc(int npcId, int index)
    {
        var position = s_NpcPositions[index];
        hasInitializedNpc = true;
        var config = ScriptableObjectLoader.LoadSoHazyMapNpc(ClientDungeonStageUtility.clientMapId);
        var positions = config.GetNpcPositions();
        var position = positions[index];
        GA_NpcClientCollect _npc = GAMgr.Instance.ReqClntNoFightNpc<GA_NpcClientCollect>((uint)npcId,
                E_ActorGroup.FuncNpc);
@@ -216,8 +227,6 @@
        {
            s_NpcCounts[npcId] += 1;
        }
        s_NpcPositions.RemoveAt(index);
        localNpcJsons.Add(new NpcJsonInfo()
        {