2025-12-06 19:58:22 +08:00
|
|
|
@tool
|
|
|
|
|
extends Node2D
|
|
|
|
|
|
|
|
|
|
@export var target: Node2D
|
2026-04-30 20:56:49 +08:00
|
|
|
|
2025-12-06 19:58:22 +08:00
|
|
|
@export var offsetPosition: Vector2 = Vector2.ZERO
|
|
|
|
|
@export var offsetRotation: float = 0.0
|
2026-04-30 20:56:49 +08:00
|
|
|
@export var multipilerScale: Vector2 = Vector2.ONE
|
|
|
|
|
|
2025-12-06 19:58:22 +08:00
|
|
|
@export var enablePosition: bool = false
|
|
|
|
|
@export var enableRotation: bool = false
|
2026-04-30 20:56:49 +08:00
|
|
|
@export var enableScale: bool = false
|
2025-12-06 19:58:22 +08:00
|
|
|
|
|
|
|
|
func _process(_delta):
|
|
|
|
|
if is_instance_valid(target):
|
|
|
|
|
if enablePosition:
|
|
|
|
|
global_position = target.global_position + offsetPosition
|
|
|
|
|
if enableRotation:
|
|
|
|
|
global_rotation = target.global_rotation + deg_to_rad(offsetRotation)
|
2026-04-30 20:56:49 +08:00
|
|
|
if enableScale:
|
|
|
|
|
global_scale = target.global_scale * multipilerScale
|