/// <summary> /// ターンを開始します /// </summary> /// <param name="team">Team.</param> public void StartTurn(Main_Unit.Teams team) { currentTeam = team; foreach (var unit in unitContainer.GetComponentsInChildren <Main_Unit>()) { unit.IsMoved = team != unit.team; } if (ais.ContainsKey(team)) { touchBlocker.SetActive(true); var ai = ais[team]; ai.Run(); } else { touchBlocker.SetActive(false); } }
/// <summary> /// 指定座標にユニットを配置します /// </summary> /// <param name="x">The x coordinate.</param> /// <param name="y">The y coordinate.</param> /// <param name="unitPrefab">Unit prefab.</param> public void PutUnit(int x, int y, Main_Unit unitPrefab, Main_Unit.Teams team) { var unit = Instantiate(unitPrefab); unit.team = team; switch (unit.team) { case Main_Unit.Teams.Player2: // 敵ユニットはちょっと色を変えて反転 var image = unit.GetComponent <Image>(); image.color = new Color(1f, 0.7f, 0.7f); var scale = image.transform.localScale; scale.x *= -1f; image.transform.localScale = scale; break; } unit.gameObject.SetActive(true); unit.transform.SetParent(unitContainer); unit.transform.position = cells.First(c => c.X == x && c.Y == y).transform.position; unit.x = x; unit.y = y; }
public void SetAI(Main_Unit.Teams team, Main_AI ai) { ai.Initialize(this); ais[team] = ai; }