Lo que pasa es que me ingeni? para dibujar grama variada sin necesidad de una infinidad de sprites,
pero intent? simplificar la cosa porque lo que hacia es crear un objeto que creaba varios objetos de grama que su yscale y su image_index entre otros son elegidos al asar para que var?e al 100% tecnicamente...
el problema es que al querer ponerlo en draw para que se dibuje y ya se dibuja varias veces y la grama pareciera como si se moviera mucho xD, (esa fue mi inspiracion para un fuego realista que se basa en un sprite de 3 imagenes pero ocupa mucho en la memoria xD)
solo queria saber si hay alguna alternativa para que la grama se quede estatica, que se dibuje una sola ves y ahi se quede no se -w-
?Hac? que el yscale y el image_index s?lo se elijan una vez y no vuelvan a cambiar?
si, pero como es random no dejan de cambiar X_X
Citarsi, pero como es random no dejan de cambiar X_X
haces que una variable sea = a random, luego que el image_index sea = a esa variable
lo mismo para el yscale
Citarsi, pero como es random no dejan de cambiar X_X
Pero pon? la asignaci?n en create, no en step o draw.
eso intente D: pero como se tiene que repetir entonces lo hice con ciclo for y se crea varias veces
ejemplo: Alpha(i) (con corchetes) y las variables de crean una sola vez pero nada de nada x_x
Hazlo con un random sin repetici?n, aqui te dejo mi c?digo:
//********////////////////////////////////////////////******//
// RANDOM CON NUMEROS aleatorios SIN REPETICION //
//********//////////////////////////////////////////******//
zF=0;fF=0;rF=0;cF=0;gF=0;fF=argument0;
for(i=1;i<=60;i+=1){wF2[i]=0;}
///////////////////////////////////////////////////////////
while(zF<fF)
{ cF=0;
rF=floor(random(fF))+1;
if(gF==0){gF=1;wF2[zF]=rF;}
for(jF=0;jF<zF;jF+=1){
if(rF==wF2[jF])
{ cF+=1;}
}
if(cF==0){wF2[zF]=rF;zF+=1;}
}
///////////////////////////////////////////////////////////
mas o menos que hago con eso? no entendi nada X_X por mucho que me esforc? D':
esto es lo que utilizo
draw_sprite_ext(spr_gram,subi[i],XX[i],y+17,1,YS[i],RT[i],c_white,ALF[i])
aun no se como repetirlo..
y en el create puse
j=0
for (i=0;i>24;i+=1)
{
subi[i]=irandom(2)
XX[i]=x+irandom(16)
YS[i]=(irandom(60)/100)+0.4
RT[i]=irandom(10)-5
ALF[i]=(irandom(4)+6)/10
}
eso fue lo que intent?.. pero no sale nada xD
por si no saben irandom es random con numeros naturales
Por qu? asign?s los valores 24 veces?
Y ese c?digo, lo copiaste del juego o lo volviste a escribir? Porque dice (i=0;i>24;i+=1), pero i es menor a 24 cuando se ejecuta por primera vez, el for no se ejecutar?a ni una sola vez.
El codigo q te he puesto lo pones en un script y para llamarla pones un valor cualquiera digamos 10, entonces te va arrojar como resultado valores del 1 al 10 sin repetici?n: 1,6,2,9,5,3,8,4,10,7.
saludos XD XD XD
oh bien... funciona con el for, el problema era ese xD gracias!