GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» Alguém aqui já ganha dinheiro com seus games?
por theguitarmester Ontem à(s) 11:43

» Colisões não funcionando
por theguitarmester Ontem à(s) 10:16

» Como ajustar velocidade de cada frame da animação no game maker
por pequetux Sex 26 Abr 2024, 16:45

» Preciso de ajuda
por AftonDuGrau Dom 21 Abr 2024, 20:18

» Como faz o evento drawn GUI, não se repetir?
por aminaro Sex 19 Abr 2024, 20:30

» PROBLEMAS COM FÍSICAS DE ÁGUA
por aminaro Ter 16 Abr 2024, 10:07

» Retorno da GMBR!!!
por Ralphed Sex 12 Abr 2024, 22:45

» JOGADOR PARANDO NO AR QUANDO ATACA
por aminaro Qua 10 Abr 2024, 13:51

» Problemas com texto interativo
por Kaaru72 Dom 07 Abr 2024, 11:31

» Erro escondido e indecifrável
por dev_gabize.azv Qui 04 Abr 2024, 10:11

» Mudar cor de apenas uma palavra
por Ralphed Sáb 30 Mar 2024, 00:39

» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27

» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30

» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17

» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18

» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34

» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13

» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18

» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12

» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02

» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55

» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42

» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21

» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21


Objeto definido [RESOLVIDO]

+2
CRP-Max
rafarubim
6 participantes

Ir para baixo

Objeto definido [RESOLVIDO] Empty Objeto definido [RESOLVIDO]

Mensagem por rafarubim Seg 03 Out 2011, 21:51

Sempre tive esse problema mas nunca consegui resolver... Alguém pode ajudar?

É o seguinte: Vou criar um jogo com vários inimigos iguais, mas não consigo fazer ele perder vida. Esse é o código que uso, e é muito simples: (gastly_selvagem é o inimigo)

Código:
if attack=true
{
if direction=180
{
if place_meeting(x-5,y,gastly_selvagem)
{
with(gastly_selvagem)
{
vida-=1
}
}
}

if direction=0
{
if place_meeting(x+5,y,gastly_selvagem)
{
with(gastly_selvagem)
{
vida-=1
}
}
}

if direction=90
{
if place_meeting(x,y-5,gastly_selvagem)
{
with(gastly_selvagem)
{
vida-=1
}
}
}

if direction=270
{
if place_meeting(x,y+5,gastly_selvagem)
{
with(gastly_selvagem)
{
vida-=1
}
}
}
}

A solução que arrangei foi essa, mas não deu certo: (vou postar apenas parte do código)

Código:
if direction=180
{
if place_meeting(x-5,y,gastly_selvagem)
{
inimigo=gastly_selvagem
with(inimigo)
{
vida-=1
}
}
}

O que faço para que apenas o inimigo que esteja na posição (x-5,y) perca vida?


Última edição por rafarubim em Ter 04 Out 2011, 13:09, editado 1 vez(es)
rafarubim
rafarubim

Data de inscrição : 20/01/2011
Reputação : 0
Número de Mensagens : 65
Prêmios : Objeto definido [RESOLVIDO] Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

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

Ir para o topo Ir para baixo

Objeto definido [RESOLVIDO] Empty Re: Objeto definido [RESOLVIDO]

Mensagem por CRP-Max Seg 03 Out 2011, 22:00

Não seria mais fácil colocar um evento no inimigo e quando ele for atingido perder energia?
Mas neste caso, você esta definindo "todos" os objetos "gastly_selvagem" como inimigo, por isso que todos perdem energia.
Talvez isso possa ajudar.

......
if place_meeting(x-5,y,gastly_selvagem)
{
other.vida-=1;
}
.......
CRP-Max
CRP-Max

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 28/10/2008
Reputação : 29
Número de Mensagens : 822
Prêmios : Objeto definido [RESOLVIDO] Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

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

Ir para o topo Ir para baixo

Objeto definido [RESOLVIDO] Empty Re: Objeto definido [RESOLVIDO]

Mensagem por y_Tiago Seg 03 Out 2011, 22:03

Código:
var i;
i=instance_postion(x-5,y,gastly_selvagem)
i.vida-=1
y_Tiago
y_Tiago

Data de inscrição : 13/10/2010
Reputação : 1
Número de Mensagens : 149
Prêmios : Objeto definido [RESOLVIDO] Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

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

Ir para o topo Ir para baixo

Objeto definido [RESOLVIDO] Empty Re: Objeto definido [RESOLVIDO]

Mensagem por rafarubim Seg 03 Out 2011, 22:39

CRP-Max escreveu:Não seria mais fácil colocar um evento no inimigo e quando ele for atingido perder energia?
Mas neste caso, você esta definindo "todos" os objetos "gastly_selvagem" como inimigo, por isso que todos perdem energia.
Talvez isso possa ajudar.

......
if place_meeting(x-5,y,gastly_selvagem)
{
other.vida-=1;
}
.......
Na verdade não é um evento de colisão, mas quero que ele perca vida se estiver em determinada posição.
@ Tiago> Não deu certo, por um momento achei que ia dar Sad
@EDIT> Eu usei assim:

Código:
if direction=180
{
if place_meeting(x-5,y,gastly_selvagem)
{
inimigo=instance_position(x-5,y,gastly_selvagem)
with(inimigo)
{
vida-=1
}
}
}
rafarubim
rafarubim

Data de inscrição : 20/01/2011
Reputação : 0
Número de Mensagens : 65
Prêmios : Objeto definido [RESOLVIDO] Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

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

Ir para o topo Ir para baixo

Objeto definido [RESOLVIDO] Empty Re: Objeto definido [RESOLVIDO]

Mensagem por CRP-Max Seg 03 Out 2011, 22:44

rafarubim escreveu:
Na verdade não é um evento de colisão, mas quero que ele perca vida se estiver em determinada posição.
@ Tiago> Não deu certo, por um momento achei que ia dar Sad
@EDIT> Eu usei assim:

Código:
if direction=180
{
if place_meeting(x-5,y,gastly_selvagem)
{
inimigo=instance_position(x-5,y,gastly_selvagem)
with(inimigo)
{
vida-=1
}
}
}
Você já tentou mudar as linhas no seu código da forma que eu mostrei?
Código:
if direction=180
{
if place_meeting(x-5,y,gastly_selvagem)
{
other.vida-=1
}
}
CRP-Max
CRP-Max

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 28/10/2008
Reputação : 29
Número de Mensagens : 822
Prêmios : Objeto definido [RESOLVIDO] Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

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

Ir para o topo Ir para baixo

Objeto definido [RESOLVIDO] Empty Re: Objeto definido [RESOLVIDO]

Mensagem por rafarubim Seg 03 Out 2011, 22:48

Não adianta colocar other porque esse codigo ta no step, e não colisão, fora que vida é uma variável que eu crieientão não pode colocar other.vida.
Sad

EDIT:
O que eu quero saber é simplismente qual função eu uso para minha variável.
exemplo, se eu coloco:

ASSIM DARIA CERTO:
var objeto_que_quero;
objeto_que_quero=INSTANCE_CREATE(x+10,y,objeto_tal)
with(objeto_que_quero)
{
vida-=1
}

ASSIM NÃO DARIA CERTO:
var objeto_que_quero;
objeto_que_quero=PLACE_MEETING(x+10,y,objeto_tal)
with(objeto_que_quero)
{
vida-=1
}

Qual função uso já que place_meeting e instance_position não deram certo?
rafarubim
rafarubim

Data de inscrição : 20/01/2011
Reputação : 0
Número de Mensagens : 65
Prêmios : Objeto definido [RESOLVIDO] Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

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

Ir para o topo Ir para baixo

Objeto definido [RESOLVIDO] Empty Re: Objeto definido [RESOLVIDO]

Mensagem por Mr.Brum Ter 04 Out 2011, 02:29

Código:
if objeto_tal.x-objeto_que_quero.x==10 objeto_que_quero.vida-=1
De acordo com o código acima, seria isso ^
Mr.Brum
Mr.Brum

Games Ranking : Nota C

Notas recebidas : D + D + C + C + D + B
Data de inscrição : 28/04/2011
Reputação : 41
Número de Mensagens : 915
Prêmios : Objeto definido [RESOLVIDO] Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 0

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

http://mrbrumgames.blogspot.com/

Ir para o topo Ir para baixo

Objeto definido [RESOLVIDO] Empty Re: Objeto definido [RESOLVIDO]

Mensagem por Luiz A. Oliveira Ter 04 Out 2011, 08:03

Simple and Easy!
Código:
i=instance_nearest(x,y,obj_inimigo)
if place_meeting(x,y,i)
{
i.vida-=1
}
Adapte isso ao seu código.
ATÉ+
Luiz A. Oliveira
Luiz A. Oliveira

Games Ranking : Nota C

Notas recebidas : D-B-C
Data de inscrição : 08/09/2010
Reputação : 5
Número de Mensagens : 914
Prêmios : Objeto definido [RESOLVIDO] Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

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

http://luizgm.blogspot.com/

Ir para o topo Ir para baixo

Objeto definido [RESOLVIDO] Empty Re: Objeto definido [RESOLVIDO]

Mensagem por saim Ter 04 Out 2011, 11:31

O que você quer é simular um evento de colisão no step.
Seu problema é que você está usando um "with" e incluindo o objeto, não a instância do objeto.
Você precisa, dentro do step, dar um jeito de descobrir a intância do objeto e aplicar o código naquela instância.
Existem funções que te retornam a id da instância. instance_place é uma delas. O Alex FC tem um tutorial sobre essas funções, vou dar uma procurada e dou edit. Até lá, o código do luiz_100juizo deve funcionar (você só vai precisar alterar o valor de x, pra ser adaptado ao seu código).

PS: Isso não vai te ajudar por enquanto, mas "other" não é usado só em eventos de colisão.

Edit: Me enganei. O tutorial que eu estava lembrando é do Pedro Henrique (o Alex FC também tem alguns tutoriais de colisão, mas não vi as funções que você procura). Ele está aqui
saim
saim

Games Ranking : Nota B

Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios : Objeto definido [RESOLVIDO] Empty

Medalhas x 1 Tutoriais x 6 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 3

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

Ir para o topo Ir para baixo

Objeto definido [RESOLVIDO] Empty Re: Objeto definido [RESOLVIDO]

Mensagem por rafarubim Ter 04 Out 2011, 13:08

Obg pessoal, já descobri: eu usei tanto a instance_nearest quanto a instance_placement Smile
ficou assim:

if direction=180
{
if place_meeting(x-5,y,gastly_selvagem)
{
var inimigo;
inimigo=instance_place(x-5,y,gastly_selvagem)
with(inimigo)
vida-=1
}
}
rafarubim
rafarubim

Data de inscrição : 20/01/2011
Reputação : 0
Número de Mensagens : 65
Prêmios : Objeto definido [RESOLVIDO] Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

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

Ir para o topo Ir para baixo

Objeto definido [RESOLVIDO] Empty Re: Objeto definido [RESOLVIDO]

Mensagem por saim Ter 04 Out 2011, 13:57

sugiro mudar um pouco, acho que desse jeito fica mais eficiente:
if direction=180
{
var inimigo;
inimigo=instance_place(x-5,y,gastly_selvagem)
if inimigo!=noone{
with(inimigo)
vida-=1
}
}
saim
saim

Games Ranking : Nota B

Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios : Objeto definido [RESOLVIDO] Empty

Medalhas x 1 Tutoriais x 6 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 3

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

Ir para o topo Ir para baixo

Objeto definido [RESOLVIDO] Empty Re: Objeto definido [RESOLVIDO]

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos