The SetBool function isn't working when altering dictionary.
Hi, I am trying to access and alter a bool from a dictionary. Unity says that "'bool' does not contain a definition for 'SetBool' and no accessible extension method 'SetBool' accepting a first argument of type 'bool' could be found". When I have tried to alter the tilemap I can both use the keywords SetColor and SetTileFlags but as mentioned above SetBool doesn't work. Any help will be greatly appreciated!
This is the Access:
void Update()
{
if (Input.GetMouseButtonDown(0))
{
Ray mouseWorldPosition = Camera.main.ScreenPointToRay(new Vector3(Input.mousePosition.x, Input.mousePosition.y, 0));
//Converts origin to Vector3
x = mouseWorldPosition.origin.x;
y = mouseWorldPosition.origin.y;
// Rounds Vector3
Vector3 selectedWorldPosition = new Vector3(Mathf.RoundToInt(x), Mathf.RoundToInt(y), 0);
//This part is the problem
var tiles = GameTiles.instance.tiles; // Tiles is the name of the dictionary
if (tiles.TryGetValue(selectedWorldPosition, out _tile))
{
_tile.PositionOccupied.SetBool(_tile.LocalPlace, _tile.PositionOccupied = true);
}
}
}
}
The Dictionary:
public class GameTiles : MonoBehaviour
{
public static GameTiles instance;
public Tilemap Tilemap;
public Dictionary<Vector3, WorldTile> tiles;
private void Awake()
public void GetWorldTiles()
{
tiles = new Dictionary<Vector3, WorldTile>();
foreach (Vector3Int pos in Tilemap.cellBounds.allPositionsWithin)
{
var localPlace = new Vector3Int(pos.x, pos.y, 0);
if (!Tilemap.HasTile(localPlace)) continue;
var tile = new WorldTile
{
LocalPlace = localPlace,
WorldLocation = Tilemap.CellToWorld(localPlace),
PositionOccupied = false,
};
tiles.Add(tile.WorldLocation, tile);
}
}
} //FYI I removed the parts that weren't relevant to the question
PositionOccupied received its data from this:
public class WorldTile
{
public Vector3Int LocalPlace { get; set; }
public Vector3 WorldLocation { get; set; }
public bool PositionOccupied { get; set; }
}
Thanks again :)
Your answer

Follow this Question
Related Questions
Load same scene twice 1 Answer
How to dynamically set what Tiles are being rendered in the 2017.2 Tilemap? 0 Answers
Updating tilemap tile sprites? 0 Answers
Tilemap select tile with mouse issue 1 Answer
My Tile Palette becomes a grey mess 3 Answers