NLDClient-yudde/ProjectNLD/Assets/Code/Scripts/GameWrapper/Map/Map.Runtime.cs

1 line
1.4 KiB
C#

using System.Collections.Generic;
public partial class Map
{
private List<RuntimeBlockProperty> _runTimeTerrainProperty = new List<RuntimeBlockProperty>();
public List<RuntimeBlockProperty> runtimeTerrainProperty => _runTimeTerrainProperty;
public struct RuntimeBlockProperty
{
public bool selectable;
public int crossLevel;
public bool banAttack;
//public bool banGFX;
//public bool isEmptyBlock;
public RuntimeBlockProperty(TerrainTypeProperty data)
{
selectable = data.selectable;
crossLevel = data.crossLevel;
banAttack = data.banAttack;
// banGFX = data.banGFX;
// isEmptyBlock = data.emptyBlock;
}
}
public void SetRuntimeBlockProperty(int cellIndex, RuntimeBlockProperty data)
{
if (cellIndex >= 0 && cellIndex < _runTimeTerrainProperty.Count)
{
_runTimeTerrainProperty[cellIndex] = data;
UpdateTGSByData(_terrainGridSystem, cellIndex, data);
}
}
public bool GetRuntimeBlockProperty(int cellIndex, out RuntimeBlockProperty data)
{
if (cellIndex >= 0 && cellIndex < _runTimeTerrainProperty.Count)
{
data = _runTimeTerrainProperty[cellIndex];
return true;
}
data = new RuntimeBlockProperty();
return false;
}
}