@nao es un texto. Tienes que apuntar a otro script, no a un texto.
A parte tienes el checkflag 0x800, pero no el if 0x1 goto @(pointer)
Es decir, tienes que comprobar si la flag está activada y en tal caso enviar a otro pointer. Por eso se te repite. Imagino que sabrás más o menos cómo funcionan las flags, pero si no te lo explico más detalladamente...