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

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 31/10/2013
Número de Mensagens : 206
Insígnias de JAM :

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

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

ajuda com 4 coisas

em Seg 03 Mar 2014, 15:14
Primeira: Eu fiz um esquema em que monstros estão aparecendo aleatoriamente no mapa, até ai tudo bem, mas eles vão aparecendo de acordo da velocidade que eu coloquei mas tem uma hora que eles param de aparecer, o que eu posso fazer para arrumar?

No obj_zumbi no evento create:

self.tempo = random_range(35, 35);// esses 2 nºs fazem o intervalo de tempo. Vc que escolhe
alarm[0] = self.tempo;// aqui vc chama o Alarm com o tempo

Ainda no zumbi no evento Alarm[0]:
instance_create(irandom(room_width), irandom(room_height),(obj_zumbi));
self.tempo = random_range(210, 600);
alarm[0] = self.tempo;



Segunda: ainda com os zumbis, eu bolei um esquema que eles morrem com 3 tiros da minha arma, mas percebi que somente o primeiro zumbi da room e os zumbis que nascem depois de eu matar o primeiro morrem com os 3 tiros, mas os que já estão na room quando mato o primeiro zumbi morrem com 1 tiro. Se não entenderam fala que tento explicar melhor.

No evento Colision com bala:

global.vidas -= 1;



Terceira:  ainda com o zumbi, queria que quando ele morresse aparecesse um sprite que ele explode e logo depois é destruído, mas quando ele morre para mim ele só some, mas quando tiro o instance_destroy aparece o sprite, ou seja, o instance_destroy ta acontecendo antes do que tem que acontecer, como posso resolver isso?

if(global.vidas <= 0){
  sprite_index = spr_zumbi_explodindo
  
}


if(sprite_index = spr_zumbi_explodindo){
  instance_destroy();
}




Quarta: sei que já está chato mas prometo que é a ultima xD, mas é o seguinte,  o player, ele tem 3 vidas e quando colide com o zumbi perde 1, mas quando o zumbi toca nele ele perde as 3 vidas muito rápido e nem parece que perde só 1 vida, o que eu faço?

if place_free(x+4,y){x+=5} //esse código aqui não sei se vai mudar alguma coisa, mas eu coloquei aqui.

global.vida -= 1;


if(global.vidas <= 0){
 instance_destroy();
  game_restart();
}
avatar
Ranking : Nota A
Notas recebidas : A
Data de inscrição : 12/09/2013
Número de Mensagens : 65
Insígnias de JAM :

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

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

Re: ajuda com 4 coisas

em Seg 03 Mar 2014, 15:35
Cara a Terceira você tem que por no evento Animation End esse código:

if(sprite_index = spr_zumbi_explodindo){
instance_destroy();
}

eu testei aqui agora mesmo e funcionou de boa...

Se você colocar em qualquer outro evento ele inicia se auto-destruindo (ex.:Step) por isso você só vê o obj_zumbi sumindo.
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 11/01/2014
Número de Mensagens : 284
Insígnias de JAM :

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

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

Re: ajuda com 4 coisas

em Seg 03 Mar 2014, 15:36
1º: Vc está colocando o código no zumbi? Se ele for destruido, logo esse código também vai ser  Razz coloque esse código de criar zumbis aleatoriamente em um objeto controle como disse o willcraft

2º: Crie uma variavel para os zumbis chamada sangue, onde sangue = 3, se eles colidirem com a bala eles perdem 1 sangue, e a bala se destrói, quando o sangue deles chegar a 0 eles morrem, creio que resolva. E delete esses zumbis que já estão na room, e coloque eles de novo, para que eles tenham as novas configurações.

3º: Na verdade o instance_destroy aparece depois que o sprite muda, mas, é tão rapidamente que nem é possível ver o sprite dele explodindo, faça um código inspirado no meu:

Código:

//No step do zumbi
if global.vidas <= 0 {  //Se quiser coloque a variável de sangue
     sprite_index = spr_zumbi_explodindo
     alarm[0] = 30 //Terá um alarme de 30 passos (1 segundo)
}

//Quando o alarme chegar a 0
instance_destroy()

Logo o zumbi só será destruído 1 segundo após a mudança de sprite

4º: Ah, vc precisa fazer com que o zumbi seja destruido após colidir com o player, se não o zumbi vai continuar encostando no player, e ele vai perdendo todas as suas vidas

Código:

//Colisão do player com zumbi
global.vida -= 1  //Player perde uma vida
with(obj_zumbi) {   //E zumbi e destruído, caso contrário, ele irá tirar todas as vidas do player
     instance_destroy()
}

Você usa a mesma variável de vida para os zumbis e o player?  confused


Última edição por vitorfernandes13 em Seg 03 Mar 2014, 15:39, editado 2 vez(es)
avatar
Ranking : Nota D
Notas recebidas : D + D
Data de inscrição : 06/04/2012
Número de Mensagens : 682
Insígnias de JAM :

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

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

Re: ajuda com 4 coisas

em Seg 03 Mar 2014, 15:36
Primeira: Faz isso em um objeto controle e que ele não seja destruido.

Segunda: você esta utilizando variavel global, use só
Código:

vida -= 1;

Terceir: Você ta fazendo primeiro aparece a sprite e depois destruir, faz isso:
Código:

if sprite_index = spr_zumbi_explodindo
{
 instance_destroy();
}

if vidas <= 0
{
 sprite_index = spr_zumbi_explodindo;
}

Quarta:Use uma variavel para controlar o tempo em que o player vai perde vida novamente ao colidir com o zombie.

Não entendi muito bem umas perguntas.

flw
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