cual es la mejor y mas facil?? ;)
Es una pregunta demasiado amplia... Podr?a responderte que eligiendo uno distinto en las propiedades del objeto, y mi respuesta tendr?a sentido.
Especific? m?s.
un enemigo que se mueve hacia el jugador , persiguiendolo
Eso no ayuda...
Pero podr?as poner simplemente
[gml]sprite_index=nuevo_sprite;[/gml]
?no te sirve eso...?
EDIT: Hab?a puesto "sptite" XD. Arreglado.
Cita de: Wadk en Noviembre 06, 2010, 05:06:14 PM
Eso no ayuda...
Pero podr?as poner simplemente
[gml]sptite_index=nuevo_sprite;[/gml]
?no te sirve eso...?
es para cuando se mueve cambie el sprite
?la mejor seria?
[gml]if direction = 90
sprite_index = lo que sea[/gml]
En depende mucho de lo que t? consideres como "la mejor" ya que a fin de cuentas son s?lo dos l?neas de c?digo, no un amplio script que necesite ser optimizado.
A ver, para empezar... ?qu? tipo de juego es? ?plataformas, cenital, ...?
laverinto vista cential
?Cu?ntos sprites tiene el enemigo y en qu? momento deber?a verse cada uno?
Todo esto deber?as haberlo dicho en el primer post, que ac? no creo que nadie sea adivino.
Cita de: Wadk en Noviembre 07, 2010, 05:00:12 PM
?Cu?ntos sprites tiene el enemigo y en qu? momento deber?a verse cada uno?
Todo esto deber?as haberlo dicho en el primer post, que ac? no creo que nadie sea adivino.
8 sprites y uno para ariba , hacia abajo, derecha e inquierda
diagonal arriba. diagonal abajo. derecha, izq
que movimiento usas con direcci?n o modificando la X y la Y
Si lo hac?s con direcci?n, esto deber?a servir:
[gml]switch(round(direction/45)*45){
case 0:
sprite_index=sprite_derecha;
break;
case 45:
sprite_index=sprite_derecha_arriba;
break;
case 90:
sprite_index=sprite_arriba;
break;
case 135:
sprite_index=sprite_izquierda_arriba;
break;
case 180:
sprite_index=sprite_izquierda;
break;
case 225:
sprite_index=sprite_izquierda_abajo;
break;
case 270:
sprite_index=sprite_abajo;
break;
case 315:
sprite_index=sprite_derecha_abajo;
break;
}[/gml]
Yo preferir?a crear un array con todos los sprites y luego asignar el adecuado usando el c?lculo de Wadk.
En el evento Create:
[gml]sprdir[0]=sprite_derecha;
sprdir[1]=sprite_derecha_arriba;
sprdir[2]=sprite_arriba;
sprdir[3]=sprite_izquierda_arriba;
sprdir[4]=sprite_izquierda;
sprdir[5]=sprite_izquierda_abajo;
sprdir[6]=sprite_abajo;
sprdir[7]=sprite_derecha_abajo;[/gml]
En el evento en el que desees que se cambie el sprite:
[gml]sprite_index=sprdir[round(direction/45)];[/gml]
Por otro lado, y aunque puede que no necesites la siguiente informaci?n, si tus sprites son de una sola imagen puedes juntarlos todos en un mismo sprite, omitir el c?digo en Create y reducir el otro c?digo a:
En el evento en el que desees que se cambie la imagen:
[gml]image_single=round(direction/45);[/gml]
Es cuesti?n de gustos. :)