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

Nenhum

Ver toda a lista


Compartilhe
Ir em baixo
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 12/10/2011
Número de Mensagens : 149
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuário

Colocar bloco no lugar de outro...Não!!

em Sab 15 Out 2011, 11:57
Olá pessoal , eu preciso de outra ajudinha heheh , primeiramente queria agradecer por todas as minhas duvidas serem respondidas , Bom eu queria perguntar uma coisa assim :
Meu jogo é de construção , e para construir tem os blocos , terra , pedra , etc Bom é assim :
Quando você coloca um bloco de terra em algum lugar e depois pega um bloco de pedra e mando coloca no mesmo lugar q ta o bloco de terra , aí ele encontra um problema ele tira o bloco de terra e coloca o bloco de pedra , o código que eu uso e este :
if mouse_check_button(mb_right){
if point_distance(x,y,mouse_x,mouse_y) <150 {
if t=true {
if global.porta=false{
if picareta=false{
instance_create(mouse_x,mouse_y,bloco)
alarm[0]=15
t=false
}}}}}

Bom , imagino eu que so teria que colocar mais outro if que seria assim :
if bloco_existe(mouse_x,mouse_y) {

}

Isso lá no meu código , só não sei que função usar, por favor seb der para me ajudar ficaria muito feliz , Valeu pessoal !! Espero Respostas!
avatar
Data de inscrição : 31/08/2010
Número de Mensagens : 630
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://leninja.com.br

Re: Colocar bloco no lugar de outro...Não!!

em Sab 15 Out 2011, 12:09
Se você está procurando esse código "bloco_existe" e fácil:

instance_place(x,y,obj) Returns the id of the instance of type obj met when the current instance is placed at position (x,y). obj can be an object or the keyword all. If it does not exist, the special object noone is returned.

então você coloca assim:

if instance_place(mouse_x,mouse_y,objeto)!=noone { //se estiver algum objeto nesse lugar
objeto=instance_place(mouse_x,mouse_y,objeto) // armazena o id do objeto na variavel
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 12/10/2011
Número de Mensagens : 149
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuário

Re: Colocar bloco no lugar de outro...Não!!

em Sab 15 Out 2011, 12:13
Sim , porem tem um problema não é só um bloco , é ou um bloco de terra , ou um bloco de pedra , etc , e este código verfica se tem 1 obj ai nao teria como verificar se tem qualquer objeto ?? Vlw

EDIT________
Até testei , mas nao funcionou ;/!!


Última edição por The_Game em Sab 15 Out 2011, 12:15, editado 1 vez(es)
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 26/09/2010
Número de Mensagens : 270
Insígnias de JAM :

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

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

Re: Colocar bloco no lugar de outro...Não!!

em Sab 15 Out 2011, 12:14
Para resolver seu problema destrua o bloco que vai ser substituído e crie o que você vai colocar no lugar.
Código:
if (oBlocoTerra.x == mouse_x and oBlocoTerra.y == mouse_y)
{
    if (mouse_check_button(mb_right))
    {
        var xx, yy;
        xx = oBlocoTerra.x; // Armazena o valor de x.
        yy = oBlocoTerra.y; // Armazena o valor de y.
        // Destrói o bloco a ser substituido.
        with(oBlocoTerra) { instance_destroy(); }
        // Coloca o novo bloco no lugar do antigo.
        instance_create(xx, yy, oBlocoPedra);
    }
}
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 12/10/2011
Número de Mensagens : 149
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuário

Re: Colocar bloco no lugar de outro...Não!!

em Sab 15 Out 2011, 12:16
Mas não é para substituir , se tiver um bloco ali vocÊ nao pode por nenhum no lugar , só se você quebrar o outro!!

PS : O bloco pode ficar um emcima do outro , só nao podem ficar na mesma poscição!!
avatar
Data de inscrição : 31/08/2010
Número de Mensagens : 630
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://leninja.com.br

Re: Colocar bloco no lugar de outro...Não!!

em Sab 15 Out 2011, 12:24
Use a função Place_free :

place_free(x,y)

dai você monta:

if place_free(mouse_x,mouse_y) { //se não tiver nenhum objeto solido executa a ação.

Edit:

place_free(x,y) retorna o objeto solido que está na coordenada x,y.

place_empty(x,y) retorna true se não tiver qualquer objeto na coordenada x,y
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 12/10/2011
Número de Mensagens : 149
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuário

Re: Colocar bloco no lugar de outro...Não!!

em Sab 15 Out 2011, 12:29
Não funcionou hehehe , ele nao cria mais blocos um emcoma do outro ( tipo assim um a : y=64 e o outro y=32

o primeiro y é o primeiro bloco e o segundo y é o segundo bloco , nao da mais para deixar um encima do outro desta forma HappyHappyHappyHappy Como resolver?
Do jeito que você falou , tudo que consigo é isto ai :



Posionar o blocos dessa forma , de outro jeito nao consigo!!
avatar
Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6042
Insígnias de JAM :

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

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

Re: Colocar bloco no lugar de outro...Não!!

em Sab 15 Out 2011, 15:35
Posta os códigos que você está usando.
Só assim tem como saber a origem do erro.

Flw!

_________________


Leia o Manual do Iniciante e a Lista de Tutoriais, para aprender bastante sobre o GM.
Recomendo o Manual completo das colisões, bem útil.
O exemplo Criar um chat (banir, kickar, etc) é interessante.

Para seu jogo ficar rápido e legal, aprenda a Aumentar o desempenho do seu jogo.

Aprenda a calcular a velocidade de suas animações


Entre para o Clube do Inglês:
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 12/10/2011
Número de Mensagens : 149
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuário

Re: Colocar bloco no lugar de outro...Não!!

em Sab 15 Out 2011, 16:16
Te mandei uma MP Com meu jogo!! Por favor dê uma olhada!
avatar
Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6042
Insígnias de JAM :

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

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

Re: Colocar bloco no lugar de outro...Não!!

em Sab 15 Out 2011, 16:27
Verifique o sprite da parede. Veja se está centralizado. Se estiver, coloque a origem em 0 para ambos os campos.

Até mais!

_________________


Leia o Manual do Iniciante e a Lista de Tutoriais, para aprender bastante sobre o GM.
Recomendo o Manual completo das colisões, bem útil.
O exemplo Criar um chat (banir, kickar, etc) é interessante.

Para seu jogo ficar rápido e legal, aprenda a Aumentar o desempenho do seu jogo.

Aprenda a calcular a velocidade de suas animações


Entre para o Clube do Inglês:
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 12/10/2011
Número de Mensagens : 149
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuário

Re: Colocar bloco no lugar de outro...Não!!

em Sab 15 Out 2011, 16:38
RESOLVIDO , PODEM TRANCAR O TÓPICO!
Conteúdo patrocinado

Re: Colocar bloco no lugar de outro...Não!!

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