public bool Condition(IEntity user, EntityCoordinates location, Direction direction) { if (TargetTiles == null) { return(true); } var tileFound = location.GetTileRef(); if (tileFound == null) { return(false); } var tile = tileFound.Value.Tile.GetContentTileDefinition(); foreach (var targetTile in TargetTiles) { if (tile.Name == targetTile) { return(true); } } return(false); }
public bool Condition(IEntity user, EntityCoordinates location, Direction direction) { var tileRef = location.GetTileRef(); if (tileRef == null || tileRef.Value.IsSpace()) { return(!_failIfSpace); } return(!tileRef.Value.IsBlockedTurf(_filterMobs)); }
public static bool TryGetTileRef(this EntityCoordinates coordinates, [NotNullWhen(true)] out TileRef?turf) { return((turf = coordinates.GetTileRef()) != null); }