Files
FueraDeEscala/Assets/PixPlays/Components/Scripts/VfxAddons/TrailScaleWithHierarchy.cs

35 lines
1.1 KiB
C#
Raw Normal View History

2026-03-29 23:03:14 -07:00
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace PixPlays.ElementalVFX
{
[RequireComponent(typeof(TrailRenderer))]
public class TrailScaleWithHierarchy : MonoBehaviour
{
private TrailRenderer _trailRenderer;
private float _initialWidth;
private float _initialTrailTime;
private void Start()
{
_trailRenderer = GetComponent<TrailRenderer>();
_initialWidth = _trailRenderer.widthMultiplier;
_initialTrailTime = _trailRenderer.time;
}
private void Update()
{
_trailRenderer.widthMultiplier = GetWorldScale(transform, _initialWidth);
_trailRenderer.time = _initialTrailTime * _trailRenderer.widthMultiplier;
}
private float GetWorldScale(Transform obj,float scale=1)
{
float newScale = obj.localScale.x * scale;
if (obj.parent != null)
{
return GetWorldScale(obj.parent, newScale);
}
return newScale;
}
}
}