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

16
Aquí esta el ejemplo, dentro de él explico todo.  ;)

Suerte.
17
los códigos que te di van en el evento step del jugador  ;)

Cometí un error en el code anterior :-[  , prueba con este:

if x<10{x=xprevious}
if x>9990{x=xprevious}

if y<10{y=yprevious}
if y>9990{y=yprevious}
18
Juegos completos / Re:Criminal Life
Julio 11, 2013, 02:39:11 PM
Esta genial tu juego, simplemente genial, me inspiraste un poco en un proyecto que tengo  :D

detecte un error:


___________________________________________
ERROR in
action number 1
of Trigger Event: "F" o "ENTER"
for object player:

Error in code at line 4:
   in=instance_nearest(x,y,obj_car) if in.cerrado=1 exit if distance_to_object(in) <5{if in.car=0 with in{crearPeatonMuerto()} canExit=0 in.apagado=0 in.car=2 textcar=in.name instance_destroy()}
                                          ^
at position 41: Unknown variable cerrado


me ocurrió al entrar a una tienda de armas y intente comprar una pistola si no me equivoco. (no tenia el dinero suficiente pero igual le intente... soy tester XD )

Me puse sobre la pistola, apreté la tecla "F" y walá.
19


if keyboard_check_pressed(ord("S"))
   {
   screen_save(working_directory + "\Screeens\Screen_"+string(num)+".png")

   num += 1;
   }


ocupa esté, ya que al apretar la "S" se guardan las capturas, (puedes cambiar esta tecla por la que quieras)

crea un objeto persistente con el nombre "camara" y pon este código en su evento steep.

en el evento create de esté pon:

num=0

PD: para que funcione, solo debes crear una carpeta junto al archivo ejecutable del juego con el nombre Screeens  (no se porque tiene tantas "E"  XD)
20
Cita de: brunoxzx en Julio 11, 2013, 09:11:59 AM
Yo te recomiendo que no crees miles de instancias al rededor del room (va  a alentar tu juego muchísimo aunque las desactives), basta con poner un còdigo en outside the room como: "x=xprevious, y=yprevious o algo màs sofisticado". También puedes poner una sola instancia en cada esquina y modificar su image_xscale u image_yscale hasta que abarque el tamaño del room.

Te apoyo, si pone muchos objetos en una room gigante, se te ralentizara el juego enormemente, tengo experiencia en estas cosas :-[ ... lo mejor es usar algún código mas sofisticado. para usar el "previous" se me ocurre algo así:

If x<10{x=x}
If x>9990{x=xprevious}

If y<10{y=yprevious}
If y>9990{y=yprevious}

va en el evento steep (al final de todo lo demás en este evento, para evitar posibles errores)

creo que hay otra forma mas eficaz, ya que con esta el jugador al llegar a cierto borde comenzaría a "tiritar" XD

corrijanme si hay algo malo  :-[
21
Preguntas y respuestas / Re:game maker
Julio 11, 2013, 01:20:38 PM
yo prefiero gm8, los demas no me interesan. Con este me basta y me sobra de momento  XD
22
Preguntas y respuestas / Re:Ataque enemigo
Julio 05, 2013, 06:31:39 PM
He visto el ejemplo que diste, te daré algunos consejos para este tipo de juegos (Top Down) y te ayudare en lo que pueda con la IA.

Primero las cosas mas simples o esenciales:

-Los sprites de personajes (enemigo, jugador, etc) siempre es recomendable cambiarles la "mask" a un circulo perfecto del tamaño que tu estimes conveniente (para cambiar la mask, abre el sprite y ve a Modify Mask, si no sabes como cambiar la mask avísame ). Recuerda que la mask define la forma "original" del objeto, independiente de el dibujo que tenga, y en este caso sirve cambiarlas a un circulo perfecto para que cuando el angulo de la imagen gire no se quede trabado el objeto en un muro.

- los objetos como balas, bombas, o cosas que necesitan cierta precisión de su ubicación (por ejemplo un objeto que sea la cabeza de una persona, y otro que sea el cuerpo, quisiéramos que la cabeza este siempre en su sitio), los sprites de estos objetos deben tener su punto de origen en el lugar deseado, casi siempre es centrado como tu caso.
Vi tu ejemplo y algunas balas pasaban de largo porque tenían el punto de origen descalibrado. Recuerda siempre calibrar el punto de origen del sprite, es un error muy común que todos hemos tenido alguna vez.
(para centrar automáticamente el punto de origen ve al sprite y coloca "center", pera cambiarlo manualmente puedes hacer clic sobre la imagen o poner las coordenadas).

-las balas debes colocar que cuando colisionen se destruyan, para que causen daño una sola vez.

-si te fijas, mientras mas velocidad tengan las balas, mas grandes son los pixeles que se saltan (avanzan a saltos), y es por esto que algunas veces no llegan a su objetivo porque se lo saltan, en lo personal yo evito esto haciendo las balas mas largas, como las flechas. Es un problema que no le eh buscado otra solución, a ver si tu encuentras algo mejor (mi método funciona bastante bien ).
Si ocupas mi método, recuerda poner en el código en el evento create de la bala pone image_angle=direction,con esté solo cambiara su angulo al crearse y nada mas.   
esto es para que la bala "mire" en la dirección de su trayectoria y no se vea tan mal.

uf esto es en cuanto a lo básico. XD

Cambie el sistema de las balas, ahora es uno mas simple y eficaz  en el ejemplo que te daré al final veras los cambios, te dejare notas dentro de los eventos para que entiendas el "porque" de las cosas, así aprenderás mejor y mas rápido. :D

El error de que algunos súbditos no disparaban era cuestión de expresión de signos, tu usaste medidas de distancia, menor que o mayor que > o <, pero omitiste el igual = y la alarm[0] del subdito1 la pusiste dentro de la condición, por eso es que algunos casos no disparaban ya que la distancia era igual a el parámetro o no se cumplía la condición, lo corregí también. 

Espero haberte ayudado. ;)
23
Vaya, no había visto este script de Fenris78  :-[ , gracias knd144.

Brunoxzx , tenia problemas para adaptarlo muchas gracias a ti también, han resuelto mi duda  ;)
24
Hola a todos.

El asunto es que después de crear un código para una torreta automática, en el cual está elige su objetivo por proximidad, surgió el problema de que si el enemigo mas cercano esta detrás de un muro, solo se fija en esté y no en el otro enemigo que esta descubierto (no lo toma como amenaza ya que esta mas lejos que el primero. ).

Quería saber si alguien conoce una forma de hacer que la torreta tome en cuenta los enemigos expuestos, aun que esten mas lejos y no los que estan a cubierto o detrás de un muro (el código que empleo se basa en collision_line y instance_nearest).

muchas gracias por su tiempo  :)