19 lines
583 B
GDScript
19 lines
583 B
GDScript
class_name BuildingBase
|
|
extends Node2D
|
|
|
|
var _building_data: Building
|
|
var building_data_scene
|
|
|
|
@onready var sprite_2d: Sprite2D = $Sprite2D
|
|
|
|
func initialize(data: Building, grid_location: Vector2i) -> void:
|
|
_building_data = data
|
|
position = Grid.grid_to_world_center(grid_location)
|
|
sprite_2d.texture = _building_data.atlas_texture
|
|
if _building_data.world_scene:
|
|
building_data_scene = _building_data.world_scene.instantiate()
|
|
add_child(building_data_scene)
|
|
|
|
func interact(on_interaction_finished: Callable) -> bool:
|
|
return building_data_scene.interact(on_interaction_finished)
|