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
» Preciso de ajuda
por AftonDuGrau Dom 21 Abr 2024, 20:18

» Como faz o evento drawn GUI, não se repetir?
por aminaro Sex 19 Abr 2024, 20:30

» Como ajustar velocidade de cada frame da animação no game maker
por Ralphed Qui 18 Abr 2024, 18:28

» PROBLEMAS COM FÍSICAS DE ÁGUA
por aminaro Ter 16 Abr 2024, 10:07

» Retorno da GMBR!!!
por Ralphed Sex 12 Abr 2024, 22:45

» JOGADOR PARANDO NO AR QUANDO ATACA
por aminaro Qua 10 Abr 2024, 13:51

» Problemas com texto interativo
por Kaaru72 Dom 07 Abr 2024, 11:31

» Erro escondido e indecifrável
por dev_gabize.azv Qui 04 Abr 2024, 10:11

» Mudar cor de apenas uma palavra
por Ralphed Sáb 30 Mar 2024, 00:39

» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27

» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30

» 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


Erros... alguém me ajuda?

2 participantes

Ir para baixo

Erros... alguém me ajuda? Empty Erros... alguém me ajuda?

Mensagem por jpaulo Seg 05 Mar 2012, 15:15

Pessoal, é o seguinte: eu fiz uma janela é ela é móvel. Fiz com uma engine aqui do fórum. Mas eu coloquei para algumas coisas ficarem dentro dessa janela. Até aí tudo bem, porque os objetos seguem a janela direitinho. Só que quando clico no objeto, era para mudar o sprite do jogador. Só que não muda. E eu coloquei para o jogador ficar parado enquanto essa janela existir. Eu até já tirei esse código. Mas continua sem funcionar. Será que é porque eu coloquei o código de para quando ele ficar parado, o sprite mudar para o sprite dele parado, e esse código acabou meio que confrontando (se contradizendo), e um código (no caso, o que faz ele ficar parado) foi mais... "forte"? Aqui estão os códigos do obj_jogador, do obj_janela_escolha_classe, obj_bot_mago, obj_bot_arqueiro, obj_bot_guerreiro, obj_bot_gatuno. Sei que é muito mas me ajudem, por favor.
Obj_jogador
Create
Código:
level=1
hp=100
sp=100
Step
Código:
image_speed=0.4
if mouse_check_button(mb_left)and place_empty(mouse_x,mouse_y){move_towards_point(mouse_x,mouse_y,6);
instance_create(mouse_x,mouse_y,obj_stop_mouse)}
if direction>90 and direction<270{image_xscale=-1;sprite_index=spr_andando}else{image_xscale=1;
sprite_index=spr_andando}
if speed>0{sprite_index=spr_andando}else{if image_xscale=-1{sprite_index=spr_parado;}
else{sprite_index = spr_parado;image_xscale=1}}
Bem, do obj_jogador, estou certo de que só esses são necessários.

Obj_janela_escolha_classe(essa objeto é a janela que contém os objetos que são a escolha das classes. Isto é, você clica e se transforma em tal classe)
Create
Código:
arrastar = false; // Variável para saber se está arrastando

xx = 0; // Variáveis para saber a diferença entre a posição do bloco
yy = 0; // e do mouse quando clicar e fazer se mover de acordo
Step
Código:
if (arrastar == true) // Se está arrastando
{
    x = mouse_x+xx; // Vai para a posição do mouse mais a diferença
    y = mouse_y+yy; // entre a sua posição e a do mouse quando clicou
   
}
Código:
with(obj_mais){instance_destroy()}
with(obj_txt){instance_destroy()}
with(obj_jogador){speed=0}
if self.x=mouse_x and self.y=mouse_y{speed=0}
Left Pressed
Código:
arrastar = true; // Começa a arrastar

xx = x-mouse_x; // Calcula a diferença entre a sua posição
yy = y-mouse_y; // e a do mouse para se mover depois
Global left released
Código:
arrastar = false; //Para de arrastar

Obj_bot_mago(botão que clica para virar mago)
Step
Código:
x=obj_janela_escolha_classe.x+64;y=obj_janela_escolha_classe.y+30
image_speed=0
Left Button
Código:
with(obj_jogador)sprite_index=spr_mago_parado
Código:
with(obj_janela_escolha_classe){arrastar = false}
Mouse enter
Código:
image_index=1
Mouse leave
Código:
image_index=0

Obj_bot_arqueiro
Step
Código:
x=obj_janela_escolha_classe.x+64;y=obj_janela_escolha_classe.y+30+30
Código:
image_speed=0
Left Button
Código:
with(obj_jogador)sprite_index=spr_arqueiro_parado
Código:
with(obj_janela_escolha_classe){arrastar = false}
Mouse enter
Código:
image_index=1
Mouse leave
Código:
image_index=0

Obj_bot_guerreiro
Step
Código:
x=obj_janela_escolha_classe.x+64;y=obj_janela_escolha_classe.y+30+30+30
Código:
image_speed=0
Left Button
Código:
with(obj_jogador)sprite_index=spr_guerreiro_parado
Código:
with(obj_janela_escolha_classe){arrastar = false}
Mouse enter
Código:
image_index=1
Mouse leave
Código:
image_index=0

Obj_bot_gatuno
Step
Código:
x=obj_janela_escolha_classe.x+64;y=obj_janela_escolha_classe.y+30+30+30+30
Código:
image_speed=0
Left Button
Código:
with(obj_jogador)sprite_index=spr_gatuno_parado
Código:
with(obj_janela_escolha_classe){arrastar = false}
Mouse enter
Código:
image_index=1
Mouse leave
Código:
image_index=0

Eu sei que pode parecer demais, mas por favor, me ajudem, eu realmente quero fazer esse jogo, mas preciso da ajuda de vocês!
jpaulo
jpaulo

Data de inscrição : 21/03/2010
Reputação : 0
Número de Mensagens : 345
Prêmios : Erros... alguém me ajuda? 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

Erros... alguém me ajuda? Empty Re: Erros... alguém me ajuda?

Mensagem por saim Seg 05 Mar 2012, 16:19

Não entendi muito bem o que está acontecendo de errado, por favor, escreva de novo com outras palavras. O que era pra acontecer e o que está acontecendo?
É muito código pra entrar em miudezas, mas faltou dizer pra que serve o obj_stop_mouse.
Fora isso, só vi o evento de clicar nos botões pra mudar a sprite do jogador, isso não deveria ser um problema.

Claro que, como o step do jogador manda a sprite ser spr_andando ou spr_parado, apertar os botões não terá um efeito durador (talvez nem tenha efeito nenhum, se o step do jogador acontecer depois do clique). É isso que está dando errado? Os botões não estão mudando a sprite?
saim
saim

Games Ranking : Nota B

Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios : Erros... alguém me ajuda? Empty

Medalhas x 1 Tutoriais x 6 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 3

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

Ir para o topo Ir para baixo

Erros... alguém me ajuda? Empty Re: Erros... alguém me ajuda?

Mensagem por jpaulo Seg 05 Mar 2012, 20:25

O problema é que quando eu clico no obj_bot_"classe", deveria fazer o obj_player mudar o sprite dependendo classe. E quando eu clico, não acontece nada. O.o

obj_stop_mouse:quando o mouse clica em um lugar que não tenha nenhum objeto, esse objeto é criado. Ele serve para que quando o personagem siga a direção do mouse, não siga infinitamente aquela direção, parando onde o ponto foi criado.

Se você estiver disposto a me ajudar, posso te mandar o jogo (por mp, não quero que todo mundo veja o jogo antes da hora :|), então você conserta e dou créditos sem problema Very Happy
jpaulo
jpaulo

Data de inscrição : 21/03/2010
Reputação : 0
Número de Mensagens : 345
Prêmios : Erros... alguém me ajuda? 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

Erros... alguém me ajuda? Empty Re: Erros... alguém me ajuda?

Mensagem por saim Ter 06 Mar 2012, 00:27

jpaulo escreveu:O problema é que quando eu clico no obj_bot_"classe", deveria fazer o obj_player mudar o sprite dependendo classe. E quando eu clico, não acontece nada. O.o
Já comentado acima.

jpaulo escreveu:obj_stop_mouse:quando o mouse clica em um lugar que não tenha nenhum objeto, esse objeto é criado. Ele serve para que quando o personagem siga a direção do mouse, não siga infinitamente aquela direção, parando onde o ponto foi criado.
Hmm... o move_towards_point, então, define uma velocidade em direção, certo? Achei que ele só movia o objeto (estou meio enferrujado com as built-ins).

jpaulo escreveu:Se você estiver disposto a me ajudar, posso te mandar o jogo (por mp, não quero que todo mundo veja o jogo antes da hora :|), então você conserta e dou créditos sem problema Very Happy
Não são necessários créditos. Vamos manter como está, a gente procura isolar o problema (já foi feito, é o step do Obj_jogador que está mudando o sprite), você entende o que há de errado, corrige e fica com todos os créditos, ok?
saim
saim

Games Ranking : Nota B

Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios : Erros... alguém me ajuda? Empty

Medalhas x 1 Tutoriais x 6 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 3

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

Ir para o topo Ir para baixo

Erros... alguém me ajuda? Empty Re: Erros... alguém me ajuda?

Mensagem por jpaulo Ter 06 Mar 2012, 09:05

tudo bem
Mas o acredito que o que há de errado é o step do player: ele diz que o player deve ficar parado, isso é: speed=0 e sprite_index=spr_parado. Isso meio que contradiz o codigo que diz que ele deveria mudar de sprite para a classe escolhida, certo?
Já tentei usar "return", mas não funcionou tbm. acredito que não deveria haver esse problema.
jpaulo
jpaulo

Data de inscrição : 21/03/2010
Reputação : 0
Número de Mensagens : 345
Prêmios : Erros... alguém me ajuda? 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

Erros... alguém me ajuda? Empty Re: Erros... alguém me ajuda?

Mensagem por saim Ter 06 Mar 2012, 09:28

jpaulo escreveu:Mas o acredito que o que há de errado é o step do player: ele diz que o player deve ficar parado, isso é: speed=0 e sprite_index=spr_parado. Isso meio que contradiz o codigo que diz que ele deveria mudar de sprite para a classe escolhida, certo?
saim escreveu:Claro que, como o step do jogador manda a sprite ser spr_andando ou spr_parado, apertar os botões não terá um efeito durador (talvez nem tenha efeito nenhum, se o step do jogador acontecer depois do clique).
Exatamente. Você precisa dar um jeito de fazer a sprite dele para ser a sprite do personagem escolhido parado. Talvez armazenar essas sprites em variáveis globais e chamar essas variáveis no step, ao invés de fazer uma checagem caso-a-caso.

jpaulo escreveu:Já tentei usar "return", mas não funcionou tbm. acredito que não deveria haver esse problema.
Não entendi como "return" poderia ajudar, aqui. Mostre como você fez.

Estive relendo o step, tem uma passagem muito estranha:
Código:
if speed>0{sprite_index=spr_andando}else{if image_xscale=-1{sprite_index=spr_parado;}
else{sprite_index = spr_parado;image_xscale=1}}
Sugiro reler o código, melhorar a identação e ver o que você quis dizer com isso. Escreva em pseudocódigo, desenhe um fluxograma. Por exemplo, tem um pedaço aí que você diz: "se a escala não for negativa, então faça ela ser positiva". Ora, só existem (nesse caso) essas duas opções, então não há porque FAZER ela ser positiva se ela não for negativa.
saim
saim

Games Ranking : Nota B

Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios : Erros... alguém me ajuda? Empty

Medalhas x 1 Tutoriais x 6 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 3

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

Ir para o topo Ir para baixo

Erros... alguém me ajuda? Empty Re: Erros... alguém me ajuda?

Mensagem por jpaulo Ter 06 Mar 2012, 10:00

saim escreveu: Talvez armazenar essas sprites em variáveis globais e chamar essas variáveis no step, ao invés de fazer uma checagem caso-a-caso.

Cara, deu certo. Genial da sua parte. Estou muito agradecido Smile
jpaulo
jpaulo

Data de inscrição : 21/03/2010
Reputação : 0
Número de Mensagens : 345
Prêmios : Erros... alguém me ajuda? 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

Erros... alguém me ajuda? Empty Re: Erros... alguém me ajuda?

Mensagem por saim Ter 06 Mar 2012, 11:10

Que bom que funcionou! Smile
Vou trancar o tópico, então. Se quiser reabrir, entre em contato com a moderação.

Aqui, é sério, dê uma relida nesse código, entenda tudo o que ele faz. Baixar uma engine pode ser perigoso, se você não souber o que está fazendo.
saim
saim

Games Ranking : Nota B

Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios : Erros... alguém me ajuda? Empty

Medalhas x 1 Tutoriais x 6 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 3

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

Ir para o topo Ir para baixo

Erros... alguém me ajuda? Empty Re: Erros... alguém me ajuda?

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

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