Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mensajes - omick

46
hola..  claro que se puede jeje :) .
una alternativa es asi:
  crea un objeto por ej.  obj_Bombardeado ..ese objeto en create pon friction=.3 ;
y ese object servira de parent asi que a todos los objetos que quieras que sean afectados asignales ese objeto como parent en propiedades de objeto..

Bueno ahora en la bomba en el
evento create pon:
potencia=100 // por ejemplo

y en el evento destroy pon :

with obj_Bombardeado {
   direction=point_direction(self.x,self.y,x,y);
speed=self.potencia/distance_to_object(self)/10 //  mientras menor sea el numero mas rango tendra la bomba
}

//  Tal vez funcione asi..
47
hola..  no entiendo muy bien tu codigo  pero  como se mueve con cierta speed y direccion los pixeles no siempre son precisos y por tanto puede que  su x "nunca"  sea igual a x1
por que puede que x1 sea igual a por ejemplo 430.000001 y por eso no funciona  prueba con :
if x=floor(x1){speed=0};
y si no funciona, en vez de usar el move_towards usa  mp_potential_step
48
hola. me sucedio algo similar y lo puedes solucionar asi:
  creas una variable en tu personaje.
aumento_de_grav=0;
y en step:
if vspeed>1{aumento_de_grav+=.02};

..donde tengas gravity agregale:
gravity=.4+aumento_de_grav

//y ya cuando toque el suelo:
aumento_de_grav=0;



a ver si te funciona... saludos

49
Preguntas y respuestas / Re:dificil cuestion
Enero 10, 2015, 07:57:47 AM
...  bueno  yo te recomiendo que en vez de que uses dos objetos  solo uses una variable global, algo asi como:
global.atacar=0;  y la condicion la pones en un evento que no recuerdo como se llama jejeje  pero esta en la seccion de other events  y se refiere a cuando esta dentro de la view..  ahi despues solo acomodas el rango (distance_to_object) y asi cambias a globar.atacar=1
50
prueba con el codigo de 3dgeminis pero en la parte donde dice if tiempo=10 cambiala por if tiempo>9
51
Cita de: ascoiderº en Enero 09, 2015, 06:53:55 PM
Muchas gracias, es perfecto. Ahora de ahí iré modificando y probando.

Quiero que las probabilidades vayan variando cada cierto número de apariciones (las 10 primeras gran mayoría de A, las 10 siguientes menor mayoría de A, etc.). Mi última duda es: hago esto dentro de los mismos ejecutables o es preferible duplicar las acciones modificando los parámetros de azar?

Gracias de nuevo.

que ejemplo usaste? el mio o el de galo jeje para explicarte lo demas :)
52
hola..  podria funcionar asi.. claro hay muchas alternativas
crea un objeto que controle las creaciones. ej.
objControl   en evento create pon:
posx=100; // tu posicion x donde se creara
posy=100; // posicion y
objeto[1]=obj_A;
objeto[2]=obj_B;
objeto[3]=obj_C;
objeto[4]=obj_D;
alarm[0]=1*room_speed; // un segundo..

..Ahora en evento alarm 0 :
var cual_creare;
cual_creare=choose(1,1,1,1,1,1,1,2,2,2,2,3,3,3,4,4,4);
with aa {instance_destroy()};
aa=instance_create(posx,posy,objeto[cual_creare]);
alarm[0]=1*room_speed;
53
Preguntas y respuestas / Re:random
Enero 06, 2015, 03:40:58 PM
cuando gustes te ayudo en lo que pueda
54
pues aca esta el error :

gml_Object_testing_codes_KeyReleased_M_1(2) : malformed if statement

...en el evento de keyReleased..
sentecia de if   malformada...
  revisa el evento de ese objeto de testing codes
55
Preguntas y respuestas / Re:random
Enero 05, 2015, 07:13:52 PM
bueno al parecer quieres que muentras mas nivel tegas tardara menos en salir su habilidad pero aleatorio tambien...
a=irandom(10-nivel)*(room_speed*1.5);
//si sale 10 * 45 es 450  ó 15  segundos

alarm[4] = irandom_range(a/2,a);
  // rango qade entre 7.5 a 15 segundos

// si nivel es 7  sale 3 * 45  es 135 ó  4.5 seg..    aver si te sirve..
56
jeje..  todo el codigo que te di va en el escarabajo en el evento donde crearas la bola
..   lo unico que tendra la bola en create es lo que tu enseñaste de codigo:
image_speed=0.5;timer=1;sprite_index=spr_acido;
57
hola.. al parecer si tienes que crear la forma..  jeje    tal vez esto funcione.
  en ese tal objeto en create pon:
   posx=x;
   posy=y;
   quieto=0;


..y ahora por ejemplo en step:
if x=xprevious and y=yprevious and !quieto{quieto=1;posx=x;posy=y
}else{
  quieto=0;
  if point_to_distance(x,y,posx,posy)>15{ //  quince pixeles desde donde estaba quieto

seMovio16Pixeles=1; 
}
}
 
58
Preguntas y respuestas / Re:random
Enero 05, 2015, 02:44:44 PM
hola ..  no se si te entendi bien pero podra funcionar..

en create:
  duracion_de_habilidad=irandom(100)
  alarm[0]=duracion_de_habilidad*room_speed;

..en alarm 0 : lo mismo de arriba
 
59
Preguntas y respuestas / Re:Límite barra de vida
Enero 05, 2015, 02:31:15 PM
Hola..    me pregunto que es lo que tienes en evento draw para que suceda eso...     
... una alternativa para hacer barra horizontal de vida es crear un sprite de por ejemplo 1x8 pixeles llamado sprBarra y en el evento draw colocas un codigo y pon:
  draw_sprite_stretched(sprBarra,-1,posx,posy,global.salud,8);
// recuerda : draw_sprite_stretched(sprite, subimagen, x, y,ancho,alto)


.... pero regresando a lo tuyo, asegurate de no estar dibujando la variable ademas de la barra de vida  :)

60
hola..  muy buenos tus graficos..  bueno se debe a que la var pl tiene el valor del nombre de tu escarabajo y solo le hara caso al que aparece primero..    una forma mejor es crear la bola desde el escarabajo.
en tu objeto Betle donde creas la bola pon:
proyectil=instance_create(x,y,objBala) // se guarda el id de la bala en la variable proyectil
// ahora proyectil es especificamente el objeto recien creado...
// velocidad y direccion:
proyectil.image_xscale=image_xscale;
proyectil.hspeed=4*image_xscale;