Example #1
0
 public void TrySetType(Vector2Int pos, DatabaseSprite.TypeTile type)
 {
     if (relativePosition.ContainsKey(pos))
     {
         relativePosition[pos] = new Tuple <GameObject, DatabaseSprite.TypeTile>(relativePosition[pos].Item1, type);
     }
 }
Example #2
0
    Sprite getSprite(DatabaseSprite.TypeTile type, Vector2Int pos)
    {
        pos += bottomLeft;
        DatabaseSprite.TypeTile xP = tileMan.GetType(pos + new Vector2Int(1, 0));
        DatabaseSprite.TypeTile xM = tileMan.GetType(pos + new Vector2Int(-1, 0));
        DatabaseSprite.TypeTile yP = tileMan.GetType(pos + new Vector2Int(0, 1));
        DatabaseSprite.TypeTile yM = tileMan.GetType(pos + new Vector2Int(0, -1));

        int number = 0;

        if (type == DatabaseSprite.TypeTile.FLOOR)
        {
            if (xP == DatabaseSprite.TypeTile.FLOOR)
            {
                number += 0b0001;
            }
            if (yM == DatabaseSprite.TypeTile.FLOOR)
            {
                number += 0b0010;
            }
            if (xM == DatabaseSprite.TypeTile.FLOOR)
            {
                number += 0b0100;
            }
            if (yP == DatabaseSprite.TypeTile.FLOOR)
            {
                number += 0b1000;
            }
            return(db.floor.GetSprite(number));
        }
        if (type == DatabaseSprite.TypeTile.WALL)
        {
            if (xP == DatabaseSprite.TypeTile.WALL)
            {
                number += 0b0001;
            }
            if (yM == DatabaseSprite.TypeTile.WALL)
            {
                number += 0b0010;
            }
            if (xM == DatabaseSprite.TypeTile.WALL)
            {
                number += 0b0100;
            }
            if (yP == DatabaseSprite.TypeTile.WALL)
            {
                number += 0b1000;
            }
            return(db.wall.GetSprite(number));
        }
        return(null);
    }