private void AddActionUI(Action action) { Action.Actions actionType = action.GetAction(); int numberAction = action.GetNumber(); GameObject taskElemUI_t = Instantiate(taskElemUI, transform); UIElemSetter uiElemSetter = taskElemUI_t.GetComponent <UIElemSetter>(); switch (actionType) { case Action.Actions.FORWARD: uiElemSetter.SetForwardArrow(); break; case Action.Actions.LEFT: uiElemSetter.SetLeftArrow(); break; case Action.Actions.RIGHT: uiElemSetter.SetRightArrow(); break; } uiElemSetter.SetNumber(numberAction); }
public bool SetNextAction() { if (!queueTasks.isEmpty()) { Vector3 forward = car.transform.forward / 2; Vector3 right = car.transform.right / 2; Vector3 left = -car.transform.right / 2; Vector3 newPosition = new Vector3(); Action action = queueTasks.PopFirst(); Action.Actions typeAction = action.GetAction(); int numberAction = action.GetNumber(); UpdateUI(); switch (typeAction) { case Action.Actions.FORWARD: carNewPosition = car.transform.position + forward * numberAction; break; case Action.Actions.LEFT: newPosition = car.transform.position + left; car.transform.LookAt(newPosition); carNewPosition = car.transform.position; break; case Action.Actions.RIGHT: newPosition = car.transform.position + right; car.transform.LookAt(newPosition); carNewPosition = car.transform.position; break; } return(true); } else { return(false); } }
public void Add(Action.Actions action, int number = 0) { actions.Add(new Action(action, number)); }