private void Update()
 {
     if (obj.transform.position == target)
     {
         // 完成动作后destroy
         GameSceneController.GetInstance().setMoving(false);
         if (monitor != null)
         {
             monitor.OnActionDone(this);
         }
         Destroy(this);
     }
 }
        private void Update()
        {
            transform.position = Vector3.MoveTowards(transform.position, target, speed * Time.deltaTime);

            // Destroy after done
            if (transform.position == target)
            {
                GameSceneController.GetInstance().setMoving(false);
                if (monitor != null)
                {
                    monitor.OnActionDone(this);
                }
                Destroy(this);
            }
        }