public void DeployUnit(TileController initialTile) { IEnterTile[] enterTileReactors; _myTile = initialTile; _myTile._myUnit = this; _myTile._isOccupied = true; transform.position = initialTile.transform.position; ITileBehaviour myTileBehaviour = initialTile.gameObject.GetComponent <ITileBehaviour>(); if (myTileBehaviour != null) { myTileBehaviour.EnterTileAction(this); } enterTileReactors = GetComponents <IEnterTile>(); foreach (IEnterTile reactor in enterTileReactors) { reactor.EnterTileAction(_myTile); } if (_myTile.IsDesignerMode()) { ChangeMode("designer"); } else { ChangeMode("player"); } _mySpriteRenderer.sortingOrder = _myTile.GetGridPosition().y; }
public void InitializeTile(GridPosition position, BoardGrid myBoardGrid) { _mySpriteRenderer = GetComponent <SpriteRenderer>(); _myCollider = GetComponent <PolygonCollider2D>(); _myDesignerCollider = GetComponent <BoxCollider2D>(); _mySpriteRenderer.sprite = _tile.tileSprite; _crosshairSpriteRenderer.enabled = false; _crosshairSpriteRenderer.sprite = _crosshairSprite; _overlayColorSpriteRenderer.sprite = _plainTileSprite; _gridPosition = position; _previousColor = _overlayColorSpriteRenderer.color; _previousMarker = _overlayMarkerSpriteRenderer.sprite; _myUnit = null; _isOccupied = false; _gCost = 0; _hCost = 0; _fCost = 0; _myBehaviour = GetComponent <ITileBehaviour>(); _myBoard = myBoardGrid; _isDesignerMode = false; _myDesignerCollider.enabled = false; }