Esempio n. 1
0
        // Token: 0x060036EF RID: 14063 RVA: 0x000F4278 File Offset: 0x000F2478
        public bool InitializeTerrain(ConfigDataBattlefieldInfo battlefieldInfo, IConfigDataLoader configDataLoader)
        {
            if (!BJLuaObjHelper.IsSkipLuaHotfix && this.TryInitHotFix("") && this.m_InitializeTerrainConfigDataBattlefieldInfoIConfigDataLoader_hotfix != null)
            {
                return(Convert.ToBoolean(this.m_InitializeTerrainConfigDataBattlefieldInfoIConfigDataLoader_hotfix.call(new object[]
                {
                    this,
                    battlefieldInfo,
                    configDataLoader
                })));
            }
            BJLuaObjHelper.IsSkipLuaHotfix = false;
            if (battlefieldInfo.Terrains.Count != battlefieldInfo.Width * battlefieldInfo.Height)
            {
                return(false);
            }
            if (battlefieldInfo.Width != this.m_width || battlefieldInfo.Height != this.m_height)
            {
                return(false);
            }
            int num = 0;

            for (int i = 0; i < this.m_height; i++)
            {
                for (int j = 0; j < this.m_width; j++)
                {
                    int           key           = battlefieldInfo.Terrains[num++];
                    BattleMapCell battleMapCell = this.m_cells[i, j];
                    battleMapCell.m_terrain = configDataLoader.GetConfigDataTerrainInfo(key);
                    battleMapCell.m_actor   = null;
                    battleMapCell.m_region  = 0;
                }
            }
            return(true);
        }
        // Token: 0x06009731 RID: 38705 RVA: 0x002B31F8 File Offset: 0x002B13F8
        private void CreateMapTerrainFx(ConfigDataBattlefieldInfo battlefieldInfo, GameObject parent)
        {
            if (!BJLuaObjHelper.IsSkipLuaHotfix && this.TryInitHotFix("") && this.m_CreateMapTerrainFxConfigDataBattlefieldInfoGameObject_hotfix != null)
            {
                this.m_CreateMapTerrainFxConfigDataBattlefieldInfoGameObject_hotfix.call(new object[]
                {
                    this,
                    battlefieldInfo,
                    parent
                });
                return;
            }
            BJLuaObjHelper.IsSkipLuaHotfix = false;
            this.ClearMapTerrainFx();
            IConfigDataLoader configDataLoader = GameManager.Instance.ConfigDataLoader as IConfigDataLoader;
            int num = 0;

            for (int i = 0; i < battlefieldInfo.Height; i++)
            {
                for (int j = 0; j < battlefieldInfo.Width; j++)
                {
                    int key = battlefieldInfo.Terrains[num++];
                    ConfigDataTerrainInfo configDataTerrainInfo = configDataLoader.GetConfigDataTerrainInfo(key);
                    if (configDataTerrainInfo != null && !string.IsNullOrEmpty(configDataTerrainInfo.Fx))
                    {
                        GameObject asset = AssetUtility.Instance.GetAsset <GameObject>(configDataTerrainInfo.Fx);
                        if (asset != null)
                        {
                            GridPosition gridPosition = new GridPosition(j, i);
                            GameObject   gameObject   = UnityEngine.Object.Instantiate <GameObject>(asset, parent.transform, false);
                            gameObject.transform.localPosition = this.GridPositionToWorldPosition(gridPosition);
                            this.m_mapTerrainFxs[gridPosition] = gameObject;
                        }
                    }
                }
            }
        }