GodotComponentTest/scenes/HexTile3D.gd

27 lines
714 B
GDScript

extends MeshInstance
onready var is_mouse_over = false
var old_material_override = Material.new()
signal tile_selected
func _on_Area_mouse_entered():
is_mouse_over = true
old_material_override = material_override
var material = self.get_surface_material(0)
var cloned_material = material.duplicate()
cloned_material.albedo_color = Color (1, 0, 0)
self.material_override = cloned_material
func _on_Area_mouse_exited():
is_mouse_over = false
self.material_override = old_material_override
func _on_Area_input_event(camera, event, position, normal, shape_idx):
if is_mouse_over and event is InputEventMouseButton:
if event.button_index == 1 and event.pressed:
emit_signal("tile_selected", self)