Noticias

Importante: ¡Si quieres publicar tu juego no olvides leer este tema!

Comunidad Game Maker

Bienvenid@ a la comunidad hispana de Game Maker. Nuestro objetivo es crear videojuegos y dar soporte en castellano de GM. Para mejorar nuestro servicio hemos implantado, como adicion al reglamento general, algunas normas especificas en los subforos más comunes. ¡No olvides informarte antes de participar!.

Mostrar Mensajes

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


Mensajes - dixon2010

Páginas: 1 2
1
Preguntas y respuestas / Re:mouse
« en: Noviembre 25, 2018, 02:14:22 am »
Hola, gusto en saludarlos.

Los que dice Hezz y Taki-A es correcto  ;).
Hay muchas maneras de lograrlo.

Tu código le está diciendo al sistema que:
Cuando se presione el botón izquierdo del mouse se cambie de room.
Código: [Seleccionar]
if(mouse_check_button_pressed(mb_left)){room_goto(RM_TABLERO)

Puedes decirle:
Cuando se presione el botón izquierdo del mouse y en la posición del mouse se encuentre el objeto se cambie de room.
Código: [Seleccionar]
check=(instance_position(mouse_x, mouse_y,object_index)=id);
if(mouse_check_button_pressed(mb_left) && check){room_goto(RM_TABLERO)}

Tambien puedes decirle:
Cuando se presione el botón izquierdo del mouse y la distancia del mouse al objeto sea mejor que la mitad del ancho de su sprite se cambie de room. (este funciona bien solo si el origen del sprite está en su centro)
Código: [Seleccionar]
sw=sprite_width/2
if(mouse_check_button_pressed(mb_left) && point_distance(x,y,mouse_x,mouse_y)<sw){room_goto(RM_TABLERO)}
Los siguientes usuarios dieron las gracias a este tema: Hezz

2
Preguntas y respuestas / Re:Necesito su ayuda!!
« en: Noviembre 14, 2018, 02:06:26 pm »
Hola gusto en saludarle,

Si las vidas son igual a cero entonces las monedas deben ser  cero.
coloca algo así en el evento STEP
Código: [Seleccionar]
if(vida=0)monedas=0;
Los siguientes usuarios dieron las gracias a este tema: TruperMax

3
General / Re:¿Esta llegando la hora de cambiar de motor?
« en: Noviembre 13, 2018, 02:59:52 pm »
Gm8 es muy muy incomodo, no deja abrir varias ventanas de codigo y has de cerrar todo cada vez que vas a darle al play, eso para mi es perder mucho tiempo de mi vida xd


kostra, la velocidad de testeo del gm8 es más poderosa que game maker studio 1 y 2..pues gm8 y versiones anteriores incluyen el execute_file(file) con lo cual puedes programar inclusive jugando el juego (programar jugando el juego, programar estando en acción, estando ejecutando) cosa que game maker studio 1 y 2 no existe pues decidieron llamarlo obsoleto, cuando la verdad es que con esta función se puede construir un game maker mediante el game maker y yoyo se dió cuenta de eso y dijo.. no no no llamemosla obsoleto para que se lo crean, no vallan a contruir un game maker gratuito.
Los siguientes usuarios dieron las gracias a este tema: Yuzo

4
Juegos completos / Re:Lab 23 [Windows] Me gustó
« en: Noviembre 09, 2018, 07:11:11 pm »
Hola, un placer comunicarme con usted.

Desde mi punto de vista la idea de jugar con el mouse es interesate.
Encontré estos problemas donde el jugador se queda pegado a las paredes.



Los siguientes usuarios dieron las gracias a este tema: Yuzo

5
Desarrollo de Scripts / orden_alfabetico(str,index)
« en: Noviembre 09, 2018, 05:01:57 pm »
Nombre del creador: REYES DAVILA
Breve descripción de su función: orden alfabético.
Versión GM utilizada: GM4
Código del Script:

b1=0
b3=0
kbk=0
contador=0

//ADMINISTRADOR DE PALABRAS
palabra_ram=""
i2=1
for(i=1;i<=string_length(argument0);i+=1)
 {
  letra=string_copy(argument0,i,1)
  letra_pos=string_copy(argument0,i-1,1)
  if(letra!=" ")palabra_ram+=letra
  if(letra=" " && letra_pos!=" " || i=string_length(argument0))
   {
    palabra[i2]=palabra_ram
    palabra_id[i2]=i2
    palabra_letra[i2]=string_copy(palabra[i2],1,1)
    if(ord(palabra_letra[i2])>=91 && ord(palabra_letra[i2])<=122)palabra_letra[i2]=chr(ord(palabra_letra[i2])-32)
    palabra_ram=""
    if(i<string_length(argument0))i2+=1
   }
 }
palabra_numero=i2

//organizador de palabras
for(i=1;i<=palabra_numero;i+=1)
 {
 palabra_pos[i]=1
 for(i2=1;i2<=palabra_numero;i2+=1)
  {
  ord1=ord(palabra_letra[i])
  ord2=ord(palabra_letra[i2])
  id1=palabra_id[i]
  id2=palabra_id[i2]
  if(i!=i2 && ord1 > ord2){palabra_pos[i]+=1}
  if(i!=i2 && ord1 = ord2)
   {
   if(palabra[i]=palabra[i2])    
    {
    if(id1>id2){palabra_pos[i]+=1}
    }
    else
    {
    if(string_length(palabra[i])>1 && string_length(palabra[i2])>1)
     {
     superior=0
     i3=1
     repetir=1
     for(i3=1;repetir;i3+=1)
      {
      repetir=0
      letra=string_copy(palabra[i],i3+1,1)
      letra2=string_copy(palabra[i2],i3+1,1)
      if(string_length(palabra[i])>i3-1 && string_length(palabra[i2])>i3-1)
       {
       if(ord(letra) > ord(letra2)){superior=1}
       if(ord(letra) = ord(letra2)){repetir=1;}
       }
      }
     if(superior){palabra_pos[i]+=1}
     }
     else
     {
     if(string_length(palabra[i])!=string_length(palabra[i2]))
      {
      if(string_length(palabra[i])>string_length(palabra[i2])){palabra_pos[i]+=1;}
      }
      else
      {
      if(id1>id2){palabra_pos[i]+=1;palabra_cod[i]="aqui"}
      }
     }//fin else
    }//fin else
   }//fin if
  }//fin for
 }//fin for

//organizador de palabras 2
for(i=1;i<=palabra_numero;i+=1)
 {
 for(i2=1;i!=palabra_pos[i2];i2+=1){};
 palabra_ordenada[i]=palabra[i2]
 }

//agrupando palabras
str2=""
for(i=1;i<=palabra_numero;i+=1)
 {
 str2+=palabra_ordenada[i]+" "
 }

//devolviendo valor

if(argument1)
 {
 return palabra_ordenada[argument1]
 }
 else
 {
 return  str2
 }

orden_alfabetico(str,index): en str colocas la cadena con el conjunto de palabras a ordenar y en index colocas la palabra que quieres ver, si no se especifica nada devuelve la cadena completa ordenada.

Ejemplo1:
orden_alfabetico("corazón tiburón azul ballena")
esto devuelve cadena: "azul ballena corazón tiburón"

Ejemplo2:
orden_alfabético("corazón tiburón azul ballena", 1)
esto devuelve cadena: "azul"

Los siguientes usuarios dieron las gracias a este tema: 3dgeminis

6
Preguntas y respuestas / Re:No consigo poner la animacion de salto
« en: Noviembre 08, 2018, 10:30:14 pm »
Intenta con este y avísame su funcionamiento.
donde object1 es el suelo y/o la pared

[EVENT CREATE]
Código: [Seleccionar]
s=0;

[EVENT STEP]
Código: [Seleccionar]
b2=keyboard_check(38)
if(b2*(s=0)*place_meeting(x,y+10,object1))s=20
if(s)s-=1
vs=10-s
while(place_meeting(x,y+vs,object1))vs-=1*sign(vs)
y+=vs

Los siguientes usuarios dieron las gracias a este tema: Yuzo

7
General / Re:¿Esta llegando la hora de cambiar de motor?
« en: Noviembre 07, 2018, 07:42:07 pm »
Hola gusto en saludarles.


Mark Overmars, diseñó un lenguaje muy poderoso.

Al final se encuentra un enlace a un código fuente de un juego desarrollado con game maker versión 4.0 (julio 16, 2001) que puede ser exportado a android oreo 2018 sin ningún error.

http://www.comunidadgm.org/juegos-completos/la-carreta-precisa/
Los siguientes usuarios dieron las gracias a este tema: Yuzo

8
Propuestas y soporte / Re:Propuesta mas que pregunta!
« en: Noviembre 06, 2018, 07:32:07 pm »
Yo estaba pensando en algo como dice kostra,

El dinero motiva a crear grupos, pero sin dinero ¿qué motiva?.  Solo nos queda crear un juego motivador que atraiga a todos los miembros de esta comunidad.

Eclesiastés 10:19 El pan es para la risa de los trabajadores, y el vino mismo regocija la vida; pero el dinero es lo que tiene buena acogida en todo.
Los siguientes usuarios dieron las gracias a este tema: Goganpis

9
General / Fenris78 ¿como está?
« en: Noviembre 06, 2018, 05:19:39 pm »
Hola, gusto en saludarle.



Ruerdo en el pasado cuando el administrador Fenris78, se pasaba por estos pasillos con mucha frecuencia con su carácter ejemplar, poniendo mucho orden y disciplina. Quisiera saber como está y que consejos puede darnos a todos los que aún usamos gamemaker como nuestro principal motor de desarrollo. Estoy admirado por lo que ha logrado su firma "Oniric Factor".

El siguiente video expone una serie de video juegos creados por Oniric Factor
https://www.youtube.com/watch?v=sc2VlGqL5Bo

Los invito a agradecerle todos los reglamentos que ha publicado para esta comunidad y darle un like para ver si algún día se levanta y nos frece algunas palabras de aliento y revolución.  ;)


Es hora de entregarle nuestro bolígrafo.

Cabe mencionar que todos los administradores de esta comunidad son admirables por su conducta y temperamento al enfrentar los problemas de la comunidad y representan un modelo a seguir en ética y respeto. Muchas gracias a todos.
Los siguientes usuarios dieron las gracias a este tema: Soujiro, Johann

10
Juegos en desarrollo / Inderezar el camino
« en: Noviembre 02, 2018, 03:08:29 pm »


Inderezar el camino


Serius Game


GM5

Este futuro game pretende ser un entretenimiento educativo y herramienta para desarrollar la habilidad de tolerar largas horas de lectura con alegría. En cuanto al tema principal del juego pues trata sobre las técnicas biblicas que he aplicado para corregir mi conducta.

La mis internacional 2018 Mariem Velazco, menciona que estimulará a los niños para que lean.






https://mega.nz/#!mqQCWK7C!5Op1uLjteMq3IOA05KPf4Rz7pmEr2DOuc2r8ir9e1jE


El código utilizado me ha sido bastante complicado pues para conseguir ciertas funciones he tenido que imitar la función draw_text_ext

Código: [Seleccionar]
if(x=0)
{
kbk=0
b1=0
b3=0

b5=0
b6=0
contador=1
contador2=1

str="Proverbios 1:5 El sabio escucha y absorbe más instrucción, y el entendido es el que adquiere dirección diestra,"
font_name="Courier New"
font_size=10

//ADMINISTRADOR DE PALABRAS
i2=1
palabra_ram=""
margen=" "
sl=0
for(i=1;i<=string_length(str);i+=1)
{
letra=string_copy(str,i,1)
letra_pos=string_copy(str,i+1,1)
if(letra!=" ")palabra_ram+=letra
if(ord(letra)=13)sl=320
if(letra!=" " && letra_pos=" " || i=string_length(str))
{
palabra_linea[i2]=1
palabra[i2]=palabra_ram
palabra_index[i2]=i-string_length(palabra[i2])+1
palabra_index2[i2]=i
palabra_x[i2]=string_width(string_copy(str,1,palabra_index[i2]-1))
if(i2=1)palabra_x[i2]=0
palabra_x2[i2]=string_width(string_copy(str,1,palabra_index2[i2]))
palabra_x2max[i2]=string_width(string_copy(str,1,palabra_index2[i2])+string(margen))
if(i<string_length(str))i2+=1
palabra_ram=""
}
}
palabra_numero=i2

//ADMINISTRADOR DE LINEAS
palabra=1
i2=1
str2=str

for(i=1;i<=string_length(str);i+=1)
{
letra=string_copy(str,i,1)
letra_pos=string_copy(str,i-1,1)
if(letra=" " && letra_pos!=" " || i=string_length(str)){palabra+=1}

if(palabra_x2max[palabra]>320)
{
linea[i2]=string_copy(str2,1,palabra_index2[palabra-1])
str2=string_copy(str2,palabra_index[palabra],string_length(str2))
i2+=1

for(i3=palabra+1;i3<=palabra_numero;i3+=1)
{
palabra_index2[i3]-=palabra_index[palabra]-1
palabra_index[i3]-=palabra_index[palabra]-1
palabra_x2max[i3]-=palabra_x[palabra]
palabra_x2[i3]-=palabra_x[palabra]
palabra_x[i3]-=palabra_x[palabra]
palabra_linea[i3]=i2
}
palabra_linea[palabra]=i2
palabra_index2[palabra]-=palabra_index[palabra]-1
palabra_index[palabra]-=palabra_index[palabra]-1
palabra_x2[palabra]-=palabra_x[palabra]
palabra_x2max[palabra]-=palabra_x[palabra]
palabra_x[palabra]-=palabra_x[palabra]
}
}
linea_numero=i2
linea[linea_numero]=str2

x=1
}
//botones a usar
b1p=(b1=0)*keyboard_check(37)
b1=keyboard_check(37)
b3p=(b3=0)*keyboard_check(39)
b3=keyboard_check(39)
b5p=(b5=0)*keyboard_check(97)
b5=keyboard_check(97)
b6p=(b6=0)*keyboard_check(98)
b6=keyboard_check(98)
contador+=b3p-b1p
contador2+=b6p-b5p
kbkp=(kbk=0)*keyboard_key
kbk=keyboard_key

if(kbkp=113)game_restart()

//dibujos
recy=(palabra_linea[contador]-1)*(font_size+font_size/1.5-1)
draw_rectangle(palabra_x[contador],recy,palabra_x2[contador],recy+font_size+font_size/1.5)

draw_text_ext(0,0,str,-1,320)

dy=120

i=1
repeat(linea_numero)
{
draw_text(0,dy,linea[i])
dy+=font_size+font_size/2
i+=1
}



Los siguientes usuarios dieron las gracias a este tema: Goganpis

11
Hola, gusto en saludarles.

La sabiruria es la cosa principal adquiere sabiduría y con todo lo demás adquiere conocimiento.

La internet debes olvidar, las distracciones evitarás, motor de videojuegos debes encontrar libre y gratuito, un lenguaje de programación decidirás aprender, estudiar informática en la universidad te ayudará, amar a las matematicas deberás. Pedir ayuda a Dios y te dará.

El siguiente video explica la pasión por las matemáticas
https://www.youtube.com/watch?v=RUS_W1Y5cos
Los siguientes usuarios dieron las gracias a este tema: HolaSoyAlpha

12
Propuestas y soporte / Re:Propuesta mas que pregunta!
« en: Noviembre 01, 2018, 04:00:11 pm »
Admito que mi comentario no fue adecuado, me he equivocado de nuevo usando palabras sin pensar, pido disculpas a usted y a todos los que ofendí. Gracias por las correcciones.

He leído su publicación con dificultad pues el tema se desvía mucho (Proverbios 22:15), me gustó su propuesta de crear un grupo de desarrollo de video juegos, es cierto que una persona sola no puede hacer mucho pues en la unión está la fuerza (Proverbios 11:14). Me agradó cuando mencionaste la importancia de la sabiduría (Proverbios 4:7), también me pareció interesante el tema de los vicios a los video juegos, lamentablemente  la mayoría de los video juegos no aportan sabiduría práctica,  solo se ofrecen temas irreales que no son de provecho en la vida real. (1 Samuel 12:21). Con respecto a lo mencionado sobre el dinero, sería muy bueno obtener ganancias económicas suficientes para enfrentar tranquilamente nuestra situación en Venezuela, pero mucho dinero pudiese ser perjudicial (1 Timoteo 6:10). Es motivador y emocionante programar con la meta de ayudar a las personas.
Los siguientes usuarios dieron las gracias a este tema: Goganpis

13
Preguntas y respuestas / Re:Sobre instance_nearest
« en: Octubre 29, 2018, 12:55:08 pm »
Hola gusto en saludarles en esta mañana de este bello lunes 29 de octubre. Se le saluda de Maracay Estado Aragua en Venezuela.

Vuelves a agregar complejidad al código, pero no te preocupes.

Para solucionar tenemos que tomar en cuenta lo siguiente: Supongamos que un tal Axel de streets of rage 2 se siente un poco preocupado porque al parecer en la  Game Off 2018 no ofrecen ningún premio solo un reconocimiento, entonces al ver que hay mucha crisis decide donar unos pocos dolares que le queda a la caja de la comunidadgm. Entonces obtendriamos esto



El código que se está manejando presenta las siguientes caracteristicas.

1. El enemigo actua cuando es el más cercano al player.
2. El player detecta solo al enemigo mas cercano.
3. Cada enemigo tiene una distancia de deteccion distinta.

El código es el siguiente:

PARA EL OBJETO player
[CREATE EVENT]

Código: [Seleccionar]
global.distancia=150
[STEP EVENT]
Código: [Seleccionar]
//detectar enemigos
if instance_exists(obj_parent_enemigos)
            {
                global.objetivo = instance_nearest(x, y, obj_parent_enemigos);
                dir = point_direction(x,y,global.objetivo.x,global.objetivo.y);
               
                if(point_distance(x,y,global.objetivo.x,global.objetivo.y) < global.distancia)
                {
                if ( dir < 90 || dir > 270 ) {sprite_index = spr_jugador_movimiento; image_xscale = 1;} else     
                if ( dir < 270 && dir > 90 ) {sprite_index = spr_jugador_movimiento; image_xscale = -1;}
                }
            }

PARA EL OBJETO obj_parent_enemigos

[CREATE EVENT]
Código: [Seleccionar]
distancia=150[STEP EVENT]
Código: [Seleccionar]
if(global.objetivo=id)
{
global.distancia=distancia
}

PARA EL OBJETO obj_enemigo1
[CREATE EVENT]

Código: [Seleccionar]
distancia=150[END STEP]
Código: [Seleccionar]
if(global.distancia=distancia && point_distance(x,y,player.x,player.y) < global.distancia)
{
//aqui colocas lo que va ha hacer el enemigo
}

PARA EL OBJETO caja
[CREATE EVENT]
Código: [Seleccionar]
distancia=25[END STEP]
Código: [Seleccionar]
if(global.distancia=distancia && point_distance(x,y,player.x,player.y) < global.distancia)
{
//aqui colocas lo que va ha hacer LA CAJA
}

Para modificar las distintas distancias de los objetos del parent, se modifica la variable distancia de cada objeto en el evento create.

Al final hay un ejemplo para descargar
Los siguientes usuarios dieron las gracias a este tema: zHeMaa

14
Preguntas y respuestas / Re:Sobre instance_nearest
« en: Octubre 26, 2018, 01:32:00 am »
Hola, saludos cordiales.

Él código de Johann es correcto pues le está diciendo al enemigo más cercano que tome acciones. Pero luego agregas una nueva dificultad que es mirar al enemigo más cercano. Entonces son dos acciones distintas.

Para el objeto player
[evento step]
Código: [Seleccionar]
if instance_exists(obj_parent_enemigos) {
       with (instance_nearest(x, y, obj_parent_enemigos)) {
        //Aquí iría el código que haría con el enemigo mas cercano. :)
       }
       //Esto es para mirar al enemigo más cercano
       objetivo=instance_nearest(x, y, obj_parent_enemigos);
       dir = point_direction(x,y,objetivo.x,objetivo.y);
       if ( dir < 90 || dir > 270 ) {sprite_index = spr_jugador_parado; image_xscale = 1;} else     
       if ( dir < 270 && dir > 90 ) {sprite_index = spr_jugador_parado; image_xscale = -1;}

       }


Los siguientes usuarios dieron las gracias a este tema: Yuzo

15
Juegos completos / Re:Puzzle Jigsaw Pro <---- Acceso anticipado
« en: Octubre 23, 2018, 04:09:07 pm »
Hola gusto en saludarles.

Es un juego pacífico, con imágenes que nos muestran la belleza y elegancia de la vida urbana y natural. A simple vista es bastante atractivo, refleja la paz interna del autor. Me gusta .
Los siguientes usuarios dieron las gracias a este tema: KalfabGame

Páginas: 1 2