Advertisement
Guest User

SimpleQueueTarget

a guest
Jun 24th, 2018
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 0.90 KB | None | 0 0
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4.  
  5. public class Target : MonoBehaviour {
  6.  
  7.     private Transform queueTransform;
  8.     public float interactionTime = 3.0f;
  9.     public List<Actor> queue = new List<Actor>();
  10.  
  11.     private void Start()
  12.     {
  13.         queueTransform = transform.GetChild(0).transform;
  14.     }
  15.  
  16.     public void EnterQueue(Actor actor)
  17.     {
  18.         queue.Add(actor);
  19.         actor.positionInQueue = queueTransform.position + (-transform.forward * (queue.Count - 1));
  20.         actor.queueIndex = queue.Count-1;
  21.     }
  22.  
  23.     public void LeaveQueue(Actor actor)
  24.     {
  25.         queue.Remove(actor);
  26.         foreach (Actor a in queue)
  27.         {        
  28.             a.queueIndex--;
  29.             a.positionInQueue = queueTransform.position + (-transform.forward * a.queueIndex);
  30.             a.state = State.movingToQueuePosition;
  31.         }
  32.     }
  33.  
  34. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement