Entrar
Últimos assuntos
» player não consegue andarpor 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
Problemas com sprite offset e lengthdir !!
3 participantes
Página 1 de 1
Problemas com sprite offset e lengthdir !!
Eae galera, dá um help pro tio aqui o/
Tenho a seguinte sprite:
Ela é o cano de um canhão completo,poderia usar uma surface para desenha-la mas optei por colocar uma sprite mesmo...
Ao soltar o espaço um obj_power é criado , porém queria que fosse criado no buraco do cano e respeitasse o ângulo do mesmo,sendo lançado na angulação correta.
Para o obj_power ser criado no buraco do cano,coloquei no step:
E no create do obj_power,para respeitar a angulação:
A angulação do arremesso está correta, o problema é que o obj_power não acompanha o ângulo do obj_cano,ou seja, é criado sempre no mesmo ponto, a sprite_xoffset e sprite_yoffset não acompanham o angulo do obj_cano.Eu acho que o problema está no primeiro code, pois quando o obj_power é criado, somente no ângulo 0 ele é criado no buraco do cano ...
Uma coisa que não entendi , é que a cada vez que subo o angulo com o direcional pra cima, o obj_power é criado mais pra trás, como se acompanhasse o eixo x mas não o eixo y, isso explicaria porque somente no angulo 0 ele é criado no cano...
Já tentei resolver isso de várias formas, coloquei outro lenght nos off's, não usei lenghts ,colocando o raio e a direção separados,etc...
Talvez o problema esteja na minha lógica mesmo...
Valeu,flws !!
Tenho a seguinte sprite:
Ela é o cano de um canhão completo,poderia usar uma surface para desenha-la mas optei por colocar uma sprite mesmo...
Ao soltar o espaço um obj_power é criado , porém queria que fosse criado no buraco do cano e respeitasse o ângulo do mesmo,sendo lançado na angulação correta.
Para o obj_power ser criado no buraco do cano,coloquei no step:
- Código:
global.xoff= sprite_xoffset+209 // Guarda a coordenada x para o buraco do cano
global.yoff= sprite_yoffset+9 // Guarda a coordenada y para o buraco do cano
E no create do obj_power,para respeitar a angulação:
- Código:
direction=obj_cano.image_angle //Indica que a direção é igual ao angulo da imagem do obj_cano
x=obj_cano.x+lengthdir_x(global.xoff,direction); //Quando criado ,nascera no raio xoff com a angulação direction
y=obj_cano.y+lengthdir_y(global.yoff,direction);//Quando criado ,nascera no raio yoff com a angulação direction
A angulação do arremesso está correta, o problema é que o obj_power não acompanha o ângulo do obj_cano,ou seja, é criado sempre no mesmo ponto, a sprite_xoffset e sprite_yoffset não acompanham o angulo do obj_cano.Eu acho que o problema está no primeiro code, pois quando o obj_power é criado, somente no ângulo 0 ele é criado no buraco do cano ...
Uma coisa que não entendi , é que a cada vez que subo o angulo com o direcional pra cima, o obj_power é criado mais pra trás, como se acompanhasse o eixo x mas não o eixo y, isso explicaria porque somente no angulo 0 ele é criado no cano...
Já tentei resolver isso de várias formas, coloquei outro lenght nos off's, não usei lenghts ,colocando o raio e a direção separados,etc...
Talvez o problema esteja na minha lógica mesmo...
Valeu,flws !!
Última edição por ChicoGamer em Sex 24 Abr 2015, 14:37, editado 1 vez(es)
ChicoGamer- Data de inscrição : 07/07/2014
Reputação : 2
Número de Mensagens : 23
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Problemas com sprite offset e lengthdir !!
Vc cria um obj_bola com a sprite de uma bola e coloca a origin no centro depois criar um obj_canhao com uma sprite quadrada de 128 em largura por 32 em altura de pois coloca o origin no centro a esquerda. No obj_bola vc coloca Create
{direction = obj_canhao.image_angle
speed = 5
move_contact_solid(direction,108)}
No obj_canhao Step
{if keyboard_check(vk_right) image_angle -=5
if keyboard_check(vk_left) image_angle +=5}
No obj_canhao Press
{instance_create(x,y,obj_bola)}
Depois vc coloca o obj_canhao no centro de uma room e testa !
Observação:
A fução move_contact_solid( argumento1 ,argumento2 ) serve para vc avançar argumento2 na direção argumento1
Espero que goste da minha resposta !!
{direction = obj_canhao.image_angle
speed = 5
move_contact_solid(direction,108)}
No obj_canhao Step
{if keyboard_check(vk_right) image_angle -=5
if keyboard_check(vk_left) image_angle +=5}
No obj_canhao Press
{instance_create(x,y,obj_bola)}
Depois vc coloca o obj_canhao no centro de uma room e testa !
Observação:
A fução move_contact_solid( argumento1 ,argumento2 ) serve para vc avançar argumento2 na direção argumento1
Espero que goste da minha resposta !!
alison.antonioloffi- Data de inscrição : 27/02/2015
Reputação : 1
Número de Mensagens : 11
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Problemas com sprite offset e lengthdir !!
Obrigado por tentar ajudar , mas isso não vai dar certo , observe que o move_contact_solid move o objeto em uma determinada direção até que ele entra em contato com um objeto sólido e não em um ponto na sprite ....Eu preciso definir esse ponto na sprite , pois a origem na qual ele rotaciona é oposta ao buraco do canhao...
ChicoGamer- Data de inscrição : 07/07/2014
Reputação : 2
Número de Mensagens : 23
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Problemas com sprite offset e lengthdir !!
Crie o tiro usando o xoff tanto no lengthdir_x quanto no lengthdir_y se não da erro mesmo, o raio é o tamanho do xoff apenas.
- Código:
direction=obj_cano.image_angle //Indica que a direção é igual ao angulo da imagem do obj_cano
x=obj_angulo.x+lengthdir_x(global.xoff,direction); //Quando criado ,nascera no raio xoff com a angulação direction
y=obj_angulo.y+lengthdir_y(global.xoff,direction);//Quando criado ,nascera no raio xoff com a angulação direction
Thyago- Games Ranking :
Notas recebidas : D+B+B+C+A
Data de inscrição : 24/08/2009
Reputação : 31
Número de Mensagens : 1101
Prêmios :
x 0 x 0 x 0
x 1 x 1 x 0
x 0 x 0 x 0
Re: Problemas com sprite offset e lengthdir !!
Nossa que desatenção a minha,é obvio que o raio tinha que ser só em x,puts...Vi que o código do alison.antonioloffi também funcionava,com alguns ajustes,me precipitei... Obrigado a ambos,joinha para os dois !!
ChicoGamer- Data de inscrição : 07/07/2014
Reputação : 2
Número de Mensagens : 23
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos