using System;
using Cute;
using UnityEngine;

namespace Wizard;

public class SpringPanelWithUpdate : SpringPanel
{
	public Action onUpdate;

	public static SpringPanelWithUpdate Begin(GameObject go, Vector3 pos, float strength, Action onUpdate)
	{
		SpringPanelWithUpdate springPanelWithUpdate = go.GetComponent<SpringPanelWithUpdate>();
		if (springPanelWithUpdate == null)
		{
			springPanelWithUpdate = go.AddComponent<SpringPanelWithUpdate>();
		}
		springPanelWithUpdate.target = pos;
		springPanelWithUpdate.strength = strength;
		springPanelWithUpdate.onFinished = null;
		springPanelWithUpdate.onUpdate = onUpdate;
		springPanelWithUpdate.enabled = true;
		return springPanelWithUpdate;
	}

	protected override void AdvanceTowardsPosition()
	{
		base.AdvanceTowardsPosition();
		onUpdate.Call();
	}
}
