Noticias

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

* Sponsor

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

Páginas: 1
1
lo mas facil y rapido es que trabajen en 1.4 y si va a esportar a android o consolas cuando terminen tu exportas al 2 y corrigues los problemas

2
Hola, saludos

Bueno, recomiendo:

1. Que ambos usen la 1.
2. Que no se exijan mucho.
3. Que se repartan los niveles.
4. Que creen niveles identificando correctamente los sprites y objetos.
5. Que cada nivel sea absolutamente independiente del juego para evitar una confusión de objetos.
6. Primer paso: has un nivel, y dile a tu camarada que haga otro, luego une todo poco a poco.
7.Cada nivel debe ser un proyecto independiente
8. Cada nivel debe entregarse en estado funcional
9. Previamente definan la plataforma final: windows
10. Acepten las imperfecciones del otro compañero. No piensen en proyectos perfectos.


Un ejemplo:

Decido crear un nivel 1 para un juego x, entonces produzco un editable completo con solo el nivel 1 y lo mando a integrar al juego final. El encargado de integrar (que puede ser cualquiera porque todos tendrán una copia de cana nivel) integrara todo y luego creara una room dedicada a la portada.


Consejo: preferiblemente cada nivel debe estar compuesto por una sola room. Y si su intención es crear algo parecido a un rpg hay si van a tener problemas porque tendrán que organizarse muy bien para que todo encaje sin dificultades.

3
En el teclado hay una tecla que dice "insert" debe ser que le diste sin querer y te intercambia las letras. Debes darle de nuevo y se deberia arreglar

4
Preguntas y respuestas / Re: Retroceso de Arma implementado en jugador
« en: Marzo 22, 2021, 07:52:10 pm »
Haz que el código compruebe colisiones progresivamente antes de cambiar la posición del objeto en lugar de cambiarla de golpe:

var recoil_check = recoil
do{
    var recoil_x = lengthdir_x(recoil_check,obj_gun.image_angle);
    var recoil_y = lengthdir_y(recoil_check,obj_gun.image_angle);
    recoil_check--
}until (!place_meeting(x-recoil_x,y-recoil_y,obj_pared) || recoil_check < 0)
x = x - recoil_x
y = y - recoil_y

Con ese código se prueba la posición final del objeto antes de moverlo, si la posición tiene colisión se revisa la anterior a esa, y si esa tiene colisión la anterior, y así hasta que encuentre un posición libre donde poner el objeto.

5
Preguntas y respuestas / Re:Dos renglones
« en: Junio 11, 2020, 09:25:49 am »
1.- ya intentaste el salto de línea?
2.- utilizar una fuente monoespaciada?
3.- si aún sigues con la idea de 2 variable te recomiendo un Array mejor.


https://www.youtube.com/channel/UC8QOfYit7o0YuQ5nuO7f_-Q

6
Yo no tengo el GMS 2 pero te voy a dejar el codigo del GMS1 y tu le cambias las funciones obsoletas.
Nesecitas al menos 3 objetos objPlayer, objBala y objPowerUp
OBJPLAYER:
Evento create
///variables
//movimiento
yy = 0;
spd = 0;

//Variable para controlar el tipo de bala que vamos a disparar
bulletState = "normal";

Evento step:
///Movimiento
var kDown, kUp;

kDown = keyboard_check(vk_down);
kUp   = -keyboard_check(vk_up);

spd = kDown + kUp;

//Velocidad
if (spd != 0) yscale = spd;
yy = spd * 3;

y += yy;

///Control de Disparo
if (keyboard_check_pressed(ord("S")))  //Si presionamos la tecla S
{
  switch(bulletState)  //disparamos en funcion de la variable bulletState
    {
      case "normal":   //si bulletState = "normal"
        instance_create(x+16, y, objBala); //disparamos una sola bala
      break;
     
      case "doble":   //si bulletState = "doble"
        instance_create(x+16, y-10, objBala)  //disparamos
        instance_create(x+16, y+10, objBala)  //dos balas
      break;
    }
}

Evento alarma 0:
///Cambiar el tipo de disparo
bulletState = "normal";

OBJPOWERUP:
Evento step:
///Control

if (place_meeting(x,y,objBala))
{
  instance_destroy(); //destruirse
  with(other)instance_destroy(); //destruir el objeto que coliciono con el
  objPlayer.bulletState = "doble";
  objPlayer.alarm[0]  = 150
  /*
 150 steps son 5 segundos lo puse asi para ver el cambio sin
 tener que esperar 30 segundos. Si quieres saber cuantos steps
 son X segundos solo multiplica 30 por la cantidad de segundos
 que quieras.
 */
}

OBJBALA:
evento create:
hspeed = 8;

PD: Espero que ahora si te pueda ayudar. Saludos xStarLordx

7
Como diría nuestro colega Sobako: "te respondiste solo xd "

y bueno basicamente, tenés que gatillar una alarma en el evento destroy del objeto bola. Podrías poner la alarma en el jugador, indicando con una variable , llamemosle "doble_disparo" que al acabar el tiempo se haga false.
Basicamente, en el objeto bola, al momento de destruirse seteas "doble_disparo" del objeto player en true y calculás los 30 segundos dentro del player para setearla a false.
Ya dependiendo del valor hacés que e ljugador pueda hacer 2 tiros, imagino que con una variable de contador o algo del estilo.

8
si solo es algo de presentacion y fondo, puedes usar time_lines y agregar a cada tiempo movimientos, disparos, etc...
para escoger colores aleatorios o naves usa:  choose(color1,color2,color3 etc...)
metelo en una variable y listo algo asi
pintura=choose(c_black,c_blue,c_red);
nave=choose(objNave1,objNave2,objNave3,etc...)

y en una alarm
repeat(5) {instance_create(random(room_width),random(room_height),nave); with(nave) {image_blend(pintura); }}
algo asi... solo pulelo

9
Podrías poner que si la variable está en cero tenga el sprite normal pero cuando la variable esté en uno osea
If variable== 1 image_index = 1

Entonces si tienes un Sprite con diferentes frames y pones que el frame inicial sea el 0 que es la primera imagen osea tu player y que si se la variable cbia de valor con el ejemplo anterior que te di le pones el image_index que cambia el frame o su imagen del Sprite entonces tienes todos los sprites en uno mismo.

Se entendió? :-[

10
Preguntas y respuestas / Re:¿como puedo poner texto en una room?
« en: Diciembre 30, 2019, 07:06:10 pm »
Hola, Fabrilyin. Gusto en saludarlo, mi nombre es Dixon.


No existe algo llamado texto, pero si existe el draw_text(x,y,string). Con esta función puedes agregar texto en cualquier parte de la room. El siguiente código que te voy a dar lo debes colocar en un evento dibujo también llamado draw, dentro de una pieza de código.

Código: [Seleccionar]
///texto
dx=0
dy=0

texto="Veces eliminado: "+string(score)
draw_text(dx,dy,texto)

Las variables dx y dx indicarán la posición donde quieras que aparezca el texto. Pero va a depender de la variable score en este caso, por lo tanto cada vez que una bala del jugador toque al enemigo tienes que sumarle un punto a la variable score así.

Código: [Seleccionar]
score+=1

Páginas: 1