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
» Problema ao entrar por uma porta e voltar por ela
por aminaro Seg 06 maio 2024, 10:08

» Alguém aqui já ganha dinheiro com seus games?
por theguitarmester Ter 30 Abr 2024, 11:43

» Colisões não funcionando
por theguitarmester Ter 30 Abr 2024, 10:16

» Como ajustar velocidade de cada frame da animação no game maker
por pequetux Sex 26 Abr 2024, 16:45

» 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

» 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

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21


Meu player ataca rápido demais.

+4
Igor KinGamer
Henrique_GJ
tata139
PLinioX
8 participantes

Ir para baixo

Meu player ataca rápido demais. Empty Meu player ataca rápido demais.

Mensagem por PLinioX Sáb 13 Fev 2010, 03:47

Bem, vocês devem estar cansados de ouvirem essa pergunta, como eu diminuo a "velocidade de ataque" do meu personagem? Simplesmente o ataque dele é na velocidade da luz!
Eu estou seguindo alguns tutos do reddragon (não ao pé da letra, não gosto de serguir guias assim e talvez por isso esteja bugando, mas que seja).
Vou disponibilizar o arquivo .exe aqui para verem como está o jogo, me digam o que querem, como por exemplo: O step do player, o step do pirata, o create de não sei quem, que seja, qualquer coisa, só pedir que eu edito e coloco aqui!

Link para download:http://ifile.it/w4sx5ja/Piratas.exe
PLinioX
PLinioX

Data de inscrição : 12/02/2010
Reputação : 0
Número de Mensagens : 11
Prêmios : Meu player ataca rápido demais. 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

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por tata139 Sáb 13 Fev 2010, 11:05

Bom eu suspeirto que seja image_speed estou baixando depois edito.
tata139
tata139

Data de inscrição : 11/08/2008
Reputação : 3
Número de Mensagens : 1121
Prêmios : Meu player ataca rápido demais. 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

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por PLinioX Sáb 13 Fev 2010, 16:12

image_speed tá em 0.25
O problema não é a animação, o problema está nos "hits". A animação é normal, mas quando ele desenha, ele desenha um monte de "1", que é o meu ataque, e a vida dos piratas desce rápido demais ou então não desce, aí depois no outro ataque ele morre de uma vez só!
PLinioX
PLinioX

Data de inscrição : 12/02/2010
Reputação : 0
Número de Mensagens : 11
Prêmios : Meu player ataca rápido demais. 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

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por Henrique_GJ Sáb 13 Fev 2010, 16:16

eu não entendi, explic direitinho o problema
Henrique_GJ
Henrique_GJ

Data de inscrição : 30/12/2009
Reputação : 4
Número de Mensagens : 1344
Prêmios : Meu player ataca rápido demais. 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
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Java
  • C ou C++


http://sitedosjogos.forumeiros.com

Ir para o topo Ir para baixo

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por PLinioX Sáb 13 Fev 2010, 16:17

Baixa o jogo e vê qual o problema, você vai entender rapidinho!
PLinioX
PLinioX

Data de inscrição : 12/02/2010
Reputação : 0
Número de Mensagens : 11
Prêmios : Meu player ataca rápido demais. 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

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por Igor KinGamer Sáb 13 Fev 2010, 20:33

Você colocou num evento de colisão para tirar a vida do inimigo?
Igor KinGamer
Igor KinGamer

Data de inscrição : 26/09/2008
Reputação : 11
Número de Mensagens : 890
Prêmios : Meu player ataca rápido demais. Empty

Medalhas x 0 Tutoriais x 1 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

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por donte Sáb 13 Fev 2010, 20:59

por que você não usa no evento alarm?
avatar
donte

Data de inscrição : 22/12/2009
Reputação : 0
Número de Mensagens : 1165
Prêmios : Meu player ataca rápido demais. 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
Plataformas :
  • Game Maker Studio 2.0
  • Unity


Ir para o topo Ir para baixo

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por jogos_jv Sáb 13 Fev 2010, 21:09

coloque este código no create do jogador(player):

podematar = true
no código de ataque do jogador ao inimigo(pirata):

if (podematar = true)
{
código de ataque
podematar = false
alarm[0] = 5
em codigo do ataque coloque o codigo que tira a vida do inimigo

crie um evento Alarm - Alarm 0 e coloque esse código nele:

podematar = true
se vc não entender alguma coisa ou der algum erro me avisa
avatar
jogos_jv

Data de inscrição : 10/02/2010
Reputação : 0
Número de Mensagens : 92
Prêmios : Meu player ataca rápido demais. 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

http://jogosjosevitoria.blogspot.com/

Ir para o topo Ir para baixo

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por PLinioX Sáb 13 Fev 2010, 22:01

Obrigado agora já consigo fazer com que o ataque saia mais devagar, mas agora o problema é outro!
Meus piratas estão imortais, segue meu script para o ataque e desenho do "hit"

if (podematar = true){
podematar = false
alarm[1] = 5
if obj_player.atacando = true and podematar = true{
vida -= atk
if vida <= 0{effect_create_above(ef_explosion,x,y,0,c_red);instance_destroy()}
}
dano = instance_create(x,y,obj_dano);
dano.dano = atk
}

A variável "vida" é do pirata, que se chama obj_pirata, serve pra marcar quanto de vida ele ainda tem, se a vida for <=0 ele explode, mas agora eles não morrem mais.
Ai ai, que dor de cabeça que isso tá dando >.<
PLinioX
PLinioX

Data de inscrição : 12/02/2010
Reputação : 0
Número de Mensagens : 11
Prêmios : Meu player ataca rápido demais. 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

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por jogos_jv Sáb 13 Fev 2010, 22:22

PLinioX escreveu:
if (podematar = true){
podematar = false
alarm[1] = 5
if obj_player.atacando = true and podematar = true{
vida -= atk
if vida <= 0{effect_create_above(ef_explosion,x,y,0,c_red);instance_destroy()}
}
dano = instance_create(x,y,obj_dano);
dano.dano = atk
}
o código abaixo está no alarm 1? se não coloque ele no alarm 1

podematar = true

e tente tirar o } dessa parte

dano = instance_create(x,y,obj_dano);
dano.dano = atk
}
se ainda continuar dando erro, mande o código do jogo(em .gmk ou .gm6) ou explique melhor o erro
avatar
jogos_jv

Data de inscrição : 10/02/2010
Reputação : 0
Número de Mensagens : 92
Prêmios : Meu player ataca rápido demais. 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

http://jogosjosevitoria.blogspot.com/

Ir para o topo Ir para baixo

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por Igor KinGamer Sáb 13 Fev 2010, 22:41

Você primeiro transforma a variável podematar em false ([1]) para depois testar se ela é true ([2]),o que se torna impossível:

if (podematar = true){
podematar = false/*[1]*/
alarm[1] = 5
if obj_player.atacando = true and podematar = true/*[2]*/{
vida -= atk
if vida <= 0{effect_create_above(ef_explosion,x,y,0,c_red);instance_destroy()}
}
dano = instance_create(x,y,obj_dano);
dano.dano = atk
}


Você tem que transformá-la [1] no final do código e/ou parar de testar se podematar = true [2]. Independente de você transformar a variável em false no final ou não, esse teste é desnecessário, pois, para ele estar acontecendo, podematar tem que ser true (primeira linha do código).

Ou seja, o ideal seria deixar assim:

if (podematar = true){
alarm[1] = 5
if obj_player.atacando = true{
vida -= atk
if vida <= 0{effect_create_above(ef_explosion,x,y,0,c_red);instance_destroy()}
}
dano = instance_create(x,y,obj_dano);
dano.dano = atk
podematar = false
}
Igor KinGamer
Igor KinGamer

Data de inscrição : 26/09/2008
Reputação : 11
Número de Mensagens : 890
Prêmios : Meu player ataca rápido demais. Empty

Medalhas x 0 Tutoriais x 1 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

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por PLinioX Sáb 13 Fev 2010, 22:49

http://ifile.it/0ur72ai/Piratas.gmk

Agora o erro é outro, mas cansei de tentar explicar por aqui, dá uma olhada aí e me diz o que tá errado >.<
Qualquer pessoa que puder me ajudar agradeço muito!
PLinioX
PLinioX

Data de inscrição : 12/02/2010
Reputação : 0
Número de Mensagens : 11
Prêmios : Meu player ataca rápido demais. 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

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por Igor KinGamer Sáb 13 Fev 2010, 23:19

Aqui, o erro que dá é o fato de eu não ter o GM pro...

Se esforça e tenta explicar o que tá dando errado (não roda mas dá para eu ver os códigos, posso tentar descobrir...)
Igor KinGamer
Igor KinGamer

Data de inscrição : 26/09/2008
Reputação : 11
Número de Mensagens : 890
Prêmios : Meu player ataca rápido demais. Empty

Medalhas x 0 Tutoriais x 1 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

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por PLinioX Sáb 13 Fev 2010, 23:44

Ok, agora quando eu ataco o problema é:



___________________________________________
ERROR in
action number 1
of Draw Event
for object obj_dano:

Error in code at line 1:
if obj_player.atacando = true {draw_text_color(x,y,string(dano),c_white,c_white,c_white,c_white,0.8 )}
^
at position 15: Unknown variable atacando

Bem, tá aí, é estranho, até porque ele lê essa variável em uma outra parte >.<
PLinioX
PLinioX

Data de inscrição : 12/02/2010
Reputação : 0
Número de Mensagens : 11
Prêmios : Meu player ataca rápido demais. 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

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por guiagge Dom 14 Fev 2010, 09:28

Você não "inicializou" a variável no começo do jogo.
Tente colocar esse código no evento Create do objeto do jogador:
Código:
 atacando = 0
guiagge
guiagge

Data de inscrição : 24/09/2008
Reputação : 0
Número de Mensagens : 90
Prêmios : Meu player ataca rápido demais. 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

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por Igor KinGamer Dom 14 Fev 2010, 11:12

Achei o erro. Tem alguns erros na engine toda.
O código na colisão do player com o pirata está assim:

if (podematar = true){
alarm[1] = 11
if obj_player.atacando = true and podematar = true{
obj_pirata.vida -= atk
if obj_pirata.vida <= 0{effect_create_above(ef_explosion,x,y,0,c_red);instance_destroy()}
}
podematar = false
dano = instance_create(x,y,obj_dano);
dano.dano = atk
}


Nesse código, dois erros:

obj_pirata.vida -= atk
if obj_pirata.vida <= 0{effect_create_above(ef_explosion,x,y,0,c_red);instance_destroy()}


Primeiro: Esse código diminuirá a vida de todos os obj_pirata. Para diminuir só do que foi acertado, troque os "obj_pirata" por "other".
Segundo: Você está aplicando as funções effect_create_above() e instance_destroy() ao próprio player!!! Assim, ele é destruido e a variável atacando dele não existe mais, por isso dá aquele erro. Para aplicar ao pirata acertado, você tem que colocar with(other){effect_create_above([...]);instance_destroy()}.

Agora, no step do obj_pirata:

barra_vida = vida * 100 / 1

Primeiro, não tem nenhum motivo para dividir por 1, o que não muda o valor em nada. Segundo, como a variável vida começa em 1, um golpe já matará a criatura.

Sinceramente, francamente, é melhor você recomeçar esse sistema de ataque do início (mesmo arrumando o que eu disse, ele ainda tem erros), prestando bastante atenção ao que você está fazendo. Você tem que saber o que exatamente cada mísero código em cada objeto faz, assim, quando der um erro como esses, você poderá analisar e descobrir. Você tem que ter domínio total dos códigos do seu jogo, senão, terá sempre que vir aqui perguntar o que está dando erro.
Igor KinGamer
Igor KinGamer

Data de inscrição : 26/09/2008
Reputação : 11
Número de Mensagens : 890
Prêmios : Meu player ataca rápido demais. Empty

Medalhas x 0 Tutoriais x 1 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

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por PLinioX Dom 14 Fev 2010, 15:32

Ok, vou refazer a engine, o problema é que eu tive que fazer alguns ajustes e como estava meio na pressa acabou ficano algumas coisas erradas =/
Estou refazendo, qualquer erro edito e posto aqui!

---EDIT---

Agora só falta eu ajeitar essa explosão do pirata, como eu faço explodir o pirata no script do player!?
PLinioX
PLinioX

Data de inscrição : 12/02/2010
Reputação : 0
Número de Mensagens : 11
Prêmios : Meu player ataca rápido demais. 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

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por Kronos Dom 14 Fev 2010, 16:02

ai cara eu tambem tinhas problemas com isso mais eu usei.
Código:

image_speed=0.25
e a velocidade do ataque melhorou concideradamente.
Kronos
Kronos

Data de inscrição : 10/02/2010
Reputação : 0
Número de Mensagens : 112
Prêmios : Meu player ataca rápido demais. 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

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por Igor KinGamer Dom 14 Fev 2010, 17:19

PLinioX escreveu:Agora só falta eu ajeitar essa explosão do pirata, como eu faço explodir o pirata no script do player!?

Eu escrevi ali em cima, você tem que colocar with(other){effect_create_above(...);instance_destroy();}

obj_pirata.vida -= atk
if obj_pirata.vida <= 0{with(other){effect_create_above(ef_explosion,x,y,0,c_red);instance_destroy()}}
Igor KinGamer
Igor KinGamer

Data de inscrição : 26/09/2008
Reputação : 11
Número de Mensagens : 890
Prêmios : Meu player ataca rápido demais. Empty

Medalhas x 0 Tutoriais x 1 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

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por PLinioX Dom 14 Fev 2010, 18:14

Muito obrigado pela sua ajuda, eu não tinha entendi muito bem o with(other), estou mandando o link do .exe e do .gmk, só pra ver como ficou o resultado final, e se possível me dar mais algumas dicas.

GMK: http://ifile.it/oyzedtc/Piratas.gmk
EXE: http://ifile.it/zom01x9/Piratas.exe
PLinioX
PLinioX

Data de inscrição : 12/02/2010
Reputação : 0
Número de Mensagens : 11
Prêmios : Meu player ataca rápido demais. 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

Meu player ataca rápido demais. Empty Re: Meu player ataca rápido demais.

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo


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