28 lines
473 B
GDScript
28 lines
473 B
GDScript
@tool
|
|
extends Node2D
|
|
class_name Painting
|
|
|
|
|
|
@export var painting_id: int:
|
|
set(x):
|
|
painting_id = x
|
|
queue_redraw()
|
|
|
|
|
|
@export var overwrite_texture: Texture2D:
|
|
set(x):
|
|
overwrite_texture = x
|
|
queue_redraw()
|
|
|
|
|
|
@export_range(0, 3) var damage: int:
|
|
set(x):
|
|
damage = clampi(x, 0, 3)
|
|
queue_redraw()
|
|
|
|
|
|
func _draw() -> void:
|
|
%Dmg.visible = damage > 0
|
|
%Dmg.frame = damage - 1 if damage > 0 else 0
|
|
%Noise.rng_seed = painting_id
|
|
%TextureRect.texture = overwrite_texture
|