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

122
Preguntas y respuestas / Re: Arkanoid para el suegro
Octubre 22, 2010, 11:31:34 PM
La leche, es como leer un SMS. XD

En serio, cuesta seguirte. Te recomiendo tratar de escribir mas claro en esta seccion y ser mas claro en los titulos de los temas. En programacion es necesario conocer con exactitud la naturaleza del problema para buscar una solucion y de esta manera se complica mucho la pregunta.

Mmmm... depende mucho de como lo integres, si quieres algo realista, lo suyo es crear tu propio sistema de fisicas para el juego (que tampoco es muy complejo).

Una opcion simple podria ser chequear que parte de la paleta se esta tocando en el momento de la colision.

Dentro del evento "collision" de la paleta podrias poner algo asi:

[GML]if(other.x>x) {/*a?ades algo de inercia extra hacia la derecha*/}
else if(other.x<x) {/*a?ades algo de inercia extra hacia la izquierda*/}[/GML]

Para mantener la fidelidad con el original, otro detalle que podrias tener en cuenta seria el crear un contador de golpes en la pelota que aumentara su velocidad conforme va siendo golpeada mas veces.

Evento "collision" de la pelota:

[GML]velocidad+=0.2; //Aumento variable responsable de la velocidad[/GML]

123
Mmmm.. vamos por partes.

1.- Revisa el reglamento, se te olvido poner el icono y en esta seccion es obligatorio (lo hacemos para poder mantener la clasificacion de los temas). Lo habitual en estos casos suele ser borrar el mensaje.

2.- Por lo que leo, parece que lo que mas te confunde es el concepto de programacion que utiliza GM. En GM, al contrario que en otros lenguajes, se programa sobre eventos.

Te pongo un ejemplo: los eventos "create" y "step" son eventos que se dan al crear un objeto(evento "create") y de forma continua a una velocidad constante (evento "step" por defecto 30 veces por segundo).

Ahora pongamos que introduces codigo en un evento "step" sin haber definido las variables previamente. En ese caso recibiras el error correspondiente de variable inexistente. ?Como y cuando se declaran entonces? en un principio no es preciso definir el tipo de variable (entera, cadena, decimal, binaria...) pero si su alcance (global o local). Podrias o bien definirlas durante la creacion del objeto (evento create), de forma continua (step) o bien en cualquier otro momento (evento). Lo unico que tienes que tener en cuenta es que en el momento de hacer uso de la variable, esta ya debe de estar declarada.

Para definir el tipo de una variable basta con asignarle un valor.

[GML]cadena="hola";
entero=10;
binario=true;
decimal=1.23;[/GML]

Todas las variables son, por defecto, locales. Para definir un alcance mayor, basta con a?adir "global." al nombre de la variable.

[GML]global.entero=10; [/GML]

En un principio los alcances de las variables terminan aqui: o bien son globales, o bien locales. Sin embargo tambien es posible crear herencias entre objetos. No es complejo y es bastante util, pero para empezar tampoco es algo fundamental y se sale del marco del tema. Si quieres saber mas sobre ese tema en especial y no lo terminas de ver claro, te invito a abrir otro tema.

Con respecto al traductor que buscas... tenemos algo parecido guardado en la seccion de descargas. Espero que te sea de utilidad:

http://www.comunidadgm.org/index.php?page=verdescargas&accion=descargaD&download_id=157

Animo y al toro.

?Nos leemos!
124
Preguntas y respuestas / Re: Abrir URL navegador
Octubre 15, 2010, 02:06:40 AM
Oye, pues si que funciona. XD

En mi caso me aparece un error tipo "GM no puede ejecutar la aplicacion" y justo despues me lanza el navegador. Dado que el juego esta terminado, he deshabilitado la opcion de mostrar errores y listo. Lo que me tiene intrigado es porque aparecia el error si despues ejecuta la aplicacion. ?Seria porque la siguiente funcion en ejecutarse es un game_end()? le voy a dar un ultimo repaso para revisarlo, pero lo que es la duda esta mas que resuelta.

Gracias por el cable. ?Nos leemos!
125
Preguntas y respuestas / Re: Abrir URL navegador
Octubre 15, 2010, 01:18:03 AM
?Asi, sin especificar la aplicacion ni nada?

No se me habia pasado por la cabeza. ?Voy a probarlo!
126
Preguntas y respuestas / Re: Abrir URL navegador
Octubre 14, 2010, 07:30:53 PM
Actualizo el tema.

He probado sacando la direccion del navegador por defecto leyendo el registro:

[gml]var browser;
registry_set_root(1);

browser = registry_read_string_ext("\SOFTWARE\Classes\HTTP\shell\open\command","");
execute_shell(browser,"http://www.oniric-factor.com/oniric.html");
game_end();[/gml]

Funciona correctamente en Windows XP, pero cuando lo ejecuto en un Windows 7 me da el siguiente error:

Cannot execute "C:\Program Files\Internet Explorer\iexplore.exe"
-nohome


?A que se creeis que debe y que se os ocurre que se podria hacer?

He estado verificando la ruta real y es C:\Archivos de programa\Internet Explorer\iexplore.exe ?acaso no es fiable esta ruta de registro en Windows 7?
127
Preguntas y respuestas / Re: Abrir URL navegador
Octubre 14, 2010, 05:14:35 PM
Jarl! no tenia ni idea de que habia una funcion para eso en GM8, yo lo hacia antes con "execute Shell" si no recuerdo mal, pero quiero que se utilice el navegador por defecto, no IE.

EDITADO:

Lo he estado probando, pero no funciona como necesito (no reproduce correctamente el DHTML). ?Alguna otra idea?
128
Preguntas y respuestas / Abrir URL navegador
Octubre 14, 2010, 02:53:29 PM
Saludos.

Estoy liado con la demo de mi juego y quiero que al terminar, me de la opcion de visitar una pagina web con el navegador predeterminado por el sistema.

Creo recordar que lo he hecho alguna vez, pero con explorer.

?Podria alguien comentarme como hacerlo?

129
Mmmm... recuerdo que la pagina estaba en Ingles.

130
Saludos.

Os escribo para ver si alguien me puede echar un cable con una direccion.

Como muchos sabreis, desde hace algun tiempo es posible jugar juegos de GM a traves del navegador. El tema es que hace algun tiempo mientras navegaba me tope con una pagina donde no solo podias subirlos, sino que ademas podias monetizarlos a traves de publicidad como se hace con otros juegos en flash. La pagina estaba orientada principalmente a juegos creados en Game Maker.

Mi problema surge cuando, por razones desconocidas, al actualizar Opera, la mitad de las carpetas de mis favoritos desaparece. Ahora mismo no tengo la direccion y no recuerdo el titulo de la pagina, he estado haciendo busquedas por la red, pero nada, que no la encuentro.

?Alguien la conoce o podria compartir enlaces a portales de juegos online que soporten algo mas que juegos flash?
131
Mmmm... la verdad es que no te termino de entender Kaliman. Con lo ultimo que me has comentado no me termina de quedar claro si cada objeto tiene una imagen con varios frames o varias imagenes diferentes. Para poder ayudarte tendria que verlo en funcionamiento. Adjuntate el editable o el ejecutable cuando tengas un rato y le echamos un ojo.

132
Mmmmm... a ver si me entero.

?Tienes un objeto para cada imagen?

?Terminan en la misma posicion Y?

Si es asi no necesitas ver distancias, simplemente comprobar cual es la imagen de cada uno de los objetos que esten en la coordenada Y que usas como referencia.

Si vas a seguir con el mismo planteamiento para tu problema, la solucion podria pasar por crear otro objeto para guardar las imagenes de cada uno de los objetos situados en la coordenada "Y" final.

Suponiendo que has creado un objeto de nombre "controlador" los objetos de cada linea vertical podrian tener algo asi en su evento step:


if(y=80)
{
  if (x=40) {controlador.img1=sprite_index;} //Linea 1
  else if (x=120) {controlador.img2=sprite_index;} //Linea 2
  else  {controlador.img3=sprite_index;} //Linea 3
}



Con lo que ya tendrias almacenadas en las variables img1, img2 e img3, del objeto "controlador" las imagenes necesarias para verificar si el jugador obtiene un premio o no.

?Suerte!
133
http://www.comunidadgm.org/index.php?topic=8253.0

De todas formas, por lo que he podido ver, parece ser que los archivos *.ico no son mas que archivos *.bmp con la extension cambiada.

?Suerte!
134
Preguntas y respuestas / Re: Problema! ayuda!
Mayo 22, 2010, 07:18:56 AM
Mmmm... podria ser que el error te aparece porque busca el objeto jugador busca la variable en una instancia que ya no existe.

If an expression is true: vspeed > 0 && y < other.y+8
Start of a block,
Set the vertical speed: -9
destroy the instace: Other
end of a block


Te consejo hacer lo siguiente: pon el codigo de verificacion en la instancia enemiga en lugar de la del jugador. A ser posible utiliza GML, porque te dara un control mas preciso de lo que haces.

Evento colision del enemigo:

if (other.vspeed!=0 && other.y+8<y) {Player.vspeed-=9; instance_destroy();}

else{//pon aqui el codigo para la muerte del jugador}


A la larga es mas sencillo usar codigo.

PD: El icono de GM8 lo tienes que poner en el titular, no en el cuerpo del mensaje. La idea es que quien esta ojeando el subforo sepa de que va el tema antes de abrir el mensaje. Lo mismo ocurre con el titular. Trata de ser especifico.
135
Preguntas y respuestas / Re: problema con la ?
Mayo 18, 2010, 08:19:39 AM
Yap, se entiende la idea, pero no es lo mismo un valor de una cadena que el nombre de una variable. Es como si la quieres llamar "1", tampoco es valido. Si bien hay un espectro bastante amplio de posibilidades, las variables en GM (como en la mayoria de los lenguajes), no pueden llevar cualquier nombre. Para evitar problemas yo te recomendaria no complicarte y utilizar siempre nombres en minusculas, evitando cualquier tipo de caracter especial. A lo sumo un guion bajo.