Si el código está en un archivo convertido a binario quizá sea complicado, pero imaginen esto:
Si es la 1era vez que el mouse se mueve:
Anotar cuando se movió.
Si es la 1era vez que se hace clic:
Anotar cuando se cliqueó.
etc, etc, chequeándose hasta... ¿que el programa se cierre, o qué? Supongan que se quiere saber cuando fue el 1er caso de cada evento, hasta que no ocurran todos o no termine el juego o lo que sea, no hay fin, a menos que se ponga otro if para que cuando hayan ocurrido todos los eventos deje de ejecutar todo ese código.
Sería bueno poder hacer:
Si es la 1era vez que el mouse se mueve:
Anotar cuando se movió.
Borrar este if.
Si es la 1era vez que se hace clic:
Anotar cuando se cliqueó.
Borrar este if.
etc, etc, es decir, puede ser que cuando va a ejecutarse el código, se haga una copia del mismo, y se borren cosas de esa copia; el código real queda intacto. ¿Es posible hacer eso en algún lenguaje?
En Flash hay una forma que se me acaba de ocurrir, pero es un poco impredecible cómo funciona:
Cuando se llega al punto de querer chequear cuando ocurre el 1er evento de algo, se inserta una película que tiene el if. Cuando el if se cumple, la película se autoelimina. La película puede ser vacía y sólo tener código, así que es algo ligero. Lo que digo que es impredecible es que no sé si su código se ejecuta antes o después del "main", pero en este caso no importa. Pruebo y les cuento.
Edit:
Correcto, así lo hice:
- Crear una película vacía y llamarle "Vacía".
- Crear otra, llamarle "Captar 1er movimiento", y ponerle la Vacía.
- A esa vacía ponerle el if para captar el 1er movimiento y que al cumplirse remueva a su padre (que es "Captar 1er movimiento").
- Donde se necesite, insertar (con attach, sino no es removible) "Captar 1er movimiento".
Para captar otras cosas repetir desde el 2ndo paso cambiando los nombres y códigos.