Problema no meu codigo

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

Problema no meu codigo

Mensagem por Riccardoric em Dom 07 Jun 2015, 16:25

Estava programando até que... tive um problema.
Vou dar um exemplo do que eu queria fazer Razz

Vamos fingir que temos 2 obj, obj_1 e obj_2, os dois tem sprites distintas entre eles, e o obj_1 tem duas imagem, queria que quando uma variável no obj_2 for verdadeira , a image do obj_1 mudasse.
Eu fiz, no step do obj_2:
Código:
if var_qualquer=true {obj_1.image_index=0} else {obj_1.image_index=1}
E essa variável muda pra false se apertar a letra Q, em que ela lançaria um feitiço, e vira true após um alarm[0]=30.

O problema é que ele não muda de image mas ele cria o feitiço e o resto que deveria acontecer, alguem sabe o que é que ta errado ou como eu poderia fazer?

OBS// Não posso colocar a variável diretamente no obj_1 porque n é uma variável global, e n tem como eu colocar global.

Riccardoric

Número de Mensagens : 206
Idade : 17
Data de inscrição : 17/06/2014
Reputação : 34
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Problema no meu codigo

Mensagem por matheusco em Dom 07 Jun 2015, 16:50

Coloca o sprite pra mudar na mesma hora que o alarme é ativado (ou quando aperta Q, não entendi quando é pra mudar)? obj_1.sprite_index = ...

Você pode armazenar a id do obj_2 no obj_1 pra poder verificar a variável, você pode armazenar a id do obj_2 numa global e checar com obj_1, você pode fazer o obj_2 mudar a sprite do obj_1 usando obj_1.sprite_index = ...

matheusco

Número de Mensagens : 395
Idade : 24
Data de inscrição : 10/08/2014
Reputação : 51
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

http://www.tutoriaisgamemaker.com.br

Voltar ao Topo Ir em baixo

Re: Problema no meu codigo

Mensagem por RenanRP em Dom 07 Jun 2015, 17:03

n seria :
if var_qualquer=true
{
with(obj_1)
{
image_index=0
}
}

else
{
with(obj_1)
{
image_index=1
}
}

RenanRP

Número de Mensagens : 152
Idade : 14
Data de inscrição : 26/12/2012
Reputação : 8
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Problema no meu codigo

Mensagem por Superbomber em Dom 07 Jun 2015, 18:45

Olha, você disse que não poderia por a variável global. E fez no próprio objeto que tem a variável...
Presumi que há mais de um obj_2 na sala, estou correto?

Caso sim, enquanto um dos obj_2 tem a variável true, e muda obj_1.image_index=0...Outro tem a variável em valor de false, e muda para obj_1.image_index=1...

Por isso a imagem não muda...Como resolver? Bom, não sei ao certo como seu código funciona, mas ai vai um exemplo:
Código:

//obj_2 step
if (variavel){
  obj_1.image_index = 0;
}

//obj_1 evento ao apertar Q
//"E essa variável muda pra false se apertar a letra Q"

image_index = 1;

Você deixou bem vago as informações de seu problema, nem sequer citou o que realmente o causava. Assim é impossível alguém descobrir o que há de errado, afinal eles não conhecem o código.
Na próxima, tenta por mais informações sobre seu problema. Até.
(Isso, se eu estiver correto.)

Superbomber

Ranking : Sem avaliações
Número de Mensagens : 100
Idade : 15
Data de inscrição : 28/04/2015
Reputação : 47
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Problema no meu codigo

Mensagem por Riccardoric em Dom 07 Jun 2015, 22:33

Demorei meia hora pra escrever um texto em que todos compreendem mas niguem lê direito enfim

Vou reformular aqui, temos um mago, um feitiço e uma casinha que fica verde quando o mago ainda nao usou algum feitiço e fica cinza quando  atira o feitico entao seria:

If keyboard_check(ord("Q") and can_atk=true
{ code; can_atk=false; alarm[0]=30 }

No alarm[0]=30 tem can_atk=true

pronto ai esta o code pra lancar o feitiço. Em outra linha coloquei

If can_atk=true { obj_casinha.image_index=0} else { obj_casinha.image_index=1}

Ai esta é tudo isso... O problema é que ele n muda a image dificil entender isso?

pra que perguntar qual o problema do code se nem eu sei qual é superbonder?

Hyreos, não vai mudar mt coisa

Matheusco não entendi a sua resposta

Obs// estou no celular nao deu pra formatar direito o topico mas fiz o possivel

Agradeço do mesmo jeito pela ajuda espero achar uma solução. flw

Riccardoric

Número de Mensagens : 206
Idade : 17
Data de inscrição : 17/06/2014
Reputação : 34
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Problema no meu codigo

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


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