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

121
Como te dijo Marth esa funcion ya habia sido eliminada en GMS, pero eso no significa que no puedas añadir videos, para ello puedes hacerlo de la manera alterna

1-Como no esta la funcion de añadir videos pues hazlo con sprites, digo descarga "Sony Vegas" y comviertes el video en puras imagenes

2-Luego descarga "Adobe Animate CC" para comprimir todas las imagenes en un .swf

Lo ultimo por hacer seria añadirlas como sprites y configurar su velocidad de animacion y cuando se acaba, de esa manera puedes añadir videos (bueno yo diria "Escenas de video")

Bueno si necesitas una explicacion mas detallada, pues aqui la tienes: https://m.youtube.com/watch?v=iHRofQ90HMw
122

Hola vengo a preguntarles como
implementar un sistema de PowerUps en mi juego, hasta ahora estuve practicando con los movimientos y las animaciones y ahora estaba tratando de añadirles powerups, pero el problema es como manejar todos los que tengo en mente

Añadí variables correspondientes a cada PowerUp, cada una en falso para ser desbloqueadas pero note varias fallas, por ejemplo por cada powerup una variable con una condicion que cumplir primero antes de usarlo , y otras para manejar las animaciones y efectos de los PowerUps, y esas serian muchas variables que manejar

La pregunta es como deberia manejar cada powerup y usarlos de manera optimizada o si conocen otro metodo para usar correctamente los PowerUp y sin derrochar tantas variables
123
Tu metodo es muy bueno, no sabia sobre los ds_list, aunque ya habia encontrado otra alternativa para los multiples textos, este metodo no esta nada mal, solo es que me aparece un error de:

EXECUTION ERROR in creation code for instance 100087 in room rm_test
Error in code at line 1
at position 23: Unknown variable mensaje

y la variable ya esta declarada en el evento create
124
de nada, me alegra que te haya funcionado
125
Segun entendi, tu boton empieza en la subimagen 1, y quieres que al presionarlo una sola vez con el mouse se bloque y se quede en la primera subimagen y nose pueda volver a presionar

bueno eso lo puedes hacer con una simple variable, aqui te dejo un ejemplo:
[gml]
/// Create event
image_speed = 0;
image_index = 0;

press = false;  //Verifica si se presiono
locked = 0;      //Si esta blockeado, 0 = false y 1 = true
[/gml]

[gml]
/// Step event

// Solo podras hacer un click al boton una sola vez mientras press no sea cierto
if (image_index == 0 && !press) {
if mouse_check_button_pressed(mb_left)
   {
    //Solo verificas si al presionar el boton del mouse esta en la posicion del mismo objeto
    if position_meeting(mouse_x, mouse_y, self)
    press = true
    else
    press = false
   }

   // Y asi una sola vez, cuando no hayas presionado y la subimagen no este en la del botom blockeado
   if (press)
   locked = 1
}

//Cambiar la animacion segun locked
image_index = locked;
[/gml]

Pones eso en el mismo obj_boton o como lo hayas llamado

si lo notaste puse la primera subimagen como la de desbloqueado y la segunda como blockeado, si quieres usar otra subimagen entonces solo modifica la variable "locked"
126
Creo no me entendi, el problema no es con mostrar el texto letra por letra, eso ya lo hago archivandolas en la array y con string_copy, el problema son los distintos letreros y pues si usara el metodo del sprite con multiples subimagenes estaria gastando memoria rapido

Solo quiero una forma de tener mensajes en multiples instancias colocadas, intente con editar las array dentro de los creation code de las instancias y pues no funciono, se dibujaba  el mismo texto y etc
127
Hola acabo de hacer una intro para un juego y se me dio por hacer un letrero que dibujara textos con el tipico efecto de letra por letra

El problema es que el codigo usado para la intro no funciona exactamente igual, les mostrare como hacia el texto en la intro para que me digan como podria adaptarlo al letrero

[gml]
/// Create Event
mensaje[0] = " ";
mensaje[1] = " ";
mensaje[2] = " ";
mensaje[3] = " ";
mensaje[4] = " ";
mensaje[5] = " ";

mensaje_start = 0;  //Primer numero del arreglo
mensaje_end = 5;  //Ultimo numero del arreglo
incremento = 0.5;  //Velocidad a la que se mostrara cada letra
caracteres = 0;  //Numeros de caracteres de cada arreglo, las tetras que se dibujaran una por una
mensaje_draw = " ";  //El texto que se dibujara
view = true;  //Para que se muestre el texto
next = false;  //Para que pase al siguiente arreglo
texto = 0;  //Para escuchar un sonido por cada letra mostrada
mensaje_length = string_length(mensaje[mensaje_start])  //Numero de caracteres de cada arreglo
[/gml]

[gml]
/// Step Event
if (caracteres < mensaje_length) {
caracteres += incremento
mensaje_draw = string_copy(mensaje[mensaje_start], 0, caracteres)

//Creare una variable local para verificar algo, en gm8 las puedo declarar poniendo local.
local.caracter = string_char_at(mensaje[mensaje_start], caracteres)

next = false;
view = true;

//Maquina de sonido para el texto
if (texto == 1.5) && (local.caracter != "") {
    sound_play(snd_text)
    texto = 0
   }
   if texto < 1.5
   texto += incremento
   else
   texto = 1.5

}
else { //Si caracteres es mayor que el numero de caracteres del arreglo actual
//Si la alarma esta inactiva y se presiona la tecla de espacio, llamara a la alarma para poner el next en true
if (keyboard_check_pressed(vk_space) && alarm[0] = -1)
    {
     alarm[0] = 60
    }
    if (next) {
        //Siempre que el arreglo actual sea menor al ultimo arreglo
        if (mensaje_start < mensaje_end)
            {
             next = false;
             mensaje_start += 1;  //pasamos al siguiente arreglo del array
             caracteres = 0;  //Restablecemos los caracteres
             mensaje_length = string_length(mensaje[mensaje_start])  //Actualizamos
             mensaje_draw = "";  //Borramos el mensaje anterior
            }
            else {  //Si ya no quedan mensajes a los que avanzar, se destruye
            instance_destroy() }
     }

//Velocidad del texto en puntos suspensivos o espacios y comas, sin idea, alguna sugerencia
}
[/gml]

[gml]
/// Alarm[0] event
view = false;
next = true;
[/gml]

[gml]
/// Draw event
//Creamos una fuente exclusiva para el letrero
var fnt_text;
fnt_text = font_add("Fixedsys", 12, 0, 0, ord("!"), ord("z"))

draw_set_font(fnt_text)
draw_set_halign(fa_left)
draw_set_color(c_white)

if (view)
draw_text(64, 64, mensaje_draw)
[/gml]

Por el momento el codigo no funciona como en la intro, puedo deducir que es por 2 cosas:

1- Lo puse en el evento equivocado, pues el evento step ocurre en cada paso, y muy rapido, en que evento deberia ponerlo

2- Una intro y un letrero son cosas muy distintas, puede que este fallando por algo que no he tomado en cuenta, por ahora no he visto en que estoy fallando

El otro problema son los multiples textos, digo el letrero, pues para mostrar letra por letra necesito crear los mensajes dentro del objeto particular, y seria un malgaste crear multiples letreros y crear multiples variables de texto

Les agradezco si me ayudaran a solucionar este particular problema, nose si llamarlo particular
128
no sabia eso, por que nunca se me ocurren cosas tan simples como esas
igual gracias
129
Bueno funciono de maravilla aunque tuve que modificarlo un poco para que no hubiera problemas
ahora a hacer lo mismo con las demas alarmas, tengo una duda como haria para vericar distintos objetos a la vez pues me ahorraria duplicar el codigo  ???
130
Disculpa lo escribi mal, se que debi poner room_width
Voy a probar ese codigo justa ahora
131
Buenas vengo a preguntarles como haria para hacer que 3 instancias creadas aleatoriamente no se encuentren o que se alejen al ser creadas en la misma posicion

Estoy trabajando en un "Scrolling Shooter" y resulta ser mi primera vez trabajando con funciones aleatorias y ahora descubro mi primer error, les mostrare mi codigo para ver si encuentran una forma de solucionarlo

[gml]/// Evento Create
alarm[0] = room_speed*2
alarm[1] = room_speed*9
alarm[2] = room_speed*14
[/gml]

[gml]/// Alarma 0
var randomx;
randomx = random_range(192,room_height-8);

instance_create(randomx,-100,obj_enemy1)

alarm[0] = room_speed * random(3)
[/gml]

y lo mismo para las otras 2 alarmas, alguna forma para evitar que estas 3 instancias se creen en las mismas posiciones (en muy pocos casos) o que al crearse se alejen
132
Es verdad .Elviskelley" olvide tomar en cuenta todo eso, en un rpg solo habria calculado algunas cosas pero esto no es un Rpg

Solo poseo 4 Estados
-parado
-caminando
-saltando
-en_escalera

Bueno solo necesito esos 4 estados, lo demas lo arreglo en los scripts de las animaciones usando "switch" con una variable "dir"

la verdad no pense mucho en todos lo detalles, que en el "Event Step" no funcionaba mejor e igual podrias aclararme con un ejemplo
133
Bueno me parecia mejor usar el script_execute, igual ya se como hacer para usar los scripts
El problema es como hago para llamar al estado que quiero

En un rpg los llamaba verficando la vspeed y el hspeed
If (vh == 0 & vv == 0) estado = parado

Pero como ya dije no es igual, no es el mismo funcionamiento y lo que buscaba es como llamar los estados
134
Hola a todos, vengo por que necesito hacer una maquina de estados para un plataformero, pues ya me canse de aplicar las animaciones con los keyboard_check, se volvio tedioso

He usado maquinas de estados en juegos Rpg pero no es lo mismo en otro tipo de juego por eso quisiera saber como implementarlas, ya pense en usar scripts para las animaciones y variables para los estados

El problema es que no se como llamarlas digo usarlas, pues como ya dije usar el mismo metodo de un Rpg no funciona para nada

Como me sugeririan llamar los estados del resto me encargo usando

script_execute( estado ) al final del step
135
Bueno funciona correctamente, al principio no lo entendi pero ya si

gracias por solucionar mi problema