protected void OnDrop() { STATE = AgentStates_Platform.DROP; if (drop == 0) { agent.bizierCurve.Clear(); float distance = Vector3.Distance(agent.CurrentWaypointPosition, agent.NextWayPoint); agent.bizierCurve = agent.BizierCurve(agent.CurrentWaypointPosition, new Vector3(agent.CurrentWaypointPosition.x, agent.NextWayPoint.y + distance * agent.bizierHeight_drop, 0), agent.NextWayPoint, 20); drop++; agent.pause = true; StartCoroutine(agent.WalkCurve()); } }
protected void OnMove() { STATE = AgentStates_Platform.WALK; transform.parent.position = Vector3.Lerp(agent.CurrentWaypointPosition, agent.CurrentPath.Peek(), agent.MoveTimeCurrent / agent.MoveTimeTotal); Debug.DrawLine(transform.parent.position, agent.CurrentPath.Peek());//Direção }
protected void OnIdle() { STATE = AgentStates_Platform.IDLE; }