public virtual void Update()
 {
     if (Parent != null)
     {
         Parent.Update();
     }
 }
        public static void Update()
        {
            if (delay > 0)
            {
                delay--;
            }

            state.Update();
        }