Angry client display
This commit is contained in:
parent
74305b41ab
commit
377916ffb2
1 changed files with 32 additions and 12 deletions
|
@ -15,6 +15,7 @@ public class Client_controller : MonoBehaviour, IUsable
|
||||||
public float waitingTime = 10.0f; //Patience after reaching seat
|
public float waitingTime = 10.0f; //Patience after reaching seat
|
||||||
public UITimer UIWaitingTimer = null;
|
public UITimer UIWaitingTimer = null;
|
||||||
|
|
||||||
|
SpriteRenderer client_renderer;
|
||||||
Animator animator;
|
Animator animator;
|
||||||
string _status;
|
string _status;
|
||||||
string _prevStatus;
|
string _prevStatus;
|
||||||
|
@ -111,18 +112,14 @@ public class Client_controller : MonoBehaviour, IUsable
|
||||||
switch (newStatus)
|
switch (newStatus)
|
||||||
{
|
{
|
||||||
case "entering":
|
case "entering":
|
||||||
navObstacle.enabled = false;
|
client_renderer.color = Color.white;
|
||||||
agent.enabled = true;
|
toggleAgent(true);
|
||||||
if(UIWaitingTimer != null)
|
if(UIWaitingTimer != null)
|
||||||
UIWaitingTimer.gameObject.SetActive(false);
|
UIWaitingTimer.gameObject.SetActive(false);
|
||||||
break;
|
break;
|
||||||
case "waiting":
|
case "waiting":
|
||||||
EventManager.Instance.startCoroutine(gameObject);
|
client_renderer.color = Color.white;
|
||||||
//Switch Agent to obstacle if waiting
|
toggleAgent(false);
|
||||||
// agent.Warp(assigedPos); //Make sure agent become static at right position
|
|
||||||
agent.enabled = false;
|
|
||||||
navObstacle.enabled = true;
|
|
||||||
|
|
||||||
if(UIWaitingTimer != null)
|
if(UIWaitingTimer != null)
|
||||||
{
|
{
|
||||||
UIWaitingTimer.DisplayIcon(true);
|
UIWaitingTimer.DisplayIcon(true);
|
||||||
|
@ -130,15 +127,20 @@ public class Client_controller : MonoBehaviour, IUsable
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "consuming":
|
case "consuming":
|
||||||
EventManager.Instance.startCoroutine(gameObject);
|
client_renderer.color = Color.white;
|
||||||
|
toggleAgent(false);
|
||||||
if(UIWaitingTimer != null)
|
if(UIWaitingTimer != null)
|
||||||
UIWaitingTimer.gameObject.SetActive(false);
|
UIWaitingTimer.gameObject.SetActive(false);
|
||||||
break;
|
break;
|
||||||
case "event":
|
case "event":
|
||||||
|
client_renderer.color = Color.red;
|
||||||
|
toggleAgent(true);
|
||||||
|
if(UIWaitingTimer != null)
|
||||||
|
UIWaitingTimer.gameObject.SetActive(false);
|
||||||
|
break;
|
||||||
case "leaving":
|
case "leaving":
|
||||||
EventManager.Instance.stopCoroutine(gameObject);
|
client_renderer.color = Color.white;
|
||||||
navObstacle.enabled = false;
|
toggleAgent(true);
|
||||||
agent.enabled = true;
|
|
||||||
if(UIWaitingTimer != null)
|
if(UIWaitingTimer != null)
|
||||||
UIWaitingTimer.gameObject.SetActive(false);
|
UIWaitingTimer.gameObject.SetActive(false);
|
||||||
break;
|
break;
|
||||||
|
@ -156,6 +158,23 @@ public class Client_controller : MonoBehaviour, IUsable
|
||||||
Debug.LogWarning("Wrong status update : "+ gameObject.name + _prevStatus + status +" "+ _lastStatusRequest);
|
Debug.LogWarning("Wrong status update : "+ gameObject.name + _prevStatus + status +" "+ _lastStatusRequest);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//Switch between agent or obstacle. And enable Event coroutine if obstacle.
|
||||||
|
protected void toggleAgent(bool isAgent)
|
||||||
|
{
|
||||||
|
if(isAgent)
|
||||||
|
{
|
||||||
|
navObstacle.enabled = false;
|
||||||
|
agent.enabled = true;
|
||||||
|
EventManager.Instance.stopCoroutine(gameObject);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
agent.enabled = false;
|
||||||
|
navObstacle.enabled = true;
|
||||||
|
EventManager.Instance.startCoroutine(gameObject);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Start is called before the first frame update
|
// Start is called before the first frame update
|
||||||
void Start()
|
void Start()
|
||||||
{
|
{
|
||||||
|
@ -169,6 +188,7 @@ public class Client_controller : MonoBehaviour, IUsable
|
||||||
else
|
else
|
||||||
UIWaitingTimer.gameObject.SetActive(false);
|
UIWaitingTimer.gameObject.SetActive(false);
|
||||||
|
|
||||||
|
client_renderer = GetComponent<SpriteRenderer>();
|
||||||
animator = GetComponent<Animator>();
|
animator = GetComponent<Animator>();
|
||||||
|
|
||||||
// Navigation //
|
// Navigation //
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue