Tienes que añadir "If 0x1 goto @Direccion1" (Ejemplo)
#Dynamic 0x800000
#Org @start
checkflag 0x2000
if 0x1 goto @direccion1
Msgbox @text 0x6
Setflag 0x2000
Hidesprite 0x5
End
#org @direccion1
release
end
#Org @text
= playsoft
El if 0x1 compara el checkflag que tiene arriba, compara si la flag está activada o no, en caso de estarlo, el script no se repitiría. Y si no te funciona bien el script así, prueba con otra flag, como la 1400 en adelante.