protected virtual void Awake() { grid = TileGrid.GetGrid; if (category == Category.Walls) { walkable = false; } IsWalkable = true; sprite = transform.GetChild(0).gameObject; //Add surrounding effect to make the wall stand out if (category == Category.Walls) { GameObject go = new GameObject("Wall"); go.transform.position = transform.position; go.transform.SetParent(sprite.transform); go.AddComponent <SpriteRenderer>(); wallVisual = go.GetComponent <SpriteRenderer>(); wallVisual.sortingOrder = sprite.GetComponent <SpriteRenderer>().sortingOrder + 1; wallVisual.color = AverageColorFromTexture(sprite.GetComponent <SpriteRenderer>().sprite); } else if (category == Category.Foliage) { placeholder.GetComponent <SpriteRenderer>().sprite = grid.GetSpriteOfTile(tileUnderneath); } }
protected virtual void Start() { Built = built; if (!built) { backgroundTile = new GameObject("BackgroundTile"); backgroundTile.transform.position = transform.position; backgroundTile.transform.SetParent(transform); //backgroundTile = Instantiate(new GameObject(), transform.position, transform.rotation, transform); backgroundTile.AddComponent <SpriteRenderer>(); backgroundTile.GetComponent <SpriteRenderer>().sprite = grid.GetSpriteOfTile(tileUnderneath); backgroundTile.GetComponent <SpriteRenderer>().sortingOrder = placeholder.GetComponent <SpriteRenderer>().sortingOrder - 1; } }