32 lines
652 B
GDScript
32 lines
652 B
GDScript
@tool
|
|
extends Node2D
|
|
class_name SS2D_Shape_Render
|
|
|
|
## Node is used to render shape geometry.
|
|
|
|
var mesh: SS2D_Mesh = null : set = set_mesh
|
|
|
|
|
|
func set_mesh(m: SS2D_Mesh) -> void:
|
|
mesh = m
|
|
if m != null:
|
|
if m.force_no_tiling:
|
|
texture_repeat = CanvasItem.TEXTURE_REPEAT_DISABLED
|
|
else:
|
|
texture_repeat = CanvasItem.TEXTURE_REPEAT_PARENT_NODE
|
|
material = mesh.material
|
|
z_index = mesh.z_index
|
|
z_as_relative = mesh.z_as_relative
|
|
show_behind_parent = mesh.show_behind_parent
|
|
else:
|
|
material = null
|
|
z_index = 0
|
|
z_as_relative = true
|
|
show_behind_parent = false
|
|
queue_redraw()
|
|
|
|
|
|
func _draw() -> void:
|
|
if mesh != null:
|
|
mesh.render(self)
|