class_name FireWallTile extends Tile func _init(button: Button, is_white: bool) -> void: super._init(button, is_white) tile_name = "Fire Wall" description = "Captures any piece that moves through" type = TileType.GENERAL func update_appearance() -> void: if is_effect_active() && base_button: var style = StyleBoxFlat.new() var tile_color = Color(1, 0.4, 0) # Orange for fire var base_color = Color(0.8, 0.8, 0.8) if base_is_white else Color(0.2, 0.2, 0.2) style.bg_color = Color( (base_color.r + tile_color.r) / 2, (base_color.g + tile_color.g) / 2, (base_color.b + tile_color.b) / 2 ) # Thick border for danger style.border_width_left = 5 style.border_width_right = 5 style.border_width_top = 5 style.border_width_bottom = 5 style.border_color = tile_color base_button.add_theme_stylebox_override("normal", style) var hover_style = style.duplicate() hover_style.bg_color = tile_color.lightened(0.2) base_button.add_theme_stylebox_override("hover", hover_style) else: restore_base_appearance()