Conectar-se

Esqueci minha senha

Últimos assuntos
» [Enquete] Concursos GMBR
por Willy Ontem à(s) 19:49

» CR - Concurso Relâmpago!!
por Willy Ter 18 Jul 2017, 17:11

» 3D:como rodar a camara em horizontal?
por Cambalinho Ter 18 Jul 2017, 15:09

» [Resolvido] pode explicar a d3d_set_projection()?
por Cambalinho Ter 18 Jul 2017, 11:28

» Escrever a resposta certa muda de room
por PedroX Seg 17 Jul 2017, 21:46

» Nota de esclarecimento - GMBR voltou!
por Mentos e Coca-cola Seg 17 Jul 2017, 17:05

» [CR] Campo Minado
por Katerp Dom 16 Jul 2017, 23:09

» [CR] The Bazooka Cat
por Tedi Ripper Dom 16 Jul 2017, 23:01

» Como melhorar um protótipo(Design)
por lolandoplayer Dom 16 Jul 2017, 22:56

» Diminuir velocidade ao arrastar objeto
por LwysF Dom 16 Jul 2017, 17:33

Quem está conectado
10 usuários online :: 1 usuário cadastrado, Nenhum Invisível e 9 Visitantes

CRP-Max

[ Ver toda a lista ]


O recorde de usuários online foi de 324 em Ter 05 Out 2010, 13:36
Estatísticas
Temos 12700 usuários registrados
O último usuário registrado atende pelo nome de Eduardo Gomes

Os nossos membros postaram um total de 220919 mensagens em 30412 assuntos

Definir sprites dos players diferentes

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Definir sprites dos players diferentes

Mensagem por .:Allison:. em Sab 19 Mar 2011, 22:20

bom, eu uso esse script de movimentação:
Código:
//////////////////////////
// Script de Movimento  //
//    do Player        //
//////////////////////////

//////////////////// Variáveis //////////////////////
parado=true;
andando=false;
lado=0;
abaixado=false;
//////////////////// Gravidade //////////////////////
if (place_free(x,y+1)){
gravity=0.5;
}
else {
gravity=0;
}
///////////////////// Pulo ///////////////////////////
if (keyboard_check_pressed(vk_up)) and (place_free(x,y+1))
{
vspeed=-8;
}
/////////////////// Movimento ///////////////////////
//Direita
if (keyboard_check(vk_left)) and not (keyboard_check(vk_right)) and (place_free(x-3,y))
{
x-=3.5; lado=0; andando=true; parado=false;
}
//Esquerda
if (keyboard_check(vk_right)) and not (keyboard_check(vk_left)) and (place_free(x+3,y))
{
x+=3.5; lado=1; andando=true; parado=false;
}
/////////////// Configuração de Movimento //////////////

if (vspeed>12)
vspeed=12;

if not (keyboard_check(vk_left)) and not (keyboard_check(vk_right))
{
andando=false; parado=true;
}

No caso, esse script servirá para vários personagens mais como eu faço pra as sprites serem trocadas corretamente, por exemplo, eu tenho o player 1 e player 2 , eu vou usar o mesmo script, só que eles são sprites diferentes, como fazer isso, lembrando isso não é um código de um objeto, é um script.
avatar
.:Allison:.

Ranking : Nota B
Notas recebidas : B
Data de inscrição : 25/07/2010
Número de Mensagens : 630
Insígnias de JAM :

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

Ver perfil do usuário http://clubmaker.forumeiros.com

Voltar ao Topo Ir em baixo

Re: Definir sprites dos players diferentes

Mensagem por CRP-Max em Sab 19 Mar 2011, 22:34

Ola X-Games, blz?
Eu também costumo usar scripts nos meus jogos, e todos os meus personagens inclusive o player, usam os mesmos para movimentação e verificação da gravidade, para isso eu faço um objeto para cada personagem e defino no create deles quais os sprites seram usados para eles andando, pulando, morrendo, etc.
Então no step eu coloco para executar o script correspondente ( A folha com uma seta verde no GM ).
avatar
CRP-Max

Ranking : Nota C
Notas recebidas : C
Data de inscrição : 28/10/2008
Número de Mensagens : 819
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Definir sprites dos players diferentes

Mensagem por .:Allison:. em Sab 19 Mar 2011, 23:10

eu coloquei assim:

Código:
if (global.parado=true) and (global.andando=false) and (global.lado==1)
{
sprite_index=ichigo_parado;
}
if (global.andando=true) and (global.parado=false) and (global.lado==1)
{
sprite_index=ichigo_andando;
}
if (global.lado==0)
{
image_xscale=-1;
}
if (global.atacando=true) and (global.ataque="normal")
{
sprite_index=ichigo_atacando;
}

Tem algo errado com as variáveis do primeiro script??
tem algo errado com esse código ?


Última edição por X-Games em Dom 20 Mar 2011, 19:33, editado 1 vez(es)
avatar
.:Allison:.

Ranking : Nota B
Notas recebidas : B
Data de inscrição : 25/07/2010
Número de Mensagens : 630
Insígnias de JAM :

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

Ver perfil do usuário http://clubmaker.forumeiros.com

Voltar ao Topo Ir em baixo

Re: Definir sprites dos players diferentes

Mensagem por Desconectado321 em Dom 20 Mar 2011, 10:59

cara, para fazer movimentação, EU uso os codigos nos objetos, nao sei se isso te ajudará, mais vou tentar ver oq posso fazer

antes de tudo, vou nomear as sprites aí vc edita conforme as suas:
spr_p1_andando_direita = player1 andando direita
spr_p1_andando_esquerda = player1 andando esquerda
spr_p1_parado_direita = player1 parado direita
spr_p1_parado_esquerda = player1 parado esquerda
spr_p1_parado_direita = player1 parado direita
spr_p1_pulando_direita = player1 pulando para direita
spr_p1_pulando_esquerda = player1 pulando para esquerda

vai no seu obj do player (vou chama-lo de obj_p1) e coloque assim no create:

Código:
lado=1 //1=direita 0=esquerda
parado=true
abaixado=false
pulo=false
morrendo=false
image_speed=0.3

depois no step:

Código:
//PULO
if place_free(x,y+1)
{gravity=1}
else
{gravity=0}
if keyboard_check_pressed(vk_up)&&!place_free(x,y+2)
{vspeed=-10 pulo=true abaixado =false}

//PRINCIPAL
if keyboard_check(vk_left) &&!keyboard_check(vk_right)
{x-=7 lado=0 parado=false abaixado=false}

if keyboard_check(vk_right) &&!keyboard_check(vk_left)
{x+=7 lado=1 parado=false  abaixado=false}

if !keyboard_check(vk_right) &&!keyboard_check(vk_left)
{parado=true }

if keyboard_check_pressed(vk_down) &¶do=true
{abaixado=true}
if keyboard_check_released(vk_down)
{abaixado=false}



//TROCA DE SPRITES

if parado=true && lado=0
{sprite_index=spr_p1_parado_direita image_xscale=-1}

if parado=true && lado=1
{sprite_index=spr_p1_parado_direita image_xscale=1}

if parado=false && lado=0  &&vspeed=0
{sprite_index=spr_p1_andando_direita image_xscale=-1}

if parado=false && lado=1  &&vspeed=0
{sprite_index=spr_p1_andando_direita image_xscale=1}


if pulo=true && lado=0
{sprite_index=spr_p1_pulando_direita
image_xscale=-1}

if pulo=true && lado=1
{sprite_index=spr_p1_pulando_direita
image_xscale=1}

na colisão com o chão :

Código:
move_contact_solid(direction,12)
vspeed=0

pulo=false

não deu certo? comente q eu tento resolver
avatar
Desconectado321

Ranking : Nota C
Notas recebidas : E-D-A-D
Data de inscrição : 13/03/2011
Número de Mensagens : 272
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Definir sprites dos players diferentes

Mensagem por .:Allison:. em Dom 20 Mar 2011, 19:29

Cara se eu for fazer desse jeito vai deixar o jogo mto pesado, eu quero fazer um script só para todos os players. eu fiz mais to com problemas na troca de sprites.
avatar
.:Allison:.

Ranking : Nota B
Notas recebidas : B
Data de inscrição : 25/07/2010
Número de Mensagens : 630
Insígnias de JAM :

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

Ver perfil do usuário http://clubmaker.forumeiros.com

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum