GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» Como ajustar velocidade de cada frame da animação no game maker
por Ralphed Ontem à(s) 18:28

» PROBLEMAS COM FÍSICAS DE ÁGUA
por aminaro Ter 16 Abr 2024, 10:07

» Retorno da GMBR!!!
por Ralphed Sex 12 Abr 2024, 22:45

» JOGADOR PARANDO NO AR QUANDO ATACA
por aminaro Qua 10 Abr 2024, 13:51

» Problemas com texto interativo
por Kaaru72 Dom 07 Abr 2024, 11:31

» Erro escondido e indecifrável
por dev_gabize.azv Qui 04 Abr 2024, 10:11

» Mudar cor de apenas uma palavra
por Ralphed Sáb 30 Mar 2024, 00:39

» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27

» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30

» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17

» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18

» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34

» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13

» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18

» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12

» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02

» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55

» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42

» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56

» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21

» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21

» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39

» Versionamento de código com GitHub
por GabrielXavier Seg 08 Jan 2024, 07:32

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por kolesovsup Sex 29 Dez 2023, 07:16


Como fazer Boost

2 participantes

Ir para baixo

Como fazer Boost Empty Como fazer Boost

Mensagem por Supersonic933 Qua 11 maio 2011, 17:31

Como fazer o Sonic Boost do Sonic Unleashed/Colors?
Eu preciso pra fazer meu jogo!
Pra quem não entendeu, ao apertar o botão, aparece uma aura azul nele, a velocidade aumenta, e quanto soltar, parar o boost.
Supersonic933
Supersonic933

Games Ranking : Nota E

Notas recebidas : E
Data de inscrição : 14/02/2011
Reputação : 13
Número de Mensagens : 396
Prêmios : Como fazer Boost Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://planetaanalisandogames.blogspot.com/

Ir para o topo Ir para baixo

Como fazer Boost Empty Re: Como fazer Boost

Mensagem por Need_90 Qua 11 maio 2011, 18:02

tem um jeito facil mais é meio "ruin"
duplica o player e coloca "Z" pressed (mude o Z por qual tecla quer)
Código:
instance_change (obj_player_aurea,false)
acho que é isso
dai coloca no obj_player_aurea "Z" Releassed
Código:
instance_change (obj_player,false)
é uma forma meio 'noob' mas é um bom geito,eu faço assim
Need_90
Need_90

Data de inscrição : 30/04/2011
Reputação : 2
Número de Mensagens : 309
Prêmios : Como fazer Boost Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Como fazer Boost Empty Re: Como fazer Boost

Mensagem por Supersonic933 Qua 11 maio 2011, 18:03

Need_90 escreveu:tem um jeito facil mais é meio "ruin"
duplica o player e coloca "Z" pressed (mude o Z por qual tecla quer)
Código:
instance_change (obj_player_aurea,false)
acho que é isso
dai coloca no obj_player_aurea "Z" Releassed
Código:
instance_change (obj_player,false)
é uma forma meio 'noob' mas é um bom geito,eu faço assim
E a velocidade aumentada?
Supersonic933
Supersonic933

Games Ranking : Nota E

Notas recebidas : E
Data de inscrição : 14/02/2011
Reputação : 13
Número de Mensagens : 396
Prêmios : Como fazer Boost Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://planetaanalisandogames.blogspot.com/

Ir para o topo Ir para baixo

Como fazer Boost Empty Re: Como fazer Boost

Mensagem por Need_90 Qua 11 maio 2011, 18:13

é só você modificar no obj_player_aurea Very Happy
Need_90
Need_90

Data de inscrição : 30/04/2011
Reputação : 2
Número de Mensagens : 309
Prêmios : Como fazer Boost Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Como fazer Boost Empty Re: Como fazer Boost

Mensagem por Supersonic933 Qua 11 maio 2011, 18:33

Need_90 escreveu:é só você modificar no obj_player_aurea Very Happy
Acontece que meu player é um pouco complexo.

Só o movimento;

Código:

    // movement control
   
    // ========== PART 1 ==============================================================================================       
        /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        -> X movement.
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        */
       
        x  +=  cos(degtorad(angle)) * x_speed;
        y  -=  sin(degtorad(angle)) * x_speed;

            // move the player outside in case he has got stuck into the wall
            while (x_speed > 0 && player_collision_right( x, y, angle, maskMid ) == true )
            {
                x  -=  cos(degtorad(angle));
                y  +=  sin(degtorad(angle));
            }
           
            while (x_speed < 0 && player_collision_left( x, y, angle, maskMid ) == true )
            {
                x  +=  cos(degtorad(angle));
                y  -=  sin(degtorad(angle));
            }

    // ========== PART 2 ==============================================================================================       
        /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        -> Y movement.
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        */
       
        if (ground == false)
        {
            y  +=  y_speed;
             
                // move the player outside in case he has got stuck into the floor or the ceiling         
                while (y_speed < 0 && player_collision_top( x, y, 0, maskMid ) == true )
                {
                    y  +=  1;
                }           

                while (y_speed > 0 && player_collision_bottom( x, y, 0, maskMid ) == true )
                {
                    y  -=  1;
                }
               
                // check for landing
                if (y_speed >= 0 && player_collision_bottom( x, y, 0, maskBig ) == true)
                {
                    if ( player_collision_left_edge( x, y, 0 ) && player_collision_right_edge( x, y, 0 ) )
                        angle  =  player_get_angle( x, y, 0 );
                    else
                        angle  =  0;
                       
                    x_speed -=  sin(degtorad(angle)) * y_speed;
                    y_speed =  0;
                    ground  =  true;
                   
                    // return to the normal state if the character was hurt
                    if (action == action_hurt)
                    {
                    action = action_normal;
                    }
                   
                    // return to the normal state if the character was jumping
                    if (action == action_jumping)
                    {
                        action = action_normal;
                    }
                }
 
            // wall collision (yeah, again, we should perform that since the y axys has recently changed)
            while (player_collision_right( x, y, angle, maskMid ) == true )
            {
                x  -=  cos(degtorad(angle));
                y  +=  sin(degtorad(angle));
            }
           
            while (player_collision_left( x, y, angle, maskMid ) == true )
            {
                x  +=  cos(degtorad(angle));
                y  -=  sin(degtorad(angle));
            }
        }

    // ========== PART 3 ==============================================================================================       
        /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        -> Slopes!
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        */
        if (ground == true)
        {
            if ( player_collision_main( x, y ) )
            {
                do
                {
                    x  -=  sin(degtorad(angle));
                    y  -=  cos(degtorad(angle));
                } until ( !player_collision_main( x, y ) )
            }
            if ( player_collision_slope( x, y, angle, maskMid ) && !player_collision_main( x, y ) )
            {
                do
                {
                    x  +=  sin(degtorad(angle));
                    y  +=  cos(degtorad(angle));
                } until ( player_collision_main( x, y ) )
            }
        }

    // ========== PART 4 ==============================================================================================       
        /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        -> Other stuff
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        */
       
        // fall if there isn't enough speed
        if (angle > 80 && angle < 280 && ground == true && abs(x_speed) < 3)
        {
            y_speed =  -sin(degtorad(angle))*x_speed;
            x_speed =  cos(degtorad(angle))*x_speed;
            ground  =  false;
        }
       
        // fall off the ground if the edges aren't colliding
        if (ground == true && angle != 0 &&
            (player_collision_left_edge( x, y, angle ) == false || player_collision_right_edge( x, y, angle ) == false  ))
        {
            y_speed =  -sin(degtorad(angle))*x_speed;
            x_speed =  cos(degtorad(angle))*x_speed;
            ground  =  false;
        }       
       
        // get new angle
        if (ground == true && player_collision_left_edge( x, y, angle ) && player_collision_right_edge( x, y, angle ))
        {
            // Store the new angle
            angle_holder  =  player_get_angle( x, y, angle );
           
            // Check if difference is less than 45. If it is, linear interpolate the angle, so it results on smoother rotation.
            // Otherwise, set the new angle normally. Remember that linear interpolation formula is the next:
            //
            // final = a*t + b*(1-t); where t is the interpolation value, wich goes from 0 to 1
            //
            // There's also a shorter and faster method, wich is the one we're going to use:
            //
            // final = a + (b-a)*t;
           
            if (abs(angle-angle_holder)<45) angle = angle + (angle_holder-angle)*0.5;
            else                            angle = angle_holder;
        } else {
            angle  =  0;
        }
Supersonic933
Supersonic933

Games Ranking : Nota E

Notas recebidas : E
Data de inscrição : 14/02/2011
Reputação : 13
Número de Mensagens : 396
Prêmios : Como fazer Boost Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://planetaanalisandogames.blogspot.com/

Ir para o topo Ir para baixo

Como fazer Boost Empty Re: Como fazer Boost

Mensagem por Need_90 Qua 11 maio 2011, 18:35

você não esta fazendo o jogo?Deveria entender o jogo Happy
Need_90
Need_90

Data de inscrição : 30/04/2011
Reputação : 2
Número de Mensagens : 309
Prêmios : Como fazer Boost Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Como fazer Boost Empty Re: Como fazer Boost

Mensagem por Supersonic933 Qua 11 maio 2011, 18:47

Need_90 escreveu:você não esta fazendo o jogo?Deveria entender o jogo Happy
Sim, entendo. É que fazer um player separado com o boost pode deixá-lo pesado.
Supersonic933
Supersonic933

Games Ranking : Nota E

Notas recebidas : E
Data de inscrição : 14/02/2011
Reputação : 13
Número de Mensagens : 396
Prêmios : Como fazer Boost Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://planetaanalisandogames.blogspot.com/

Ir para o topo Ir para baixo

Como fazer Boost Empty Re: Como fazer Boost

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos