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

1
te dejo este enlace:
http://gamemakercookbook.blogspot.com.ar/

en la pagina si bajas un poco vas a encontrar como se programan en GML las acciones Drag&Drop, para que puedas empezar a programar :).

nota: las acciones son del GameMaker 8.1 algunas ya son obsoletas como Sleep, pero la mayoria estan iguales.
2
hola, pienso que podes ponerlo asi al código del movimiento:

//Movimiento
if !keyboard_check_pressed(ord('Z'))
{
if(right){x += 4 image_index = 3}
if(left){x -= 4 image_index = 2}
if(up){y -= 4 image_index = 4}
if(down){y += 4 image_index = 5}
if(quieto) {image_index = 0}
}

creo que funcionaria. :-\
3
Preguntas y respuestas / Re:hud, objetos y zoom
Mayo 10, 2017, 08:20:22 AM
Citar
He probado tu código, Nfire14. Funciona exactamente igual que el primero que me pusiste:

if point_in_rectangle(window_mouse_get_x(),window_mouse_get_y(),1260,0,1280,15)
  {
   if mouse_check_button_pressed(mb_left)
    {
      //tus aciones aqui
    }
  }

No veo diferencia alguna salvo que este es mucho más corto. Los objetos siguen huyendo cuando hago zoom.
Por cierto, los cálculos hay que hacerlos al revés:
No es 1280/(100*1260)=98.4 sino (100*1260) / 1280 = 98.4 y así todos los demás.

perdon no me dicuenta que estaban al revés y el codigo largo de los porcentajes funciona con pantalla completa  :-[. lo arreglo.

estube releyendo:
Citar
Nfire14. Aclaro que el sprite sí se queda en su sitio, tanto con mi programación como con lo que tú me has puesto, pero lo que me interesa es que el objeto se quede también. Es decir, cuando hago zoom, el sprite del botón se queda en su posición, pero el objeto botón, que es el que me interesa porque está programado para que haga alguna acción, se aleja o se acerca con el zoom. Mi interés es que tanto el botón(objeto) como su sprite permanezcan en el mismo lugar hagas lo que hagas.

Entonces para que el objeto botón este en su lugar te pongo este ejemplo, un boton que tiene que estar en la posicion x=233, y=2, con una ventana o port de 270x198:


/// evento STEP
{
///cálculos
/*
posición x
270 - 233 = 37

posición y
198 - 2 = 196
*/

x = window_get_width()-37;
y = window_get_height()-196;

}


eso va a hacer que siempre este el objeto boton en el mismo lugar, fijate si te funciona si no es eso no se  :-X
4
Preguntas y respuestas / Re:hud, objetos y zoom
Mayo 08, 2017, 07:57:23 AM
tambien uso algo parecido, pero en mi juego se puede usar pantalla completa por eso no lo puse completo en el ejemplo y para que los botones esten siempre en el mismo lugar uso porcentajes,tomo originales los tamaños de width y height de la ventana de esta forma:
(voy a seguir usando el ejemplo del boton de 20x15,con el tamaño de pantalla que usas 1280x720,pero el cambio la coordenada y1,y2 a +4 para este ejemplo)

nota: primero tenes ser saber en que posicion esta el boton(x,y) y su anchura y altura.


/*EDITADO
explicacion:
primero la coordenada x1 de point_in_rectangle
  (100*1260)/1280=98.4//este es porcentaje en pantalla de x1(con decimales)

segundo la coordenada y1
  (100*4)/720=0.55//y1

tercero x2
(100*1280)/1280= 100

cuarto y2
(100*20)/720=2.77

luego se obtiene el la anchura y altura de la ventana y se divide por el porcentage dividido 100 y se redondea
ejemplo x1:
round(window_get_width()*(98.4/100))
*/

///STEP
  if point_in_rectangle(window_mouse_get_x(),window_mouse_get_y(),round(window_get_width()*(98.4/100)),round(window_get_height()*(0.55/100)),round(window_get_width()*(100/100)),round(window_get_height()*(2.77/100)))
  {
   if mouse_check_button_pressed(mb_left)
    {
      //tus aciones aqui
    }
  }

///DRAW GUI
/////se usan las mismas coordenadas x1,y1,.....
////dibuja el boton escalado segun el tamaño de la ventana

///////EDITADO
/*
la anchura del sprite
(20*100)/1280

la altura
(15*100)/720
*/
///////
  draw_sprite_stretched_ext(sp_boton,0,round(window_get_width()*(98.4/100)),round(window_get_height()*(0.55/100)),round(window_get_width()*(1.56/100)),round(window_get_height()*(2.08/100),c_white,1);



el codigo es algo complicado pero me funciona, te da la coordenada segun el porcentage de ventana tomando las coordenadas x1,y1,x2,y2 originales, incluso funciona en pantalla completa,se puede agrandar el point_in_rectangle un poco si se quiere.
no se si te puede servir pero te dejo el codigo :-[


5
Preguntas y respuestas / Re:hud, objetos y zoom
Mayo 06, 2017, 06:17:50 AM
CitarNfire14. Aclaro que el sprite sí se queda en su sitio, tanto con mi programación como con lo que tú me has puesto, pero lo que me interesa es que el objeto se quede también. Es decir, cuando hago zoom, el sprite del botón se queda en su posición, pero el objeto botón, que es el que me interesa porque está programado para que haga alguna acción, se aleja o se acerca con el zoom. Mi interés es que tanto el botón(objeto) como su sprite permanezcan en el mismo lugar hagas lo que hagas.

yo pense que con zoom los botones se salian de su sitio :-[.
tambien uso zoom y para que funcionen los botones uso el point_in_rectangle de esta forma(te pongo un ejemplo de un boton de 20x15):

if point_in_rectangle(window_mouse_get_x(),window_mouse_get_y(),1260,0,1280,15)
  {
   if mouse_check_button_pressed(mb_left)
    {
      //tus aciones aqui
    }
  }


yo tambien tenia es problema y era que usaba mouse_x y mouse_y, al usar window_mouse_get_x() y window_mouse_get_y() usa las coorde nadas de la ventana y sin importar que se agrande o achique la view toma esas coordenadas.

6
Preguntas y respuestas / Re:hud, objetos y zoom
Mayo 05, 2017, 09:25:52 AM
hola,yo para poner los botones fijos con Draw Gui pongo la posicion que deben tener en la ventana,por ejemplo para poner un boton de 20x10 en el borde superior derecho de tu view:

draw_sprite(sprite_boton,0,1260,0);

a mi me funciona asi, aunque uso un solo objeto que dibuja varios botones.

7
Preguntas y respuestas / Re:Salto isometrico
Mayo 04, 2017, 08:52:40 AM
hola, yo encontre hace mucho en el sandbox que tenia yoyogames este ejemplo de un mario isometrico de un usuario llamado Poisonous Mushroom, que te adjunto,se salta con la Z,tiene algunos errores como que te quedas atorado entre los blockes pero
funciona,espero que te sirva.
8
Preguntas y respuestas / Re:Muchas preguntas.
Mayo 03, 2017, 06:06:52 AM
CitarPregunta #1: Hacer un draw en la mitad de la VIEW.
Bueno, todos para esto usamos (O al menos yo) el codigo draw_text (view_wview/2, view_hview/2, "")
Pero yo tengo un problema que cuando cambio el tamaño de la view_w y la view_h el texto no se dibuja en el centro de la pantalla si no que se dibuja a 300 pixeles hacia X+ osea hacia la derecha...
Cuando no cambio el tamaño si se dibuja en el centro usando draw_set_haling (fa_center).

hola, proba poniendolo de este modo:
draw_text (window_get_width()/2,window_get_height()/2 , "texto");

lo que hace window_get_width() y window_get_height() devuelve el tamaño de la ventana de tu juego,y sin importar el cambio del tamaño de la view lo dibuja el texto en la posicion que le pongas en la ventana.espero que te sirva