Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

Como hago una zona segura como la del pubg?

Iniciado por Alessandro, Abril 24, 2018, 06:03:55 PM

Tema anterior - Siguiente tema
Hola, me gustaria saber como puedo hacer una zona segura como la del pubg o la del fortnite, es decir:
 
1-) que se cierre en un punto aleatorio del mapa.
 
2-) que al estar afuera baje vida
 
3-) temporizador para que cierre cada cierto tiempo
 
4-) que mientras mas pequeña sea la zona, que baje mas vida, etc.
 
He estado buscando esto por miles de videos y foros y no he tenido exito, espero y ustedes me ayuden con esta duda. Gracia
 
Att: AlexContre27

1 - Bien primero defines un punto en el mapa, por ejemplo (0,0,0), luego tomas la distancia del jugador con ese punto.
 

Vector3.Distance(jugador.transform.position, mapa.puntodereunion)

 
2 - Si la distancia es mayor al radio que definas entonces el jugador está fuera de la zona segura.
 
3 - Temporizador
 
Al iniciar la partida le sumas a Time.time el tiempo que deseas que el radio se achique, luego en una función update evaluas que ese valor sea mayor que Time.time, de lo contrario se activa el "Tick".
 

private float _timeTick = 0;
private int _timeForReduceRadius = 0;
private void Update()
{
}
private void StartGame(int TimeForReduceRadious)
{
_timeForReduceRadius = TimeForReduceRadious;
_timeTick = Time.time + TimeForReduceRadious;
}
private void Update()
{
if(_timeTick < Time.time)
    {
      ReduceRadius();
      _timeTick = Time.tima + _timeForReduceRadius;
    }
}
private void ReduceRadius()
{
 
}

 
4 - Esa parte es matemática básica.

Etiquetas: