Conectar-se

Esqueci minha senha

Últimos assuntos
» [Enquete] Concursos GMBR
por Willy Ontem à(s) 19:49

» CR - Concurso Relâmpago!!
por Willy Ter 18 Jul 2017, 17:11

» 3D:como rodar a camara em horizontal?
por Cambalinho Ter 18 Jul 2017, 15:09

» [Resolvido] pode explicar a d3d_set_projection()?
por Cambalinho Ter 18 Jul 2017, 11:28

» Escrever a resposta certa muda de room
por PedroX Seg 17 Jul 2017, 21:46

» Nota de esclarecimento - GMBR voltou!
por Mentos e Coca-cola Seg 17 Jul 2017, 17:05

» [CR] Campo Minado
por Katerp Dom 16 Jul 2017, 23:09

» [CR] The Bazooka Cat
por Tedi Ripper Dom 16 Jul 2017, 23:01

» Como melhorar um protótipo(Design)
por lolandoplayer Dom 16 Jul 2017, 22:56

» Diminuir velocidade ao arrastar objeto
por LwysF Dom 16 Jul 2017, 17:33

Quem está conectado
21 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 21 Visitantes

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 324 em Ter 05 Out 2010, 13:36
Estatísticas
Temos 12700 usuários registrados
O último usuário registrado atende pelo nome de Eduardo Gomes

Os nossos membros postaram um total de 220919 mensagens em 30412 assuntos

[Problema] Colisão que controla outrosobjetos

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

[Problema] Colisão que controla outrosobjetos

Mensagem por Super Maker em Dom 11 Mar 2012, 17:27

Olá galera!
To com um problemão aqui de colisão. Tava tudo tão lindo quando me deperei com isso.
Meu problema: eu to querendo que na colisão com um objeto (interruptor), trocasse a instancia pra outra, só que isso em vários objetos igais na mesma room, e que essa colisão, fizesse isso funcionar uma só vez a cada colisão. Quando o objeto responsável pela colisão atingir os eixos do objeto responsável pelas trocas de instancias, acontece isso.
Alguém sabe oque fazer?


Última edição por Super Maker em Dom 18 Mar 2012, 10:47, editado 1 vez(es)
avatar
Super Maker

Data de inscrição : 09/07/2011
Número de Mensagens : 646
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [Problema] Colisão que controla outrosobjetos

Mensagem por Ueliton em Dom 11 Mar 2012, 17:33

Não entendi muito bem, é para que quando um objeto colidir com o objeto interruptor todos esses objetos (todos são iguais?) mudarem as instâncias?

Ueliton

Ranking : Nota D
Notas recebidas : E+D
Data de inscrição : 29/10/2011
Número de Mensagens : 128
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário http://gmls.forumeiros.com/

Voltar ao Topo Ir em baixo

Re: [Problema] Colisão que controla outrosobjetos

Mensagem por Need 90 em Dom 11 Mar 2012, 17:36

Vamos supor que existem três objetos :
obj_player
obj_interruptor
obj_interruptor2


E que a colisão seja controlada pelo player, quando colidir com o obj_interruptor :
Código:
with (other) instance_change (obj_interrupitor2,false)
Assim ele só vai tratar de trocar uma instancia, por exemplo, se no lugar desse código você ponhasse esse :
Código:
with (obj_interrupitor) instance_change (obj_interrupitor2,false)
Ele iria tratar todas as instancias.
avatar
Need 90

Ranking : Nota B
Notas recebidas : D+A+B
Data de inscrição : 16/01/2012
Número de Mensagens : 787
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário http://need90games.blogspot.com.br

Voltar ao Topo Ir em baixo

Re: [Problema] Colisão que controla outrosobjetos

Mensagem por Super Maker em Dom 11 Mar 2012, 17:55

Sim Ueliton.
Tenho vários botões (interruptores) na sala. Metade deles ativos e a outra inativa.
Quero que ao alinhar os eixos do heroi com os do botão todos os outros botões sejam destruidos e seja criado o botão contrário ao que estava lá.
Se uma metade é ativa ela passa a ser inativa e a outra metade segue a mesma lógica.

E Need 90, eu ja tentei isso, mas não com instance_change. Vou tentar agora e ja dou um edite.

*******Edite******
No create do interruptor ativado eu fiz:
Código:
global.turn = 0;
Na colisão do mesmo com o player eu fiz:
Código:
if x=other.x and y=other.y{
with(obj_red_button_up){
instance_change (obj_red_button_down,false)
}
global.turn = 1;
}
E no step dos objetos desativados eu fiz:
Código:
if global.turn = 1{
global.turn = 0;
with(obj_red_button_down){
instance_change (obj_red_button_up,false)
}
}
Resultado: quando o player sobe no ativado, todos os ativados ficam desativados (isso ta certo), mas ou outros só mudam se sair de cima do ativado.
Da uma dica aí pessoal?
avatar
Super Maker

Data de inscrição : 09/07/2011
Número de Mensagens : 646
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [Problema] Colisão que controla outrosobjetos

Mensagem por Need 90 em Dom 11 Mar 2012, 18:00

ao invés de de global.turn coloque só turn e na hora que você for manipular através de outros objetos use :
Código:
other.turn=
Deve servir, se não der certo avisa.
avatar
Need 90

Ranking : Nota B
Notas recebidas : D+A+B
Data de inscrição : 16/01/2012
Número de Mensagens : 787
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário http://need90games.blogspot.com.br

Voltar ao Topo Ir em baixo

Re: [Problema] Colisão que controla outrosobjetos

Mensagem por Super Maker em Dom 11 Mar 2012, 18:23

Não deu em nada. To colocando tudo em pratica, mas acho que é falta de organização dos códigos.
Se tiverem maisideias manda!
avatar
Super Maker

Data de inscrição : 09/07/2011
Número de Mensagens : 646
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [Problema] Colisão que controla outrosobjetos

Mensagem por PedroX em Dom 11 Mar 2012, 21:06

Que confusão...

Você disse destruir, mas depois disse sobre inatividade.

Poderia explicar um pouco melhor?

Sinceramente (ao contrário de outros, em outros tópicos) eu não entendi.

PedroX

Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6036
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   :
   :
   :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [Problema] Colisão que controla outrosobjetos

Mensagem por Super Maker em Seg 12 Mar 2012, 18:43

Pedrø escreveu:Que confusão...

Você disse destruir, mas depois disse sobre inatividade.

Poderia explicar um pouco melhor?

Sinceramente (ao contrário de outros, em outros tópicos) eu não entendi.
Então eu peço desculpas se mais uma vez não fui claro pra vocês.
Vou gravar um vídeo que vai mostrar o que quero dizer ja que palavras não bastam.
Até logo!

**********Editado**************

Aqui um vídeo pra tentar esclarecer melhor o que quero:
avatar
Super Maker

Data de inscrição : 09/07/2011
Número de Mensagens : 646
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [Problema] Colisão que controla outrosobjetos

Mensagem por PedroX em Seg 12 Mar 2012, 19:13

Coloca no Create do player:
Código:
colidindo=0

Coloca no Step do player:

Código:
if !colidindo && place_meeting(x, y, obj_botao)
with(obj_botao)
{
if sprite_index==spr_cima
sprite_index=spr_baixo
else
sprite_index=spr_cima
}

colidindo = place_meeting(x, y, obj_botao)

Lembre-se que o teste de colisão deve vir depois da checagem dos sprites, para que não haja bugs.

place_meeting serve para testar uma colisão e retorna o id da instância que colidiu, ou false (negação: !).

Até mais!

PedroX

Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6036
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   :
   :
   :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [Problema] Colisão que controla outrosobjetos

Mensagem por Super Maker em Dom 18 Mar 2012, 10:46

É por isso que eu amo todos vocês!
Eu usei o seu códígo Pedro e fiz uma adaptações pro outro objeto. Deu nisso:
Código:
//adaptação de Pedro
if x=obj_red_button_up.x and y=obj_red_button_up.y{
if !colidindo && place_meeting(x, y, obj_red_button_up)
with(obj_red_button_up)
{
if sprite_index==spr_red_button_up
sprite_index=spr_red_button_down
else
sprite_index=spr_red_button_up
}
//minha adaptação
with(obj_red_button_down){
if sprite_index==spr_red_button_down
sprite_index=spr_red_button_up
}
//continuação da adaptação de Pedro
colidindo = place_meeting(x,y,obj_red_button_up)
}
Na prática ficou assim:

off: Legal o novo modo de upload do imageshack
Entendeu a imagem né?
Como são dois tipos de objetos tenho que fazer pro outro, sem causar conflitos nos códigos, mas pode ser de qualquer forma, só quero que funcione.
Oque mais eu poderia fazer pra que quando ele subir no outro acontessa o contrario?

*****Editado*******

Resolvido pessoal, mas mesmo assim agradeço a colaboração de todos inclusive a sua Pedro, por ter abrido minha mente rsrsr

Eu não usei os códigos de vocês, mas fico feliz por estarem sempre tentando ajudar.
E como sempre, é claro, vou mostrar o código que fiz pra resolver.
Na colisão do player com o obj_red_button_up eu fiz:
Código:
if x=other.x and y=other.y{
if obj_red_button_down.sprite_index=spr_red_button_down{
with(obj_red_button_down){
sprite_index=spr_red_button_up;
}
}
if other.sprite_index=spr_red_button_up{
with(obj_red_button_up){
sprite_index=spr_red_button_down;
}
}
}
Na colisão do player com o obj_red_button_down eu fiz:
Código:
if x=other.x and y=other.y{
if obj_red_button_up.sprite_index=spr_red_button_down{
with(obj_red_button_up){
sprite_index=spr_red_button_up;
}
}
if other.sprite_index=spr_red_button_up{
with(obj_red_button_down){
sprite_index=spr_red_button_down;
}
}
}
Tendo um resultado como esse agora estou sucegado e vou continuar o meu remake do Bobby Carrot
Valeu pelo esforço pessoal.
Pode trancar o tópico!


Última edição por Super Maker em Dom 18 Mar 2012, 11:39, editado 3 vez(es) (Razão : [Resolvido])
avatar
Super Maker

Data de inscrição : 09/07/2011
Número de Mensagens : 646
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [Problema] Colisão que controla outrosobjetos

Mensagem por p2612 em Dom 18 Mar 2012, 11:01

muto legal o jogo Happy
avatar
p2612

Data de inscrição : 27/01/2012
Número de Mensagens : 13
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ver perfil do usuário http://project2-games.blogspot.com/

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