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

496
Intenta cambiar el c?digo por este es muy probable que ya no te sucedan errores y tambi?n resolv? un error que hab?a anteriormente que hacia que si colisionabas con la plataforma y un muro al mismo tiempo te quedaras trabado ahora tu la plataforma cambia de direcci?n cuando eso sucede.

[gml]plat=collision_rectangle(x-sprite_xoffset-3,y-sprite_yoffset+1,x+sprite_xoffset+3,y+sprite_yoffset-1,Plataforma_Movible,1,1)
if plat{

       var atras;
       atras=plat.x+sprite_get_width(plat.sprite_index)/2 > x;
       move_contact_solid(atras*180,max(1,(abs(plat.hspeed))*(sign(atras-.5)!=sign(plat.hspeed))))
       
       if collision_rectangle(x-sprite_xoffset-1,y-sprite_yoffset+1,x+sprite_xoffset+1,y+sprite_yoffset-1,Pared,1,1){
       plat.hspeed*=-1
       }
}[/gml]

La verdad en este momento ando algo ocupado, mejor ma?ana te explico como funciona, pero te puedo decir que al principio me base en lo que poste? Wadk pero despu?s se transformo casi en lo contrario.

P.D: para evitar posibles errores futuros desactiva la casilla de "precise collision checking" en el sprite de tu personaje ademas aunque no lo creas es mucho mas r?pido procesar las colisiones si esa casilla esta desactivada te recomiendo activarla en todos los sprites que puedas.
497
Intenta poniendo esto en el evento step de tu personaje.

[gml]plat=collision_rectangle(x-sprite_xoffset-1,y-sprite_yoffset+1,x+sprite_xoffset+1,y+sprite_yoffset-1,Plataforma_Movible,1,1)
if plat{
    if ((y+sprite_yoffset) > plat.y) {
        var atras;
        atras=plat.x+sprite_get_width(plat.sprite_index)/2 > x;
        move_contact_solid(atras*180,max(1,(abs(plat.hspeed))*(sign(atras-.5)!=sign(plat.hspeed))))
    }
}[/gml]

Tienes que declarar la variable plat en el evento create.
498
Gutic, ?yo estoy en el juego?. Recuerdo haber subido mi sprite pero no recuerdo donde. No he comentado por que estoy esperando a que se termine el juego para jugarlo, que por cierto me a costado trabajo ya que se ve tentador en las screens y ni hablar si va a haber un trailer.
499
Preguntas y respuestas / Re: Subir pendientes
Agosto 25, 2011, 09:17:36 PM
No, en el step de tu personaje, tambi?n tienes que poner este c?digo en el evento de colisi?n con un muro.

[gml]move_contact_solid(direction,12)
vspeed=0[/gml]
500
Preguntas y respuestas / Re: Subir pendientes
Agosto 23, 2011, 01:20:58 AM
Pues a mi se me acaba de ocurrir un m?todo, ya lo prob? y funciono aunque tal vez tenga algunos errores.

[gml]x+=(keyboard_check(vk_right)-keyboard_check(vk_left))*4

if !place_free(x,y){
    move_outside_solid(90,12)
}else{
    move_contact_solid(270,12)
}

if !place_free(x,y){
    y=yprevious x=xprevious
}else{
    if y==yprevious+12{
        y=yprevious
    }
}[/gml]
501
Preguntas y respuestas / Re: que es mejor?
Agosto 22, 2011, 07:14:41 AM
Un objeto con 100 variables. Aunque tantas variables ameritan el uso de estructuras de datos, que son mas r?pidas y c?modas.

Click aqu? para mas informaci?n sobre estructuras de datos
502
Preguntas y respuestas / Re: show_menu
Agosto 19, 2011, 09:01:55 PM
[gml]switch(show_menu("menu 0|menu 1|menu 2",3)){
  case 0: /*Lo que se hace si se selecciona la primera opci?n*/; break;
  case 1: /*Lo que se hace si se selecciona la segunda opci?n*/; break;
  case 2: /*Lo que se hace si se selecciona la tercera opci?n*/; break;
  case 3: /*Lo que se hace si no se selecciona nada*/; break;
}[/gml]
504
Preguntas y respuestas / Re: movimiento libre
Agosto 16, 2011, 03:52:52 AM
De nada.  :D
505
La verdad no le? el script, pero alcance a ver que usaba superficies y un for, por lo que debe de ser muy lento y al usarlo cada step se va a alentar o trabar tu juego, gm ya tiene una funci?n incorporada para hacer cambiar de color el sprite de un objeto, es "image_blend", de dejo algunos ejemplos de como usarla.
[gml]
// ejemplo con constantes.
image_blend=c_blue

//ejemplo para hacer tu color con valores de rojo, verde y azul.
image_blend=make_color_rgb(128,156,96)

//ejemplo para hacer tu color con valores de matiz saturaci?n y brillo
image_blend=make_color_hsv=(254,142,4)

//ejemplo con n?meros hexadecimales.
image_blend=$FF76C7
[/gml]
506
Preguntas y respuestas / Re: movimiento libre
Agosto 13, 2011, 09:38:45 PM
Intenta con esa exenci?n de f?sicas http://www.maartenbaert.be/extremephysics/.

P.D: necesitas tener conocimientos b?sicos de gml.
507
De nada kaliman777, espero haberte ayudado.
508
Preguntas y respuestas / Re: bug rarisimo
Agosto 13, 2011, 12:39:51 AM
Por nada si necesitas algo mas no dudes en preguntar.
509
@kaliman777: la verdad creo que todo lo que dices es error humano, y como no cometerlos con tantos if y elses, deber?as de usar una operaci?n matem?tica para hacer estas cosas.


revisa si poniendo corchetes funciona.

[gml]if global.coins=5 and global.ganado>=1 {global.ganancias=global.ganado*5 global.total+=global.ganancias}
else{

if global.coins=4 and global.ganado>=1 {global.ganancias=global.ganado*4 global.total+=global.ganancias}
else{

if global.coins=3 and global.ganado>=1 {global.ganancias=global.ganado*3 global.total+=global.ganancias}
else{

if global.coins=2 and global.ganado>=1 {global.ganancias=global.ganado*2 global.total+=global.ganancias}
else{

if global.coins=1 and global.ganado>=1 {global.ganancias=global.ganado*1 global.total+=global.ganancias}
else{

if global.coins=5 and tripl=1
{global.ganancias=global.ganado*15 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)}
else{
if global.coins=4 and tripl=1
{global.ganancias=global.ganado*12 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)}
else{
if global.coins=3 and tripl=1
{global.ganancias=global.ganado*9 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)}
else{
if global.coins=2 and tripl=1
{global.ganancias=global.ganado*6 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)}
else{
if global.coins=1 and tripl=1
{global.ganancias=global.ganado*3 global.total+=global.ganancias instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)}}}}}}}}}}[/gml]

p.d mejor te dejo una simple operaci?n para reemplazar eso.
[gml]
global.ganancias=global.ganado*global.coins*(1+tripl*2)
global.total+=global.ganancias
if tripl {instance_create(408,316,obj_x3)sound_play(campana)sound_play(campana)}
[/gml]

Edit: ahora que lo veo ordo_ab_chao tambien habia echo una operaci?n mas corta
510
Preguntas y respuestas / Re: bug rarisimo
Agosto 11, 2011, 09:58:55 PM
Bueno pues no somos adivinos para saber que pasa con tu juego debiste de pasarnos los c?digos que tienes puestos en las colisiones y todo lo que crees que se relacione con eso o adjuntar tu juego.

Bueno primero corre tu juego en debug mode (el bot?n de play rojo o F6) y en el men? watch pones la opci?n add, y en la venana que sale pones esto "instance_number(nombre_objeto)" reemplazando nombre_objeto por el nombre del objeto que se duplica, y bueno en la ventana debug information aparecer? la expresi?n que pusiste anteriormente y en value deber?a de decir 1, luego haz todo lo que crees que ocasiona el bug y cuando ese valor cambie a 2 o el numero que sea sabr?s en que momento se ocasiona el error, luego pasas todos los c?digos que crees que lo ocasionaron y nos los pasas.