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 - knd144

196
Preguntas y respuestas / Re: que es un objeto parent
Julio 13, 2010, 05:35:15 PM
Cita de: Herni en Julio 13, 2010, 03:42:52 AM
Cita de: Wadk en Julio 13, 2010, 03:31:11 AM
No copi? y pegu? nada XD.

event_inherited s?lo hereda el evento en el que es llamada (si la llam?s en create, ejecuta el c?digo create del parent, etc). No hay m?s funciones que conozca, pero no creo que sean necesarias.
No creo que se puedan heredar m?s cosas, pero tampoco lo veo muy necesario...

No entiendo, si es como dices y event_inherited s?lo hereda el evento en el que es llamada (si la llamas en create, ejecuta el c?digo create del parent, etc.) ?no habr?a que hacer lo mismo en todas las colisiones para que heredase las instrucciones a hacer en cada colisi?n?


Gracias, otro saludo XD
- Herni

No, mira, no hace falta llamarlo para todos los "hijos" u objetos que lo usan como Parent, solo que si el parent tiene alg?n c{odigo programado en create (por ejemplo) el obeto hijo de este al escribirle algo en create elimina autom?ticamente el c?digo del create del padre; lo que hace la funci?n es llamar al c?digo del padre p?ra luego agregarle el c?digo propio del hijo :p
197
Para indicar en horas, minutos, segundos y milisegundos puedes hacer esto:
Creas primer unas variables en 0:
Citarhoras=0
minutos=0
segundos=0
milisegundos=0
Ahora en el step de un objeto que siempre est? presente en el juego (podr?a ser el personaje o un objeto que uses especialmente para este control):
Citarmilisegundos+=1
if(milisegundos>30)
{
  segundos+=1
  milisegundos=0
}
if(segundos>60)
{
  minutos+=1
  segundos=0
}
if(miutos>60)
{
  horas+=1;
  minutos=0;
}

Y se supone que as? se toma el tiempo; Usas la funci?n draw_text que mencion? Herni para mostrarlo en el juego y listo  ;)


198
 XD seee. Ya lo not?.
Vaya error de novato, no?

Creo que mis cables se cruzaron y relacionaron dir con direction  :-[

Muchas gracias Alfonsos1
199
Hola.
Pues cree un script para el desplazamiento de un enemigo, que se dirija a un punto que le quede m?s cerca (y libre) al personaje. Pero cuando est? el juego en marcha y el enemigo en esa room actual el juego se traba  :-\ .
Les explico lo que tengo:
en el create del personaje est?n estas variables:
Citarxx=x
yy=y

en el step:
Citarif(xx=x and yy=y)
{
  //scr_ia_mov_bot3();
}
else
{
......
}
y el script es este:

Citar
var dir,x1,y1;
dir=0
//25
while(direction<360)
{
  x1=x+25*(seno(dir))
  y1=y-25*(seno(dir))
  if(place_free(x1,y1))
  {
    if(point_distance(x1,y1,obj_personaje.x,obj_personaje.y)<point_distance(xx,yy,obj_personaje.x,obj_personaje.y))
    {
      xx=x1
      yy=y1
    }
  }
  dir+=10
}

speed=3
direction=point_direction(x,y,xx,yy)

La verdad no veo el por qu? se traba el juego, el script solo se llama 1 vez y luego el enemigo prosigue a moverse  :-\ despu?s lo mismo.
Incluso intent? que la variable "dir" aumente en 20 pero ni as?.
Ustedes que dicen?  :-[
200
igual que kaliman777: Mi primer lenguaje de programaci?n fu? GML, no ten?a idea de NADA, pero mi necedad por crear videojuegos me llev? a conocer esta herramienta, y poco a poco gracias a la comunidad aprend? a usarlo y a programar; ya a los pocos meses empezaron a ense?arme en el tecnol?gico donde estudio la programaci?n y lo voy aplicando por ac?, aun que m?s he hecho lo contrario: lo que aprendo con el GML lo aplico en mi escuela.
No hace faltas nociones, el autodidactismo es para eso; solo hecharle ganas, tener pasciencia y buscar por uno mismo lo que se necesita  ;)
201
Mira, es muy sencillo; yo he hecho cosas parecidas. La cuesti?n es que programes las acciones de los botones tal cual deber?an funcionar. Despu?s solo crear una variable global (por ejemplo global.control) y que al seleccionar que opci?n de control tomar tome el valor "teclado" o "control" (1 o 2, false o true, como te acomodes).
Y bueno, lo que yo hago es que al principio del juego el jugador seleccione c?mo jugar haciendo clic sobre un objeto con imagen (que sirve de boton) y que al hacer clic sobre ?l la variable global.control="teclado" y al hacer clic sobre otro objeto la variable global.control="control".
Y ahora, solo hace falta agregarle al c?digo de los respentivos botones que solo funcionen si la variable global.control tenga el valor indicado.
por ejemplo:
al prensionar el boton A del control:
if(global.control=="control")
{
 //acci?n de este boton, por ejemplo pause
}

y al presionar Enter en el teclado:
if(global.control=="teclado")
 //ahora es aqu? donde se pausa
}


Espero haberme explicado, si no me expliqu? bien, te hago un ejemplo :P

Editado: te subo en sencillo ejemplo, que creo es lo que buscas.
202
Siento la tarzanda por la respuesta.
La forma de Ge es lo que necesito para enviar los argumentos; juanpa, psss... de es aforma arrogar?a errores de sintaxis el Game Maker; pero gracias por el esfuerzo. Se agradece igual.

Gracias a los 2.  ;)
203
Pues esa es mi pregunta:
tengo una aplicacion converter.bat que al ejecutarse acepta 2 argumentos, por lo que uso la funci?n:

execute_program("converter.bat",a,b,false);

siendo a y b 2 variables, pero me sale el error al ejecutar:
"Wrong number of arguments to function or script."
diciendo que me falla el n?mero de argumentos, pero necesito forzosamente 2 argumentos. Alguna manera de enviar 2 argumentos?  :-[


P.D.: Tambi?n he usado esta funci?n:
execute_shell("converter.bat",a,b)
Pero el mismo problema :(
204
ahhh!... Ok, lo checar?. Muchas gracias a los 2  :-[

SALUDOS
205
Estoy casi seguro que hace tiempo vi en alg?n lugar de la comunidad c?mo hacer para que no se dibuje el cursor en la pantalla, pero ahora no lo encuentro  :-[
Me podr?an decir si en verdad se puede (o solo fu? producto de mi distorcionadamente) y c?mo? Se los agradecer?a mucho.

SALUDOS  :)
206
Desde el principio vi al Pacman all?, me imagino que para hacer referencia al juego legendario  :D
207
a ver... tienes el array a[20][2] no?, pues yo lo haria as?:
creo un segundo array b[20][2] y pasaria las variables tal cual como esta en el array original. luego haria esto:

for(i=0;i<2;i++)
{
  for(j=0;j<20;j++)
  {
    do{
       var x=floor(randoom(20));
      }(while a
  • !=0)
          a
    • = b[j];
        }
      }

      Se supone que deberia funcionar  :-[
208
pues tambien guardas el room en una variable en el .ini...
algo as?:

ini_write_real(section,key,room)

y lo cargas as?:

room=ini_read_real(section,room,default)

eso si solo quieres cargar el room en el que te quedaste, aun que si hubo alguna modificaci?n tal no aparecer?. Si lo que quieres es cargar el room tal cual se qued? tienes dos opciones:

1.- hacer lo que dices de usar el default de guardar el juego y luego cargar las variables que necesites sobreescribir.

2.- hacer que cada objeto en la room guarde su estado en el .ini con una secci?n con su id y sus variables (como la posicion X y Y) dentro de esta secci?n, y al cargar, que se cheque las variables y se cargen, y en caso de no existir, el objeto se detruir?a... Un poco m?s complicado  XD

Era esto lo que necesitabas?  :-[
209
Vaya interesante forma de cubrir la inexistencia de los arrays tridimensionales en GM... Muy bueno y parece funcionar igual que un array verdadero  :D

Muchas gracias Texic :P
210
De hecho, se parece m?s a la tangente:
y=tan(x)
aun que la pendiente es inversa.

Mira, una aproximaci?n con la f?rmula de la tangente ser?a:

(7.5(tan((x)/60)))+90

Aun que como dije, la pendiente es inversa y la formula inexacta  :-[

espero de algo te sirva  ???