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
» player não consegue andar
por lovn7 Qui 21 Nov 2024, 13:33

» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22

» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31

» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23

» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49

» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58

» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36

» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36

» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33

» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51

» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28

» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18

» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08

» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10

» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16

» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40

» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01

» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45

» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34

» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28

» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48

» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54

» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14

» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50


pulo esquerda e direita

4 participantes

Ir para baixo

pulo esquerda e direita Empty pulo esquerda e direita

Mensagem por darth vader Seg 12 Abr 2010, 10:42

essa é minha principal dúvida: de acordo com o lado, o sprite mudar para o de pulo,o mesmo com o sprite de defesa q criei.
ai vai a informação de movimento(é q eu ñ queria mexer nos movimentos básicos,Happy).

Information about object: object0

Sprite: parado
Solid: false
Visible: true
Depth: 0
Persistent: false
Parent: <no parent>
Mask: <same as sprite>

Step Event:
execute code:

//Gravidade
if place_free(x,y+2){gravity=2}//se estiver livre de colisões 2 pixels abaixo, a gravidade será 1
else//senão
gravity=0//a gravidade vai ser 0

//limitando a velocidade vertical
if vspeed>12{vspeed=12}//se for maior que 15, retorna a 15

//MOVIMENTAÇÃO

//direita
if keyboard_check(vk_right)//se a seta direita for pressionada
{
sprite_index=andando//sprite vai ser "direita"
if place_free(x+5,y){x+=5}//se estiver livre de colisões 5 pixels a frente, andará 5 pixels a frente.
}
//esquerda
if keyboard_check(vk_left)//se a seta esquerda for pressionada
{
sprite_index=andando_left//sprite vai ser "esquerda"
if place_free(x-5,y){x-=5}//se estiver livre de colisões 5 pixels atras, voltará 5 pixels.

}
//Pulo
if keyboard_check_pressed(vk_up)//se a seta cima for pressionada
{
if!place_free(x,y+2){vspeed=-20}//se não estiver livre de colisões 2 pixels abaixo, a velocidade vertical vai ser -20 (cima)
}

Collision Event with object object1:
move in direction direction at most 12 till a contact with solid objects
set the vertical speed to 0
set the horizontal speed to 0

Key Press Event for D-key Key:
set the sprite to defesa with subimage 0 and speed 1

Key Release Event for <Left> Key:
set the sprite to parado_left with subimage 0 and speed 1

Key Release Event for <Right> Key:
set the sprite to parado with subimage 0 and speed 1

Key Release Event for D-key Key:
set the sprite to parado with subimage 0 and speed 1


De já agradeço,fallows!!!

Happy
darth vader
darth vader

Data de inscrição : 29/10/2009
Reputação : 0
Número de Mensagens : 85
Prêmios : pulo esquerda e direita 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

pulo esquerda e direita Empty Re: pulo esquerda e direita

Mensagem por Markituh Seg 12 Abr 2010, 11:14

Olha,você quer que quando estiver para tal lado,mudar para o sprite de pulo nesse lado,certo? Se for,é muito simples cara. Basta apenas criar uma sprite para cada lado.

Ou você pode fazer o seguinte no código de pulo:
Código:
if keyboard_check_pressed(vk_up) && image_index=andando_left or image_index=parado_left//se a seta cima for pressionada e estiver na imagem do lado esquerdo andando ou do lado esquerdo parado
{
if!place_free(x,y+2){image_xscale=-1;vspeed=-20}//se não estiver livre de colisões 2 pixels abaixo, vai virar pro lado esquerdo e a velocidade vertical vai ser -20 (cima)
}
else
{
if keyboard_check_pressed(vk_up) && image_index=andando or image_index=parado//se a seta cima for pressionada e estiver na imagem do lado direito andando ou do lado direito parado
{
if!place_free(x,y+2){image_xscale=1;vspeed=-20}//se não estiver livre de colisões 2 pixels abaixo, vai virar pro lado direito e a velocidade vertical vai ser -20 (cima)
}
}

Tente isso.
Markituh
Markituh

Games Ranking : Sem avaliações

Data de inscrição : 11/10/2009
Reputação : 106
Número de Mensagens : 2184
Prêmios : pulo esquerda e direita Empty

Medalhas x 0 Tutoriais x 1 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

pulo esquerda e direita Empty Re: pulo esquerda e direita

Mensagem por itallo Seg 12 Abr 2010, 11:19

crie uma variavel com o nome "direita"

pense:
se direita = true e vspeed = 0
{
spr_index = andando_direita
}

se direita = false e vspeed = 0
{
spr_index = andando_esquerda
}

se direita = true e vspeed <> 0
{
spr_index = pulo_direita
}

se direita = false e vspeed <> 0
{
spr_index = pulo_esquerda
}


//entao os movimentos ficariam assim:
if keyboard_check(vk_right) and vspeed = 0//se a seta direita for pressionada
{
direita = true
sprite_index=andando//sprite vai ser "direita"
if place_free(x+5,y){x+=5}//se estiver livre de colisões 5 pixels a frente, andará 5 pixels a frente.
}
//esquerda
if keyboard_check(vk_left) and vspeed = 0//se a seta esquerda for pressionada
{
direita = false
sprite_index=andando_left//sprite vai ser "esquerda"
if place_free(x-5,y){x-=5}//se estiver livre de colisões 5 pixels atras, voltará 5 pixels.
}


//PULO
if keyboard_check_pressed(vk_up)//se a seta cima for pressionada
{
if!place_free(x,y+2){vspeed=-20}//se não estiver livre de colisões 2 pixels abaixo, a velocidade vertical vai ser -20 (cima)
if direita = true{sprite_index = "pulo_direita"
if direita = false{sprite_index = "pulo_esquerda"
}
itallo
itallo

Games Ranking : Nota C

Notas recebidas : B - D
Data de inscrição : 26/08/2009
Reputação : 12
Número de Mensagens : 970
Prêmios : pulo esquerda e direita Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 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

pulo esquerda e direita Empty Re: pulo esquerda e direita

Mensagem por darth vader Seg 12 Abr 2010, 11:39

bem, vou tentar...
Obko, posso fazer então a mesma coisa no sprite de defesa:
criar uma variavel (defesa) e substituir pelos sprites correpondentes.
sendo q a defesa é acionado pelo botão D.
darth vader
darth vader

Data de inscrição : 29/10/2009
Reputação : 0
Número de Mensagens : 85
Prêmios : pulo esquerda e direita 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

pulo esquerda e direita Empty Re: pulo esquerda e direita

Mensagem por KinKing Seg 12 Abr 2010, 14:09

Eu também aconselho você a fazer variáveis tanto "direita" quanto "esquerda" para evitar bugs no movimento se as duas teclas forem pressionadas. E você poderia criar um novo execute code no step event só com o código das animações.
Segue um exemplo:

Código:
// sprite defendendo
if (defesa == true)
{
    sprite_index = spr_defendendo;
    break;
}

// sprites no chão
if (gravity == 0)
{
    if (hspeed == 0)
    {
        if (esquerda)
            sprite_index = spr_paradoEsquerda;
        if (direita)
            sprite_index = spr_paradoDireita;
    }
    else
    {
        if (esquerda)
            sprite_index = spr_andandoEsquerda;
        if (direita)
            sprite_index = spr_andandoDireita;
    }
    break;
}

// sprites pulando
if (gravity != 0)
{
    if (esquerda)
        sprite_index = spr_pulandoEsquerda;
    if (direita)
        sprite_index = spr_pulandoDireita;
    break;
}

Note o uso do break no meu código:

Quando ele é rodado no programa. é geralmente num laço (loop) for ou while, e é usado para sair daquele laço.

Mas nesse caso não há laço, então ele sai do Execute Code atual e volta para a sequência no evento (rodaria, por exemplo, o próximo Execute Code daquele evento).

EDIT: Nesse caso eu esqueci da existência do image_xscale, que inverte a imagem para você não precisar de sprites para ambos os lados, então meu código está otimizado para o GM LITE, que não tem essa função disponível...
KinKing
KinKing

Data de inscrição : 29/05/2008
Reputação : 16
Número de Mensagens : 422
Prêmios : pulo esquerda e direita 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://felipejoys.webnode.com

Ir para o topo Ir para baixo

pulo esquerda e direita Empty Re: pulo esquerda e direita

Mensagem por darth vader Qua 14 Abr 2010, 09:31

Valeu, pessoal. Uma coisa q aprendi é q pra várias ações o bom mesmo é
usar variaveis.
é um grande passo pra mim como iniciante.

fallows!!!!
Sad (me emocionei)
darth vader
darth vader

Data de inscrição : 29/10/2009
Reputação : 0
Número de Mensagens : 85
Prêmios : pulo esquerda e direita 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

pulo esquerda e direita Empty Re: pulo esquerda e direita

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo


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