Entrar
Últimos assuntos
» Retorno da GMBR!!!por theguitarmester Ter 19 Mar 2024, 22:38
» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27
» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30
» Mudar cor de apenas uma palavra
por lunalol Sex 01 Mar 2024, 13:42
» 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
» a funçao approach ainda existe?
por PEDRINDEV Ter 26 Dez 2023, 20:05
» Inimigo ataca até por trás! >:(
por saim Sex 22 Dez 2023, 08:55
» [RESOLVIDO]Spawn após morte
por Deception_1999 Dom 17 Dez 2023, 16:39
» Remunerado $$$ - Procuro programador para ajudar a "montar" um jogo
por theguitarmester Sáb 02 Dez 2023, 16:28
» Game maker nao abre
por Cerf Dom 26 Nov 2023, 12:01
Unir sprites
3 participantes
Página 1 de 1
Unir sprites
Bom tarde, meu primeiro post!
No meu primeiro projeto, o player principal tem como objetivo andar para os lados direito e esquerdo e pular e atirar em relacão as cordenadas x, y do mouse. A minha duvida é, como fazer o corpo andar e a cabeça olhar para essas cordenadas do mouse? A minha ideia era editar o sprite tirando a cabeca e criar um novo sprite, unindo-o ao corpo, formando o player, mas não sei como unir os dois sprites.
Obrigado!
No meu primeiro projeto, o player principal tem como objetivo andar para os lados direito e esquerdo e pular e atirar em relacão as cordenadas x, y do mouse. A minha duvida é, como fazer o corpo andar e a cabeça olhar para essas cordenadas do mouse? A minha ideia era editar o sprite tirando a cabeca e criar um novo sprite, unindo-o ao corpo, formando o player, mas não sei como unir os dois sprites.
Obrigado!
petterwin- Data de inscrição : 16/01/2014
Reputação : 0
Número de Mensagens : 5
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Unir sprites
Faça:
obj_cabeca
obj_corpo
*PARA UNIR AS SPRITES*
No evento create do corpo coloque esse código:
No evento step do obj_corpo coloque esse código:
No evento step do obj_cabeca coloque esse código:
*PARA A CABEÇA OLHAR PARA O ANGULO DO MOUSE*
No step do obj_cabeca acrescente mais esse código
*PARA O PERSONAGEM OLHAR PARA DIREÇÃO QUE ESTA ANDANDO*
No step do obj_cabeca e do obj_corpo coloque esse código
obj_cabeca
obj_corpo
*PARA UNIR AS SPRITES*
No evento create do corpo coloque esse código:
- Código:
instance_create(x,y,obj_cabeca) //isso fara o objeto cabeça ser criado no x e y do objeto corpo.
global.esquerda = false //variavel para ter certeza que ele esta andando para esquerda
global.direita = false //variavel para ter certeza que ele esta andando para direito
No evento step do obj_corpo coloque esse código:
- Código:
if keyboard_check(vk_left) then //caso aperte <-
x-=3//ele anda para a esquerda (3p)
global.esquerda = true //ele anda para esquerda
else
global.esquerda = false //se não ele nao anda
if keyboard_check(vk_right) then //caso aperte ->
x+=3 // ele anda 3 pixels para a direita //ele anda para direita
global.direita = true
else
global.direita = false//se não ele não anda
No evento step do obj_cabeca coloque esse código:
- Código:
x = obj_corpo.x // esse código fara o obj_cabeca andar de acordo com o obj_corpo
y = obj_corpo.y
*PARA A CABEÇA OLHAR PARA O ANGULO DO MOUSE*
No step do obj_cabeca acrescente mais esse código
- Código:
image_angle = point_direction(x,y,mouse_x,mouse_y) //obj_cabeca olhar para o angulo do mouse
*PARA O PERSONAGEM OLHAR PARA DIREÇÃO QUE ESTA ANDANDO*
No step do obj_cabeca e do obj_corpo coloque esse código
- Código:
if global.direita = true then //caso ele esteje andando para a direita
image_xscale = 1 //o objeto estara virado para direita
else //se não
if global.esquerda = true then // ele ira vira para esquerda
image_xscale = -1//o objeto estara virado para esquerda
Re: Unir sprites
Muito obrigado sprite. Me ajudou bastante!
Última edição por petterwin em Qui 16 Jan 2014, 19:21, editado 2 vez(es)
petterwin- Data de inscrição : 16/01/2014
Reputação : 0
Número de Mensagens : 5
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Unir sprites
se fizer só isso, a cabeça vai ficar atrasada.
a sprite do objeto cabeça é desenhada no x e y do objeto cabeça, que fica seguindo o objeto corpo, isso acontece por default. se colocar o evento draw no objeto cabeça, o gm vai parar de desenhar a cabeça automaticamente. você vai precisar mandar ele desenhar a cabeça no evento draw do objeto cabeça. parece inútil, mas assim você vai poder mudar onde e como a sprite vai ser desenhada. é só colocar draw_sprite(sprite_index,image_index,obj_corpo.x,obj_corpo.y) no evento draw, que a sprite do objeto cabeça vai ser desenhada no x e y do objeto corpo, ao invez de ser desenhada no objeto que está seguindo ele, e isso acaba com o delay.
a sprite do objeto cabeça é desenhada no x e y do objeto cabeça, que fica seguindo o objeto corpo, isso acontece por default. se colocar o evento draw no objeto cabeça, o gm vai parar de desenhar a cabeça automaticamente. você vai precisar mandar ele desenhar a cabeça no evento draw do objeto cabeça. parece inútil, mas assim você vai poder mudar onde e como a sprite vai ser desenhada. é só colocar draw_sprite(sprite_index,image_index,obj_corpo.x,obj_corpo.y) no evento draw, que a sprite do objeto cabeça vai ser desenhada no x e y do objeto corpo, ao invez de ser desenhada no objeto que está seguindo ele, e isso acaba com o delay.
lucas.limeira.92- Data de inscrição : 01/05/2013
Reputação : 1
Número de Mensagens : 64
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Unir sprites
lucas.limeira.92 escreveu:se fizer só isso, a cabeça vai ficar atrasada.
a sprite do objeto cabeça é desenhada no x e y do objeto cabeça, que fica seguindo o objeto corpo, isso acontece por default. se colocar o evento draw no objeto cabeça, o gm vai parar de desenhar a cabeça automaticamente. você vai precisar mandar ele desenhar a cabeça no evento draw do objeto cabeça. parece inútil, mas assim você vai poder mudar onde e como a sprite vai ser desenhada. é só colocar draw_sprite(sprite_index,image_index,obj_corpo.x,obj_corpo.y) no evento draw, que a sprite do objeto cabeça vai ser desenhada no x e y do objeto corpo, ao invez de ser desenhada no objeto que está seguindo ele, e isso acaba com o delay.
Legal eu não sabia disso, vou arrumar meu code! vlw!
Re: Unir sprites
Obrigado,
Tem como eu limitar a altura do movimento da cabeca, porque ela ta rodando 360 graus? Exemplo, se a cabeca olha para cima demais, o mouse_x e o mouse_y desabilita?
Obrigado
Tem como eu limitar a altura do movimento da cabeca, porque ela ta rodando 360 graus? Exemplo, se a cabeca olha para cima demais, o mouse_x e o mouse_y desabilita?
Obrigado
petterwin- Data de inscrição : 16/01/2014
Reputação : 0
Número de Mensagens : 5
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Unir sprites
altere o evento step da cabeça, coloque um limite de angulo
Ajudei? vc pode me ajudar tbm, apenas click: http://epicfreeprizes.com/?ref=5444911
- Código:
if image_angle<=90 and image_angle>=270 then
image_angle = point_direction(x,y,mouse_x,mouse_y) //obj_cabeca olhar para o angulo do mouse
Ajudei? vc pode me ajudar tbm, apenas click: http://epicfreeprizes.com/?ref=5444911
Re: Unir sprites
Sprite escreveu:altere o evento step da cabeça, coloque um limite de angulo
- Código:
if image_angle<=90 and image_angle>=270 then
image_angle = point_direction(x,y,mouse_x,mouse_y) //obj_cabeca olhar para o angulo do mouse
Ajudei? vc pode me ajudar tbm, apenas click: http://epicfreeprizes.com/?ref=5444911
Olá, usando esse codigo mesmo mudando os angulos a cabeca fica travada, nao movimenta de acordo com o mouse, mas ela vira para os lados. Obs: Ja cliquei no link!
petterwin- Data de inscrição : 16/01/2014
Reputação : 0
Número de Mensagens : 5
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Unir sprites
huahau, obrigado é e grande ajuda... estou criando uma engine para te ajudar melhor com o limite de angulo.. jaja posto mais um comentario
Re: Unir sprites
No step do obj_cabeca coloque:
apesar de ser um código muito simples, quebrei um pouco a cabeça . mas tai!
- Código:
if mouse_x>obj_cabeca.x{
image_angle = point_direction(x,y,mouse_x,mouse_y)}
apesar de ser um código muito simples, quebrei um pouco a cabeça . mas tai!
Re: Unir sprites
Funcionou perfeito! Obrigado ;))))
petterwin- Data de inscrição : 16/01/2014
Reputação : 0
Número de Mensagens : 5
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Tópicos semelhantes
» Como criar sprites no GM a partir de uma imagem com sprites conjuntos?
» quem quer se unir a mim?
» como unir varias engines
» [Dúvida] Unir png externas em um sprite animado.
» sprites
» quem quer se unir a mim?
» como unir varias engines
» [Dúvida] Unir png externas em um sprite animado.
» sprites
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos