protected void Awake()
	{		
		waypointManager = GameObject.Find("WaypointManager").GetComponent<WaypointManager>();
		waypointManager.SubscribeToAssignedWaypointEvent(this.gameObject, SetWaypoint);
		
		myBehaviorManager.OnBehaviorStateChangedEvent += HandleOnBehaviorStateChangedEvent;
		
		myEntityComponent = GetComponent<HeroComponent>();
		performingActions = false;
		movingToEntity = false;
	}
	// Use this for initialization
	public override void Start() 
    {
        waypointManager = GameObject.Find("WaypointManager").GetComponent<WaypointManager>();

        if (waypointManager != null)
        {
            waypointManager.SubscribeToAssignedWaypointEvent(this.gameObject, SetWaypoint);
            CurrWaypoint = waypointManager.GetWaypoint(this.gameObject);
            this.target = CurrWaypoint.transform;
        }

        base.Start();
	}