Entrar
Últimos assuntos
» Servidor de Discord do fórum?por Super Games Ontem à(s) 01:27
» Problemas com a caixa de diálogo, ela é pequena e as letras não cabem dentro
por Rukasu777 Qui 16 maio 2024, 18:10
» Problemas com particulas
por RastaMaan Dom 12 maio 2024, 17:03
» Problema ao entrar por uma porta e voltar por ela
por aminaro Seg 06 maio 2024, 10:08
» Alguém aqui já ganha dinheiro com seus games?
por theguitarmester Ter 30 Abr 2024, 11:43
» Colisões não funcionando
por theguitarmester Ter 30 Abr 2024, 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
» 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
Bot atirar no player apenas se estiver "vendo" ele
5 participantes
Página 1 de 1
Bot atirar no player apenas se estiver "vendo" ele
Como faço para que o obj_inimigo checar se o player está dentro do "campo de visão"(ou seja em frente) a ele para executar o código que o faz atirar?(Sendo que esse obj_inimigo fica mudando de angulo conforme anda, sendo para direita = 0º).
peixoto- Games Ranking :
Notas recebidas : D
Data de inscrição : 14/02/2010
Reputação : 3
Número de Mensagens : 911
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Bot atirar no player apenas se estiver "vendo" ele
Ola amigo, tente esse código:
STEP DO INIMIGO
STEP DO INIMIGO
- Código:
if distance_to_object(obj_player) < distancia { faz sua ação}
WellingtonBecker- Games Ranking :
Notas recebidas : D
Data de inscrição : 09/05/2013
Reputação : 105
Número de Mensagens : 824
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Bot atirar no player apenas se estiver "vendo" ele
Isso ja conheço.
O que quero é que caso ele esteja a x pixels de distancia(essa parte ja sei) e olhando na direção do player(não no ponto exato, só na direção(direita,esquerda,cima ou baixo)) que ele execute o script de atirar.
O que quero é que caso ele esteja a x pixels de distancia(essa parte ja sei) e olhando na direção do player(não no ponto exato, só na direção(direita,esquerda,cima ou baixo)) que ele execute o script de atirar.
peixoto- Games Ranking :
Notas recebidas : D
Data de inscrição : 14/02/2010
Reputação : 3
Número de Mensagens : 911
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Bot atirar no player apenas se estiver "vendo" ele
Olá , eu acho que posso ajudar coloque isto no step do inimigo :
CASO NÃO FUNCIONE
Crie uma linha quase que invisivel que só você sabe que ela esta lá e faça ela seguir o inimigo , crie um evento de create na linha e coloque:
Agora se eu te ajudei POR FAVOR clique na mãozinha de beleza do lado esquerdo
do meu perfil vai me ajudar
- Código:
if distance_to_object(obj_player)<=100 and place_meeting(x-100,y,obj_player{
atirar=true//Olhe este código simples, se a distancia para o obj_player for menor que 100 e o obj_player estiver perto do lado esquerdo dele ele atira eu acho que vai funfar
CASO NÃO FUNCIONE
Crie uma linha quase que invisivel que só você sabe que ela esta lá e faça ela seguir o inimigo , crie um evento de create na linha e coloque:
- Código:
global.atirar=false
- Código:
global.atirar =true
- Código:
global.atirar=false
- Código:
if global.atirar=true{
image_angle=point_direction(x,y,obj_player)//vai fazer ele olhar para o player
instance_create(x,y,obj_bala)//ele vai criar a bala
Agora se eu te ajudei POR FAVOR clique na mãozinha de beleza do lado esquerdo
do meu perfil vai me ajudar
Object- Data de inscrição : 14/01/2014
Reputação : 7
Número de Mensagens : 31
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 1
Re: Bot atirar no player apenas se estiver "vendo" ele
Não sei se funciona desse jeito que citou object.
Eu usei o metodo(que tinha esquecido ._.)
Me lembrei desse "modo" ontem a noite quando fui dormir
Mas ainda assim obrigado por tentar ajudar.
Eu usei o metodo(que tinha esquecido ._.)
- Código:
obj_player.x>x //ver se está a direita
obj_player.x<x //ver se esta a esquerda
obj_player.y>y //ver se esta abaixo
obj_player.y<y //ver se está acima
Me lembrei desse "modo" ontem a noite quando fui dormir
Mas ainda assim obrigado por tentar ajudar.
peixoto- Games Ranking :
Notas recebidas : D
Data de inscrição : 14/02/2010
Reputação : 3
Número de Mensagens : 911
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Bot atirar no player apenas se estiver "vendo" ele
eu vou precisar disso daki uns dias eheheheeh, então te recomendo criar um var que cheque o lado do player e do inimigo então nos dois crie:
CREATE:
então depois de por esse codigo no player e no inimigo faça isso no obj_inimigo:
STEP:
Ai lembra de adicionar o codigo de checar a distancia tbm xD, ah não precisa de usar o "self." pq como já esta no obj_inimigo não precisa mas eu ponho pra deixar mais organizado!
CREATE:
- Código:
side = image_xscale // o image_xscale retorna -1 para esquerda e 1 para a direita
então depois de por esse codigo no player e no inimigo faça isso no obj_inimigo:
STEP:
- Código:
if (obj_player.side=1 && self.side=-1) or (obj_player.side=-1 && self.side=1) // se o player estiver olhando para o inimigo...
{
//o que vc quer que aconteça
}
Ai lembra de adicionar o codigo de checar a distancia tbm xD, ah não precisa de usar o "self." pq como já esta no obj_inimigo não precisa mas eu ponho pra deixar mais organizado!
Re: Bot atirar no player apenas se estiver "vendo" ele
Usa o método carioca :
Vamos supor os seguintes objetos:
obj_player
obj_inimigo
obj_inimigo_visao
1) Cria uma imagem assim:
Cria um objeto obj_inimigo_visao, e põe a imagem nesse objeto.
2) Step do obj_inimigo_visao:
3) Create do obj_inimigo:
4) Com com iso ai quando vc rodar o jogo vai ver que cada inimigo tem uma visão como se fosse uma lanterna acesa na frente dele.
5) Pronto, agora cria o evento Collision (com o player) no obj_inimigo_visao, e dentro dele o código do seu tiro.
OBS: Para ocultar a visão é só colocar no create do obj_inimigo_visao:
Rápido, rasteiro, sem código complicado, só na maciota kkkkkk
Vamos supor os seguintes objetos:
obj_player
obj_inimigo
obj_inimigo_visao
1) Cria uma imagem assim:
Cria um objeto obj_inimigo_visao, e põe a imagem nesse objeto.
2) Step do obj_inimigo_visao:
- Código:
// Roda conforme o inimigo
x = obj_inimigo.x
y = obj_inimigo.y
image_angle = obj_inimigo.image_angle
3) Create do obj_inimigo:
- Código:
// Cria o campo de visão
instance_create(x,y,obj_inimigo_visao)
4) Com com iso ai quando vc rodar o jogo vai ver que cada inimigo tem uma visão como se fosse uma lanterna acesa na frente dele.
5) Pronto, agora cria o evento Collision (com o player) no obj_inimigo_visao, e dentro dele o código do seu tiro.
OBS: Para ocultar a visão é só colocar no create do obj_inimigo_visao:
- Código:
visible = false
Rápido, rasteiro, sem código complicado, só na maciota kkkkkk
chicoweb- Games Ranking :
Notas recebidas : B+C
Data de inscrição : 15/05/2012
Reputação : 49
Número de Mensagens : 675
Prêmios :
x 0 x 0 x 0
x 1 x 0 x 0
x 0 x 0 x 0
Re: Bot atirar no player apenas se estiver "vendo" ele
chico esse metodo aumentaria alguns "bytes" no jogo kk, pois seria mais um objeto no game o outro metodo que eu disse não iria usar um objeto a mais, e como teria o codigo "if distance_to_object(obj_player)" ele poderia alterar a distancia que o inimigo ia checar para começar a atacar apenas alterando o valor na frente do codigo e no seu metodo teria que redimensionar a imagem da "lanterna". Mas claro fica a critério de cada um, mas quanto mais fácil e barato for melhor xD
Re: Bot atirar no player apenas se estiver "vendo" ele
Cara eu ja consegui ._.
Eu usei basicamente esses códigos:
https://gmbr.forumeiros.com/t28797-ia-top-down-estilo-rpg-e-shooter
(para andar e o obj saber para qual lado está virado)
e o script que citei ai acima(neste tópico aqui)
Eu usei basicamente esses códigos:
https://gmbr.forumeiros.com/t28797-ia-top-down-estilo-rpg-e-shooter
(para andar e o obj saber para qual lado está virado)
e o script que citei ai acima(neste tópico aqui)
peixoto- Games Ranking :
Notas recebidas : D
Data de inscrição : 14/02/2010
Reputação : 3
Número de Mensagens : 911
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Tópicos semelhantes
» Inimigo atirar apenas quando o player está na mesma linha
» como fazer o inimigo começar atirar apenas quando encostar com o player
» [Resolvido]Como fazer o Inimigo atacar se estiver perto do player e o player perder vida
» Como fazer para quando o player estiver em baixo da plataforma ela n ser mais solida? e quando estiver em cima ela ser solida?
» Atirar somente quando estiver na reta
» como fazer o inimigo começar atirar apenas quando encostar com o player
» [Resolvido]Como fazer o Inimigo atacar se estiver perto do player e o player perder vida
» Como fazer para quando o player estiver em baixo da plataforma ela n ser mais solida? e quando estiver em cima ela ser solida?
» Atirar somente quando estiver na reta
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|