using System; using SUISSEngine; using UnityEngine; [RequireComponent(typeof(GridTile), typeof(Road))] public class Bridge : MonoBehaviour { private void OnGridTileStatusChanged() { if (!this.didFixFrontZ && this.front != null) { GridTile component = base.GetComponent(); if (component.status == GridTile.Status.Preview || component.status == GridTile.Status.Created) { IsometricGrid grid = IsometricIsland.GetParent(this).grid; GridIndex index = component.index; index.v += 2; grid.GetZForGridIndex(index); Vector3 localPosition = this.front.transform.localPosition; localPosition.z = -base.transform.localPosition.z + grid.GetZForGridIndex(index); this.front.transform.localPosition = localPosition; this.didFixFrontZ = true; } } } public GameObject front; private bool didFixFrontZ; }