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

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
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!!
Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6037
Insígnias de JAM :

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

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!
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!
Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6037
Insígnias de JAM :

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

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!
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!
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