2021-12-12 17:04:17 +01:00
tool
extends SummerDayEditable
class_name SummerDayEditableTube
2021-12-19 22:26:09 +01:00
2022-01-02 03:09:18 +01:00
export ( PoolVector2Array ) var vertices = PoolVector2Array ( [
Vector2 ( - 0.4 , - 0.4 ) ,
Vector2 ( 0.1 , - 0.4 ) ,
Vector2 ( 0.1 , 0.1 ) ,
Vector2 ( - 0.4 , 0.1 ) ,
Vector2 ( - 0.1 , - 0.1 ) ,
Vector2 ( 0.4 , - 0.1 ) ,
Vector2 ( 0.4 , 0.4 ) ,
Vector2 ( - 0.1 , 0.4 ) ,
] )
2021-12-19 22:26:09 +01:00
2022-01-02 03:09:18 +01:00
func _check_for_selection_candidate ( event : InputEvent ) - > bool : # Virtual.
if event is InputEventMouseButton :
if event . button_index == BUTTON_LEFT and event . pressed :
return _is_point_included ( event . position )
return false
2021-12-19 22:26:09 +01:00
2022-01-02 03:09:18 +01:00
func _interact ( event : InputEvent ) - > bool : # Virtual.
return false
2021-12-31 17:22:58 +01:00
2022-01-02 03:09:18 +01:00
func _update_table ( table : SummerDayTable ) : # Virtual.
2021-12-19 22:26:09 +01:00
pass
2022-01-02 03:09:18 +01:00
func _is_point_included ( point : Vector2 ) - > bool : # Private.
var convex_hull = Geometry . convex_hull_2d ( vertices )
return Geometry . is_point_in_polygon ( point , convex_hull )
2021-12-19 22:26:09 +01:00