Como executar uma ação depois de digitar algo?

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Como executar uma ação depois de digitar algo?

Mensagem por Turista86 em Sex 22 Abr 2011, 10:27

Olá, galera.

Estou com um projeto de um jogo de luta, e eu queria digitar uma pequena sequencia de letras, depois Enter, e então o personagem mandar uma magia ou golpe.

Tentei o seguinte:

No STEP do personagem coloquei

Código:
if keyboard_string="and"
{
if keyboard_check_pressed(vk_enter)
{global.golpenormal=1}
}

if keyboard_check_pressed(vk_enter)
{keyboard_string=""}

"and" é a sequência de letras para deferir o golpe.
global.golpenormal=1 ativa uma função mais abaixo, no resto do código do STEP.
Coloquei em baixo keyboard_string="" porque eu precisava zerar o valor de keyboard_string para poder dar um outro golpe depois.

Mas o problema é que às vezes isso funciona, às vezes não. Às vezes eu preciso digitar várias vezes pra pegar só uma.
Tem outra maneira de eu fazer isso que estou tentando?

Abraços!

Turista86

Número de Mensagens : 19
Data de inscrição : 10/10/2008
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Como executar uma ação depois de digitar algo?

Mensagem por igort em Sex 22 Abr 2011, 10:33

Você quer fazer uma magia? porque não coloka um "editbox" para esses comandos? sinceramente, não sei como fazer, mais no fórum deve ter..

igort

Número de Mensagens : 44
Data de inscrição : 16/04/2011
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como executar uma ação depois de digitar algo?

Mensagem por gustavo ferreira em Sex 22 Abr 2011, 10:38

num tendi muito bem mas vc pode fazer assim no create colocar
Código:
seq=0
ae no step vc coloca
Código:
seq=get_string("  Sequencia","")
if seq=("1°sequencia"){
codigos para realizar o glope 1
}
if seq=("2°sequencia"){
codigos para realizar o glope 2
}
e assim vc vai fazendo continuadamente tendeu?! epero ter ajudado!!! falow Cool

gustavo ferreira

Ranking : Nota C
Número de Mensagens : 470
Idade : 22
Data de inscrição : 03/12/2010
Notas recebidas : C+C+C+C
Reputação : 28
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como executar uma ação depois de digitar algo?

Mensagem por Turista86 em Sex 22 Abr 2011, 10:47

Gustavo

com get_string não dá pra fazer pq este código cria uma janela para digitar.
Eu quero digitar normalmente, sem aparecer janela de texto.

Por exemplo, os jogos normais de luta. Você gira a alavanca para um lado + um botão, e o personagem dá um golpe. Como fazer isso?

Turista86

Número de Mensagens : 19
Data de inscrição : 10/10/2008
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Como executar uma ação depois de digitar algo?

Mensagem por gustavo ferreira em Sex 22 Abr 2011, 10:58

ah tah da pra fazer assim no crate vc coloca
Código:
p1=false
p2=false
p3=false
seq=false
ae no step
Código:
if keyboard_chek_pressed(ord("A")){
p1=true
}
if keyboard_chek_pressed(ord("S")) and p1=true{
p2=true
}
if keyboard_chek_pressed(ord("D")) and p2=true{
p3=true
}
if p1=true and p2=true and p3=true{
seq=true
}

ae no end step ou no step normal vc coloca
Código:
 if seq=true{codigo que faz atacar}
 ataca
eu num testei se der alguma coisa errada d um post ae blz?! falow!!

gustavo ferreira

Ranking : Nota C
Número de Mensagens : 470
Idade : 22
Data de inscrição : 03/12/2010
Notas recebidas : C+C+C+C
Reputação : 28
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como executar uma ação depois de digitar algo?

Mensagem por Mannoroth em Sex 22 Abr 2011, 12:11

gustavo, do jeito que vc falou vai dar certo, mas precisa botar um alarm quando aperta A, S e D, senão o cara poderá apertar A, apertar S, e mesmo se passarem uns 10 segundos e só então apertar o D o golpe será executado. Nos golpes dos jogos, se o cara apertar uma tecla e passar mais de um segundo (aproxim.) e só então apertar a(s) outra(s),o golpe não é executado, tendo que ser rapidamente a sequencia.
então add um evento alarm[0] e bota
Código:
p1=false
p2=false
ae altera o step que o gustavo falou acrescentando o alarm ao apertar A e tbm S, assim:
Código:

if keyboard_chek_pressed(ord("A")){
p1=true;alarm[0]=30
}
if keyboard_chek_pressed(ord("S")) and p1=true{
p2=;alarm=[0]=30
}
if keyboard_chek_pressed(ord("D")) and p2=true{
p3=true
}
if p1=true and p2=true and p3=true{
seq=true
}
ae no code que executa o golpe vc bota algo pra ele nao ficar executando eternamente, tipo alterando o end step q o gustavo disse para:
Código:

 if seq=true{codigo que faz atacar;p3=true}
 

Mannoroth

Ranking : Nota D
Número de Mensagens : 836
Idade : 26
Data de inscrição : 05/10/2010
Notas recebidas : D+D
Reputação : 12
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como executar uma ação depois de digitar algo?

Mensagem por PedroX em Sex 22 Abr 2011, 13:23

Coloca no STEP:

Código:
if keyboard_string!="" && keyboard_check_pressed(vk_enter)
{
letras_magia=3
tamanho_string=string_length(keyboard_string)
magia=string_copy(keyboard_string, tamanho_string-letras_magia, letras_magia)
if (magia=="and")
{global.golpenormal=1}
keyboard_string=""
}


PedroX

Ranking : Nota C
Número de Mensagens : 6034
Idade : 21
Data de inscrição : 26/07/2008
Notas recebidas : C+B
Reputação : 286
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Como executar uma ação depois de digitar algo?

Mensagem por Turista86 em Ter 26 Abr 2011, 09:51

hummm

Depois de muito trabalho, consegui fazer um esquema baseado no post de Mannoroth. Só precisei mudar algumas coisinhas bestas, mas funciona!

Obrigado!

Pode fechar o tópico.

Turista86

Número de Mensagens : 19
Data de inscrição : 10/10/2008
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Como executar uma ação depois de digitar algo?

Mensagem por Conteúdo patrocinado Hoje à(s) 16:26


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum