Lingo

Hola me llamo Mario, soy estudiante de informática. Estoy haciendo el juego del buscaminas. Tengo una duda con una instrucción:
mysprite = sprite (me.spritenum)
Me gustaría que me explicaras qué hace esta instrucción y qué aplicación tiene.
Muchas gracias por atenderme.
Respuesta
1
Imagina que tienes una película de Director por ejemplo con 6 pájaros moviéndose por la pantalla. Cada uno de ellos lo colocas en un canal de sprite. Por ejemplo los colocas en los canales del 1 al 6. Y luego creas SEIS scripts, uno para cada uno de la forma siguiente:
On beginSprite me
sprite(X).locV = ( 50 * X)
end
Donde X representa el número de canal. Los 6 scripts hacen exactamente lo mismo: el primer pájaro lo coloca en la coordenada vertical 50 (50*1), el segundo en 100 (50*2), ..., y el sexto en la 300. Esto puede ser útil para asegurar que al entrar en un determiado frame los 6 pájaros estan separados. Es una chorrada de ejemplo pero válido para la explicación.
Si ahora cambias los pájaros a los canales del 7 al 12, tendrías que modificar los seis scripts, y poner a cada uno el nuevo número de canal.
Hay otra forma mucho mejor de hacer lo mismo. Pones los pájaros en los canales que te de la gana, y luego creas un ÚNICO script, el siguiente:
On beginSprite me
sprite(me.spriteNum).locV = ( 50 * me.spriteNum)
end
De esta forma te sirve el mismo script para los seis pájaros y si cambias alguno o todos de canal no tienes que modificarlo.
En resumen: con me.spriteNum puedes saber el número de canal que ocupa un personaje. Con sprite(me.spriteNum) obtienes la referencia a un sprite para cambiar sus propiedades. Y mysprite es una variable que puedes llamar como tu quieras y almacena dicha referencia para un manejo más sencillo. Puedes usar "mysprite.locH = 50", por ejemplo.
Es una instrucción muy útil ya que permite de una forma muy sencilla modificar las propiedades de los sprites, tarea de lo más habitual.
¿Te ha servido la respuesta? Si no es lo que necesitas pídeme una aclaración. En caso contrario te agradezco que puntúes la pregunta. Para cualquier otra consulta estaré aquí dispuesto a ayudarte en lo que me sea posible.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas