少年修仙传客户端代码仓库
client_Hale
2019-01-23 0246200e41030f6da9cc16c8d88631b8dabbcfec
382 场景刷动态物件配置逻辑
1个文件已修改
99 ■■■■■ 已修改文件
Fight/Stage/Dungeon/DungeonStage.cs 99 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/Stage/Dungeon/DungeonStage.cs
@@ -261,43 +261,41 @@
    private void HandleMapData()
    {
        mapData = H2Engine.MapData.LoadFormFile(PlayerDatas.Instance.baseData.MapID);
        if (mapData == null)
        {
            Debug.LogFormat("------------------ 数据是空的");
            return;
        }
        // 目前版本只处理刷场景物件
        foreach (var _trigger in mapData.triggers)
        {
            if (_trigger.triggerType != H2Engine.MapTrigger.E_TriggerType.EnterStage)
            {
                Debug.Log("_trigger.triggerType: " + _trigger.triggerType);
                continue;
            }
        // 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 _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;
        //                     }
        //                 }
        //             }
        //         }
        //     }
        // }
    }
    private void HandleAutoFight()
@@ -475,6 +473,35 @@
            }
        }
        var _func = Config.Instance.Get<FuncConfigConfig>("MapObjectConfig");
        if (_func != null)
        {
            var _json = LitJson.JsonMapper.ToObject(_func.Numerical1);
            var _mapID = PlayerDatas.Instance.baseData.MapID.ToString();
            if ((_json as IDictionary).Contains(_mapID))
            {
                _json = _json[_mapID];
                bool _isShow = (bool)_json["show"];
                if (_isShow)
                {
                    string _effectName = _json["obj"].ToString();
                    string _parent = _json["parent"].ToString();
                    var _prefab = InstanceResourcesLoader.LoadModelPrefab(InstanceResourcesLoader.raceSuffix, _effectName, false);
                    if (_prefab)
                    {
                        var _go = GameObject.Instantiate(_prefab);
                        var _parentNode = GameObject.Find(_parent);
                        _go.transform.SetParent(_parentNode.transform);
                        _go.transform.localPosition = Vector3.zero;
                        _go.transform.localRotation = Quaternion.identity;
                        _go.transform.localScale = Vector3.one;
                    }
                }
            }
        }
    }