private void Update()
    {
        float moveDistance = Time.deltaTime * speed;

        distanceTraveled += Time.deltaTime * speed;
        float traveledPercent = distanceTraveled / distanceToTarget;

        if (traveledPercent >= 1)
        {
            Transform smokeTransform = SmokeEffectPool.Instance.GetObject().transform;
            IsometricLocomotion.SetPositionOnPlane(smokeTransform, transform.position);
            smokeTransform.localScale = Vector3.one * impactScale;
            //probably should calculate isometric ranges somewhere else
            if (splash)
            {
                SplashProcessor.Instance.SplashArea(transform.position, new Vector2(impactScale, impactScale * 2 / 3), damage);
            }
            else
            {
                target.TakeDamage(damage);
            }
            gameObject.SetActive(false);
            return;
        }
        locomotion.PlanarMovement(moveDirection * moveDistance, (trajectory - 2 * trajectory * traveledPercent) * Time.deltaTime);
    }
    private void Update()
    {
        //Added just for fun
        if (dying)
        {
            currentDyingTime += Time.deltaTime;
            Vector2 offset = (destination - (Vector2)transform.position).normalized;
            float   angle  = Mathf.Atan2(offset.y, offset.x) + 2 * Mathf.PI * currentDyingTime / dyingTimer;
            if (spriteSheet != null)
            {
                dummySprite.sprite = spriteSheet.GetSprite(new Vector2(Mathf.Cos(angle), Mathf.Sin(angle)));
            }
            if (currentDyingTime > dyingTimer)
            {
                ReturnToPool();
            }
            return;
        }
        //moving object here
        Vector2 moveDir  = destination - (Vector2)transform.position;
        float   distance = moveDir.magnitude;

        moveDir = moveDir.normalized;
        if (spriteSheet != null)
        {
            dummySprite.sprite = spriteSheet.GetSprite(moveDir);
        }
        locomotion.PlanarMovement(moveDir * Time.deltaTime * speed);
        if (distance < ReachThreshold)
        {
            SetDestination(currentNavEntity.GetNext());
        }
        CalculateRemainingDistance();
    }