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
AJUDA - ANGRY BIRDS
4 participantes
Página 1 de 1
AJUDA - ANGRY BIRDS
fala, galera do gmbr,
então, eu to criando uma engine do angry birds e estou
com um problema e queria sabe se vocês sabem resolver
esse problema,
No jogo oficial do angry birds, quando você puxa o
estilingue, ele tem um certo tamanho, ou seja, a corda
do estilingue se estica até um certo ponto, e depois
para, eu queria sabe como que se faz esse comando
no meu projeto, a corda do estilingue não tem tamanho definido, assim, ela fica se movimentando para todos os lados
OBS - a corda é feita com uma draw_line, então pode ser que se definir o tamanho da draw_line resolva...
mas, não endendo muito de draw para GML... Alguem ajuda?????
Download da DEMO
(só possui uma fase)
http://www.mediafire.com/?bfxx9u0b91ixm1p
Overflow- Data de inscrição : 22/03/2012
Reputação : 1
Número de Mensagens : 42
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: AJUDA - ANGRY BIRDS
Talvez você devesse transformar o tamanho da "corda" em variáveis,para que você colocasse um limite na variável,o que possivelmente poderia funcionar.
Re: AJUDA - ANGRY BIRDS
TRFN escreveu:Talvez você devesse transformar o tamanho da "corda" em variáveis,para que você colocasse um limite na variável,o que possivelmente poderia funcionar.
eu ja defini a draw_line como uma variavel, so que ela parou de funcionar, ou seja, ela não se esticava
Overflow- Data de inscrição : 22/03/2012
Reputação : 1
Número de Mensagens : 42
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: AJUDA - ANGRY BIRDS
Olha, cara, eu não entendo praticamente nada de draw no GM, mas pode ser que eu possa te ajudar.
Não sei se existe algum comando para verificar o tamanho da corda, mas se tiver, tenta fazer isso:
Também tem outro jeito (que eu acabei de pensar), e que eu acho que seria bem mais fácil. Esse método que eu acabo de criar se baseia em não permitir que o mouse vá muito longe enquanto está arrastando a corda. Ficaria mais ou menos isso:
Isso vai fazer com que o mouse não passe dos 150 pixels no eixo X se o jogador estiver clicando. Basta alterar os valores para o seu jogo e isso deve criar uma limitação para a corda. Também é possível fazer isso com o eixo Y.
Não sei se existe algum comando para verificar o tamanho da corda, mas se tiver, tenta fazer isso:
- Código:
if tamanho_da_corda > 50 {tamanho_da_corda = 50}
Também tem outro jeito (que eu acabei de pensar), e que eu acho que seria bem mais fácil. Esse método que eu acabo de criar se baseia em não permitir que o mouse vá muito longe enquanto está arrastando a corda. Ficaria mais ou menos isso:
- Código:
if mouse_check_button(mb_left) && mouse_x > 150 {window_mouse_set(150,mouse_y)}
Isso vai fazer com que o mouse não passe dos 150 pixels no eixo X se o jogador estiver clicando. Basta alterar os valores para o seu jogo e isso deve criar uma limitação para a corda. Também é possível fazer isso com o eixo Y.
DrFelipe- Data de inscrição : 30/04/2012
Reputação : 1
Número de Mensagens : 16
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: AJUDA - ANGRY BIRDS
Eu acho que algo do tipo funcionaria :
- Código:
draw_line(x , y , x + EsticaX , y + EsticaY);
- Código:
if(EsticaX > 100)then EsticaX = 100;
else if(EsticaY > 100)then EsticaY = 100;
Re: AJUDA - ANGRY BIRDS
Puxa, eu realmente nao entendo muito de draw mesmo! eu acho q eu simplesmente ia colocar objetos sem sprite ao redor do estilingue. e faria akele comando básico de colisão.
Corda 0
Algo do Gênero.
____________________________________________________________________________________
EDIT: Olha, baixei o seu jogo, gostei muito da engine, embora eu tenho em mente que uma cópia o
tanto 'idêntica' não dê muito 'futuro' para o jogo, se é que me entende, fora a criatividade.. Tá PERFEITO!
Nem precisa fazer aquele Limite mano, se você for ver bem, caso você limite, o AngryBird, NUNCA
vai chegar ao porquinho, até porque só chega lá se esticar bem a corda.
Corda 0
Algo do Gênero.
____________________________________________________________________________________
EDIT: Olha, baixei o seu jogo, gostei muito da engine, embora eu tenho em mente que uma cópia o
tanto 'idêntica' não dê muito 'futuro' para o jogo, se é que me entende, fora a criatividade.. Tá PERFEITO!
Nem precisa fazer aquele Limite mano, se você for ver bem, caso você limite, o AngryBird, NUNCA
vai chegar ao porquinho, até porque só chega lá se esticar bem a corda.
Última edição por cidmarcos em Dom 27 maio 2012, 13:36, editado 1 vez(es)
Re: AJUDA - ANGRY BIRDS
Poxa, nenhum deles funcionou por que...
1º Draw_line quando coloca < , > , <=, >= ela aumenta a largura, e não o comprimento,
2º é que quando usa a variavel EsticaX e EsticaY, some a draw_line, e não tem nenhuma corda =(
3º é que se for usar como objeto, teria que faser GIF para poder se esticas, e se movimentar
1º Draw_line quando coloca < , > , <=, >= ela aumenta a largura, e não o comprimento,
2º é que quando usa a variavel EsticaX e EsticaY, some a draw_line, e não tem nenhuma corda =(
3º é que se for usar como objeto, teria que faser GIF para poder se esticas, e se movimentar
Overflow- Data de inscrição : 22/03/2012
Reputação : 1
Número de Mensagens : 42
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: AJUDA - ANGRY BIRDS
Mostre o código usando para fazer a linha no draw line........
Ai eu teria uma noção do teu método....
Se quiser,pode ser por MP.
Ai eu teria uma noção do teu método....
Se quiser,pode ser por MP.
Re: AJUDA - ANGRY BIRDS
draw_sprite(sprite_index,image_index,x,y)
//draw_self()
if global.sling=true{
draw_line(x-14,y,obj_birds.x,obj_bird.y)
draw_line(x+14,y,obj_birds.x,obj_bird.y)
}
//draw_self()
if global.sling=true{
draw_line(x-14,y,obj_birds.x,obj_bird.y)
draw_line(x+14,y,obj_birds.x,obj_bird.y)
}
Overflow- Data de inscrição : 22/03/2012
Reputação : 1
Número de Mensagens : 42
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: AJUDA - ANGRY BIRDS
Overflow escreveu:Poxa, nenhum deles funcionou por que...
1º Draw_line quando coloca < , > , <=, >= ela aumenta a largura, e não o comprimento,
2º é que quando usa a variavel EsticaX e EsticaY, some a draw_line, e não tem nenhuma corda =(
3º é que se for usar como objeto, teria que faser GIF para poder se esticas, e se movimentar
E você ao menos considerou a possibilidade de usar o meu método de bloquear o mouse? ._.
DrFelipe- Data de inscrição : 30/04/2012
Reputação : 1
Número de Mensagens : 16
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: AJUDA - ANGRY BIRDS
DrFelipe escreveu:Overflow escreveu:Poxa, nenhum deles funcionou por que...
1º Draw_line quando coloca < , > , <=, >= ela aumenta a largura, e não o comprimento,
2º é que quando usa a variavel EsticaX e EsticaY, some a draw_line, e não tem nenhuma corda =(
3º é que se for usar como objeto, teria que faser GIF para poder se esticas, e se movimentar
E você ao menos considerou a possibilidade de usar o meu método de bloquear o mouse? ._.
??????????
não sei como se bloqueia o mouse
if draw_line < 10 {
mouse.y,mouse.y = false
}
se for assim, nao funciona
Overflow- Data de inscrição : 22/03/2012
Reputação : 1
Número de Mensagens : 42
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: AJUDA - ANGRY BIRDS
Acho que isso pode funcionar :
- Código:
draw_sprite(sprite_index,image_index,x,y);
Limite = 100;
if(!variable_local_exists("XStart"))then XStart = -1;
if(!variable_local_exists("YStart"))then YStart = -1;
if(global.sling){
if(XStart = -1)then XStart = obj_birds.x;
if(YStart = -1)then YStart = obj_bird.y;
if(distance_to_point(XStart , 0) > obj_birds.x + Limite)then obj_birds.x = XStart + Limite;
else if(distance_to_point(XStart , 0) < obj_birds.x - Limite)then obj_birds.x = XStart - Limite;
if(distance_to_point(0 , YStart) > obj_bird.y + Limite)then obj_bird.y = YStart + Limite;
else if(distance_to_point(0 , YStart) < obj_bird.y - Limite)then obj_bird.y = YStart - Limite;
draw_line(x-14,y,obj_birds.x,obj_bird.y)
draw_line(x+14,y,obj_birds.x,obj_bird.y)
} else {
XStart = -1;
YStart = XStart;
}
Última edição por TRFN em Dom 27 maio 2012, 13:43, editado 1 vez(es)
Re: AJUDA - ANGRY BIRDS
Overflow escreveu:DrFelipe escreveu:Overflow escreveu:Poxa, nenhum deles funcionou por que...
1º Draw_line quando coloca < , > , <=, >= ela aumenta a largura, e não o comprimento,
2º é que quando usa a variavel EsticaX e EsticaY, some a draw_line, e não tem nenhuma corda =(
3º é que se for usar como objeto, teria que faser GIF para poder se esticas, e se movimentar
E você ao menos considerou a possibilidade de usar o meu método de bloquear o mouse? ._.
??????????
não sei como se bloqueia o mouse
if draw_line < 10 {
mouse.y,mouse.y = false
}
se for assim, nao funciona
Eu postei como fazer isso...
*flash back*
DrFelipe escreveu:Olha, cara, eu não entendo praticamente nada de draw no GM, mas pode ser que eu possa te ajudar.
Não sei se existe algum comando para verificar o tamanho da corda, mas se tiver, tenta fazer isso:Isso aí impediria a corda de passar de 50 pixels, mas aí você teria de dar um jeito de trocar "tamanho_da_corda" por algo que represente o tamanho atual do tamanho da corda.
- Código:
if tamanho_da_corda > 50 {tamanho_da_corda = 50}
Também tem outro jeito (que eu acabei de pensar), e que eu acho que seria bem mais fácil. Esse método que eu acabo de criar se baseia em não permitir que o mouse vá muito longe enquanto está arrastando a corda. Ficaria mais ou menos isso:
- Código:
if mouse_check_button(mb_left) && mouse_x > 150 {window_mouse_set(150,mouse_y)}
Isso vai fazer com que o mouse não passe dos 150 pixels no eixo X se o jogador estiver clicando. Basta alterar os valores para o seu jogo e isso deve criar uma limitação para a corda. Também é possível fazer isso com o eixo Y.
DrFelipe- Data de inscrição : 30/04/2012
Reputação : 1
Número de Mensagens : 16
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: AJUDA - ANGRY BIRDS
TRFN escreveu:Acho que isso pode funcionar :
- Código:
draw_sprite(sprite_index,image_index,x,y);
Limite = 100;
if(!variable_local_exists("XStart"))then XStart = -1;
if(!variable_local_exists("YStart"))then YStart = -1;
if(global.sling){
if(XStart = -1)then XStart = obj_birds.x;
if(YStart = -1)then YStart = obj_bird.y;
if(distance_to_point(XStart , 0) > obj_birds.x + Limite)then obj_birds.x = XStart + Limite;
else if(distance_to_point(XStart , 0) < obj_birds.x - Limite)then obj_birds.x = XStart - Limite;
if(distance_to_point(0 , YStart) > obj_bird.y + Limite)then obj_bird.y = YStart + Limite;
else if(distance_to_point(0 , YStart) < obj_bird.y - Limite)then obj_bird.y = YStart - Limite;
draw_line(x-14,y,obj_birds.x,obj_bird.y)
draw_line(x+14,y,obj_birds.x,obj_bird.y)
} else {
XStart = -1;
YStart = XStart;
}
PERFEITO ...
vlw... (resolvido)
Overflow- Data de inscrição : 22/03/2012
Reputação : 1
Número de Mensagens : 42
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Tópicos semelhantes
» [AJUDA] Com Jogo Angry birds
» como desbloquear fases estilo angry birds?
» Jogo estilo angry birds
» Angry Birds Eggs Hunter
» Como fazer fases estilo Angry Birds?
» como desbloquear fases estilo angry birds?
» Jogo estilo angry birds
» Angry Birds Eggs Hunter
» Como fazer fases estilo Angry Birds?
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos