diff options
Diffstat (limited to 'client/map/tiles/wall_tile.gd')
| -rw-r--r-- | client/map/tiles/wall_tile.gd | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/client/map/tiles/wall_tile.gd b/client/map/tiles/wall_tile.gd index b8109516..244b2294 100644 --- a/client/map/tiles/wall_tile.gd +++ b/client/map/tiles/wall_tile.gd @@ -14,7 +14,7 @@ # along with this program. If not, see <https://www.gnu.org/licenses/>. # class_name WallTile -extends Floor +extends Tile static func create_material(color: Color): var mat = StandardMaterial3D.new() @@ -56,8 +56,8 @@ func _init(ctx: TileFactory.TileCC): for start in range(4): var series = 0 for i in range(4): - var i_name = ctx.neighbors[(start + i) % 4] - if is_wall(i_name): + var neighbor: Array = ctx.neighbors[(start + i) % 4] + if is_wall(neighbor): series += 1 else: break @@ -68,7 +68,7 @@ func _init(ctx: TileFactory.TileCC): if max_series == 1: facing = max_idx kind = WallKind.STRAIGHT - if not env.is_empty() and env.has(ctx.neighbors[(facing + 1) % 4]) or ctx.neighbors[(facing + 1) % 4] == null: + if not env.is_empty() and G.has_one(env, ctx.neighbors[(facing + 1) % 4]) or ctx.neighbors[(facing + 1) % 4].is_empty(): facing = (facing + 2) % 4 elif max_series == 2: facing = max_idx @@ -86,5 +86,5 @@ func add_dyed_mesh(ctx: TileFactory.TileCC, node: Node3D, node_name = "Mesh", su meshi.set_surface_override_material(surface, MATERIALS.get(ctx.tile_name.variant, MATERIALS["green"])) base.add_child(node) -func is_wall(tile_name_t) -> bool: - return walls.has(tile_name_t) +func is_wall(neighbor: Array) -> bool: + return G.has_one(neighbor, walls) |