Files
2025-06-16 15:24:27 +02:00

55 lines
1.3 KiB
C#

using Mirror;
using System;
using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
public class Marker : MonoBehaviour
{
public MarkerDefinition markerDefinition;
/* public CanvasGroup fadeGroup;
public CanvasGroup aimFadeGroup;
public AnimationCurve fadeRemap;*/
public Vector3 targetPos { get; private set; }
public GameObject worldObject { get; private set; }
MarkerHandler markerHandler;
Transform objToFollow;
float timeAlive;
private void Update()
{
if (objToFollow)
{
targetPos = objToFollow.transform.position;
}
if (markerDefinition.unlimitedLife) return;
timeAlive += Time.deltaTime;
if (timeAlive > markerDefinition.lifeDuration)
{
DestroyMarker();
}
}
public virtual void InitializeMarker(MarkerHandler markerHandler, GameObject worldObject, Vector3 targetPos, Transform objToFollow)
{
this.markerHandler = markerHandler;
this.worldObject = worldObject;
this.targetPos = targetPos;
this.objToFollow = objToFollow;
/* aimFadeGroup.alpha = 0;
fadeGroup.alpha = 0;*/
}
public virtual void DestroyMarker()
{
markerHandler.RemoveMarker(this);
}
}