Grass Sprites now randomized

This commit is contained in:
j-weissen 2022-06-23 14:56:39 +02:00
parent f5e4c8b789
commit 9151d987a7
4 changed files with 20 additions and 9 deletions

View file

@ -6,8 +6,7 @@ using UnityEngine;
public class TileBehaviour : MonoBehaviour { public class TileBehaviour : MonoBehaviour {
private BaseTile _tile; private BaseTile _tile;
public virtual BaseTile Tile {
public BaseTile Tile {
get => _tile; get => _tile;
set { set {
_tile = value; _tile = value;

View file

@ -12,8 +12,8 @@ public class TileController : MonoBehaviour {
// Start is called before the first frame update // Start is called before the first frame update
void Start() { void Start() {
Camera camera = cameraGameObject.GetComponent<Camera>();
Tiles = new List<List<GameObject>>(); Tiles = new List<List<GameObject>>();
Camera camera = cameraGameObject.GetComponent<Camera>();
Vector3 screen = camera.ViewportToWorldPoint(new Vector3(1, 1, camera.nearClipPlane)); Vector3 screen = camera.ViewportToWorldPoint(new Vector3(1, 1, camera.nearClipPlane));
int x = Convert.ToInt32(Math.Ceiling(screen.x)); int x = Convert.ToInt32(Math.Ceiling(screen.x));
int y = Convert.ToInt32(Math.Ceiling(screen.y)); int y = Convert.ToInt32(Math.Ceiling(screen.y));

View file

@ -4,8 +4,8 @@ using UnityEngine;
namespace Tiles { namespace Tiles {
public abstract class BaseTile { public abstract class BaseTile {
private Sprite _sprite; protected Sprite _sprite;
public Sprite Sprite => _sprite; public virtual Sprite Sprite => _sprite;
protected BaseTile(String pathToImageFile) { protected BaseTile(String pathToImageFile) {
_sprite = GenerateSpriteFromFile(pathToImageFile); _sprite = GenerateSpriteFromFile(pathToImageFile);

View file

@ -2,11 +2,23 @@
namespace Tiles namespace Tiles
{ {
public class GrassTile : BaseTile public class GrassTile : BaseTile {
{ private Sprite[] _sprites;
public GrassTile() : base("Assets/Farming Asset Pack/Split Assets/farming_tileset_000.png") public override Sprite Sprite
{ {
get
{
int rand = Random.Range(0, _sprites.Length);
return _sprites[rand];
}
}
public GrassTile() : base("Assets/Farming Asset Pack/Split Assets/farming_tileset_000.png") {
_sprites = new[]
{
GenerateSpriteFromFile("Assets/Farming Asset Pack/Split Assets/farming_tileset_000.png"),
GenerateSpriteFromFile("Assets/Farming Asset Pack/Split Assets/farming_tileset_001.png"),
GenerateSpriteFromFile("Assets/Farming Asset Pack/Split Assets/farming_tileset_002.png")
};
} }
} }
} }