NLDClient-yudde/ProjectNLD/Assets/Code/Scripts/Gameplay/LegionBattle/View/FightLineCell2.cs

58 lines
1.6 KiB
C#

using System.Collections.Generic;
using UnityEngine;
namespace Gameplay.LegionBattle.View
{
public class FightLineCell2
{
public readonly int cellIndex;
public int standValue;
public FightLineStandUnit2 claimUnit;
public List<FightLineCell2> neighCells = new List<FightLineCell2>();
private GameObject _rootObj;
private GameObject[] _colorObjs;
public int iteration;
public bool isVisited;
public FightLineCell2(int cellIndex)
{
this.cellIndex = cellIndex;
}
public void CreateView(GameObject sampleObj, Vector3 worldPos)
{
_rootObj = Object.Instantiate(sampleObj);
_rootObj.hideFlags = HideFlags.HideAndDontSave | HideFlags.HideInHierarchy | HideFlags.HideInInspector;
_rootObj.transform.position = worldPos;
_colorObjs = new GameObject[3];
var colorTransform = _rootObj.transform.Find("color");
for (int i = 0; i < _colorObjs.Length; i++)
{
var colorObj = colorTransform.GetChild(i).gameObject;
_colorObjs[i] = colorObj;
colorObj.SetActive(false);
}
}
public void UpdateColor()
{
var colorIndex = standValue + 1;
for (int i = 0; i < _colorObjs.Length; i++)
{
var colorObj = _colorObjs[i];
colorObj.SetActive(colorIndex == i);
}
}
public void DestroyView()
{
Object.Destroy(_rootObj);
}
}
}