Conectar-se
Quem está conectado
19 usuários online :: 1 usuário cadastrado, Nenhum Invisível e 18 Visitantes

Biemorth

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 01/12/2010
Número de Mensagens : 175
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://www.techsempre.com

Pequeno problema de "lógica" com sistema de keys.

em Seg 06 Dez 2010, 13:55
Eaw pessoal,outra duvida minha, não sei quase nada de GML,por enquanto to aprendendo no olho mesmo =D

Bom,aqui tenho minhas dúvidas de um sistema que peguei aqui do forum.Vejam:

Eu tenho os seguintes objetos:
*Heroi
*Porta
*gold (é a chave- é de ouro =D)
*chaves

dentro do object Heroi, tenho:
Collision com porta:
if global.chave_gold = true //coloque aqui a quantidade de chaves que ele deve pegar
{
global.chave_gold-=1
}

E também um Destroy Instance


Collision com gold:
global.chave_gold += 1
with other { instance_destroy() }

No objeto "porta" e objeto "gold" não tenho nada escrito.tenho 2 sprites, que já estão configuradas, quando tenho uma chave ele mostra a imagem spr_gold,e quando tenho duas chaves ele fica com a imagem spr_gold2.

No objeto "chaves" eu tenho um Drawn com a config:
if global.chave_gold = 1 { draw_sprite(spr_gold_inventario,0,view_xview+50,view_yview+2)}// se a var pego a bomba for verdadeira desenha a sprite da bomba nas coordenadas x e y
if global.chave_gold = 2 { draw_sprite(spr_gold2_inventario,0,view_xview+50,view_yview+2)}
if collision_point (1632,128,porta,0,0)
global.chave_gold-=1

Podem ver que tentei fazer de tudo ai,botei duas linhas desnecesarias (eu acho).

O grande problema eh que, quando eu pego duas chaves,e uso uma em uma porta,ele continua aparecendo a imagem que tem duas chaves (então eu não sei se o problema é na imagem que não volta para spr_gold ou se é que quando eu abro uma porta ele não dominui uma chave).


Ficou meio complicado, mas acho que me entenderam,ajudem ai galerra =D
avatar
Data de inscrição : 02/12/2010
Número de Mensagens : 31
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuáriohttp://www.dawnloadverdade.blogspot.com

Re: Pequeno problema de "lógica" com sistema de keys.

em Seg 06 Dez 2010, 13:59
coloque uma colisão com porta da chave e coloque
Código:
instance_destroy

se não deu certo ou não entendeu me avise aí.

edit: na sua chave crie uma colisão com a porta e coloque
Código:
instance_destroy

Espero ter ajudado.
avatar
Data de inscrição : 01/12/2010
Número de Mensagens : 175
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://www.techsempre.com

Re: Pequeno problema de "lógica" com sistema de keys.

em Seg 06 Dez 2010, 15:55
olha cara, naum funciona, continua com a imagem com 2 keys =/.

avatar
Data de inscrição : 01/06/2010
Número de Mensagens : 111
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 6

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Pequeno problema de "lógica" com sistema de keys.

em Seg 06 Dez 2010, 17:12
basta ponhar pra quando abrir a porta diminuir o numero de chaves ou seja -1
avatar
Data de inscrição : 01/12/2010
Número de Mensagens : 175
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://www.techsempre.com

Re: Pequeno problema de "lógica" com sistema de keys.

em Seg 06 Dez 2010, 23:08
se você leu o texto inteiro viu que eu já fiz isso...Alguem mais tem algo para me ajudar?
avatar
Ranking : Sem avaliações
Data de inscrição : 08/06/2008
Número de Mensagens : 2314
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 100

Prêmios
   : 3
   : 0
   : 1
Ver perfil do usuáriohttp://blackcapapps.blogspot.com.br/

Re: Pequeno problema de "lógica" com sistema de keys.

em Ter 07 Dez 2010, 12:37
collision_point funciona relativo ao objeto em que ele esta sendo executado, ou seja, isso só funcionaria se fosse o objeto chaves que colidisse com a porta mas não é, certo?
No objeto do jogador coloque um código de colisão mais apropriado como esse:
Código:
// Create
a = false;

// Step
if place_meeting(x,y,objPorta) && !a
{
    global.chave_gold-=1;
    a = true;
}
else
{
    a = false;
}
A variável 'a' é para evitar que o código se retipa enquanto estiver encostado na porta.
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum