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

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Ranking : Nota D
Notas recebidas : D
Data de inscrição : 14/02/2010
Número de Mensagens : 911
Insígnias de JAM :

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

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

Persistent gerando "bug"

em Seg 21 Abr 2014, 12:25
Como faço para um objeto com persistent iniciar em determinada posição x e y em uma room de maneira correta?
Eu tentei colocar o objeto(no caso o player) em todas as rooms, em cada uma na posição certa em que ele deve aparecer quando estiver lá,no entanto, apartir da segunda room ele começa a bugar e aparecem 2 ou mais desse mesmo objeto.
avatar
Ranking : Nota B
Notas recebidas : A - B
Data de inscrição : 04/02/2009
Número de Mensagens : 1243
Insígnias de JAM :

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

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

Re: Persistent gerando "bug"

em Seg 21 Abr 2014, 12:38
Reputação da mensagem: 100% (1 votos)
Coloca nele um Event Other> Room Start
Ae define a posição inicial para cada room, por exemplo:

Event ROOM START:
Código:
if room=fase_1{obj_char.x=124;obj_char.y=300;}
if room=fase_2{obj_char.x=350;obj_char.y=402;}
if room=fase_3{obj_char.x=244;obj_char.y=120;}

Claro que aqui inventei tudo. Você precisará substituir obj_char pelo object do seu personagem, fase_1, fase_2 e fase_3 pelas rooms corretas, e claro, colocar coordenadas corretas Happy

espero ter ajudado
avatar
Ranking : Nota D
Notas recebidas : D
Data de inscrição : 14/02/2010
Número de Mensagens : 911
Insígnias de JAM :

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

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

Re: Persistent gerando "bug"

em Seg 21 Abr 2014, 12:42
@dharrison escreveu:Coloca nele um Event Other> Room Start
Ae define a posição inicial para cada room, por exemplo:

Event ROOM START:
Código:
if room=fase_1{obj_char.x=124;obj_char.y=300;}
if room=fase_2{obj_char.x=350;obj_char.y=402;}
if room=fase_3{obj_char.x=244;obj_char.y=120;}

Claro que aqui inventei tudo. Você precisará substituir obj_char pelo object do seu personagem, fase_1, fase_2 e fase_3 pelas rooms corretas, e claro, colocar coordenadas corretas Happy

espero ter ajudado
Havia pensado nessa possibilidade mas achei que daria demasiado trabalho para fazer(visto que são várias rooms).
Mas na falta de opções, obrigado, vou usar esse modo mesmo.
avatar
Ranking : Nota B
Notas recebidas : A - B
Data de inscrição : 04/02/2009
Número de Mensagens : 1243
Insígnias de JAM :

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

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

Re: Persistent gerando "bug"

em Seg 21 Abr 2014, 12:45
@peixoto escreveu:Havia pensado nessa possibilidade mas achei que daria demasiado trabalho para fazer(visto que são várias rooms).
Mas na falta de opções, obrigado, vou usar esse modo mesmo.

Outros users podem saber formas melhores.
Mas porque exatamente vc precisar que o object seja persistent? Eu raramente uso isso.

Gosto de usar a dica so SIGILOSO sobre obj_declarador de variáveis, assim não preciso armazenar vars importantes no obj_personagem
Ae não uso persistent e coloco ele manualmente na posição na nova room...
avatar
Ranking : Nota A
Notas recebidas : C + B + A + A
Data de inscrição : 08/06/2009
Número de Mensagens : 1846
Insígnias de JAM :

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

Prêmios
   : 2
   : 1
   : 1
Ver perfil do usuáriohttp://willy-gmbr.blogspot.com/

Re: Persistent gerando "bug"

em Seg 21 Abr 2014, 12:47
Reputação da mensagem: 100% (1 votos)
Código... Cada room um código novo... Isso dá muito trabalho, mas dá pra facilitar isso ae!  yes 

Simplesmente crie um objeto invisível com o mesmo sprite do player. Para o exemplo, chamarei de obj_start.
Agora, no evento room_start, como o dharrison sugeriu, você coloca isso:
Código:
//Deixa o jogador sobre um objeto:
x = obj_start.x;
y = obj_start.y;
Feito isso, é só colocar o obj_start em cada room no lugar onde o player deveria iniciar e já era! blz
avatar
Ranking : Nota D
Notas recebidas : D
Data de inscrição : 14/02/2010
Número de Mensagens : 911
Insígnias de JAM :

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

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

Re: Persistent gerando "bug"

em Seg 21 Abr 2014, 13:12
@Willy escreveu:Código... Cada room um código novo... Isso dá muito trabalho, mas dá pra facilitar isso ae!  yes 

Simplesmente crie um objeto invisível com o mesmo sprite do player. Para o exemplo, chamarei de obj_start.
Agora, no evento room_start, como o dharrison sugeriu, você coloca isso:
Código:
//Deixa o jogador sobre um objeto:
x = obj_start.x;
y = obj_start.y;
Feito isso, é só colocar o obj_start em cada room no lugar onde o player deveria iniciar e já era! blz
Opa! Perfeito!
Obrigado pela ajuda!
avatar
Ranking : Nota B
Notas recebidas : B+B
Data de inscrição : 04/03/2012
Número de Mensagens : 1925
Insígnias de JAM :

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

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

Re: Persistent gerando "bug"

em Seg 21 Abr 2014, 13:54
Apenas para dar uma dica extra, caso você queira aparece numa room em um ponto diferente do pnto inicial pode inventar um codigo assim:

No evento create ou  game start crie um codigo assim:
Código:
global.Xposition=xstart //memoriza a posicao x
global.Yposition=ystart //memoriza a posicao y

nesse codigo suas posiçoes foram memorizadas , coloque no seu personagem esse codigo no evento room start
Código:
x=global.Xposition
y=global.Yposition
caso de mensagem de erro é por que esse código está sendo chamado antes do game start(o que não deveria ) para resolver isso coloque um alarm no room start e esse código dentro do evento alarm que você criou.
para usa-lo é simples, basta colocar em qualquer ocasiao um valor nos global.Xposition ou global.Yposition que você aparecerá na que você deu o valor toda a vez que iniciar em alguma room, entendido Smile
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