Возрождение при падении с карты. - Форум - Все для Unity3d

Все для Unity3d> Возрождение при падении с карты. - Форум>
Страница 1 из 11
Форум » Unity » Вопросы » Возрождение при падении с карты.
Возрождение при падении с карты.
egoryashchenkoДата: Вторник, 09.12.2014, 13:55 | Сообщение # 1
Новый писатель
Группа: Пользователи
Статус: Offline
Мне нужен скрипт, чтобы если персонаж упал с карты, он умирал и возрождался заново. Карта - скачанная модель.
 
Slyboots_DougДата: Вторник, 09.12.2014, 14:08 | Сообщение # 2
Новый писатель
Группа: Пользователи
Сообщений: 65
Статус: Offline
Можно с помощью тригеров, то есть когда игрок попадает в тригер его HP упадают на ноль,а если HP игрока равны 0, то игрок появляется в определённой точке.
 
PilotMaxДата: Вторник, 09.12.2014, 17:43 | Сообщение # 3
Новый писатель
Группа: Проверенные
Сообщений: 16
Статус: Offline
Цитата Slyboots_Doug ()
Можно с помощью тригеров, то есть когда игрок попадает в тригер его HP упадают на ноль,а если HP игрока равны 0, то игрок появляется в определённой точке.
Хороший вариант. Есть еще один - если по Y обьект падает ниже определенного значения (myRigidbody.position.y < -2.0f), то его удаляют и создают новый. Либо просто переносят в начальную точку. 

Вот похожий пример:

Код
using UnityEngine;
using System.Collections;

public class ReleaseBall : MonoBehaviour {

    //Insperctor Assigned
    public Transform cam    = null;      //Scene Camera;
    public float power       = 10.0f;   //Power to bowl

    //Is the ball currently rolling down the lane
    private bool inPlay = false;
    private Rigidbody myRigidbody = null;

    // Use this for initialization
    void Start () {

       //Cache component
       myRigidbody = rigidbody;
    }

    public void Bowl()
    {
       //If the ball is currently in play don't bowl another
       if(!inPlay)
       {
          //Set ball to camera positon
          myRigidbody.position = cam.transform.position;

          //Set the balls initial velocity facing in the  
          // direction of the camera and a magnitude equal to
          // our power setting
          myRigidbody.velocity = cam.forward * power;

          // Ball is now in play
          inPlay = true;
       }
    }

    // Update is called once per frame
    void Update () {
     
       //If the ball is in play
       if (inPlay)
       {
          if (myRigidbody.position.y < -2.0f)
          {

             // No longer in play
             inPlay = false;
          }
       }
    }
 
egoryashchenkoДата: Вторник, 09.12.2014, 18:31 | Сообщение # 4
Новый писатель
Группа: Пользователи
Статус: Offline
PilotMax, на что скрипт вешать?
 
PilotMaxДата: Вторник, 09.12.2014, 18:40 | Сообщение # 5
Новый писатель
Группа: Проверенные
Сообщений: 16
Статус: Offline
Цитата egoryashchenko ()
PilotMax, на что скрипт вешать?
Ну, лучше всего на самого персонажа. Но мой код работать не будет - он работает в связке с другими скриптами. Выбери из него, что тебе нужно.
 
maxim738Дата: Пятница, 12.12.2014, 14:34 | Сообщение # 6
Новый писатель
Группа: Пользователи
Сообщений: 18
Статус: Offline

Код
using UnityEngine;  
  using System.Collections;  

  public class Respawn: MonoBehaviour {  
public Transform RespawnPoint;
public float minRangeY;
void Update(){
if(transform.position.y <= minRangeY){transform.position = RespawnPoint.position;}
}
}
Не пойму где могли возникнуть сложности.Скрипт вешай на игрока , в переменную
"RespawnPoint" пихай объект где он должен "возрождаться" , а в "minRangeY" Минимальную высоту по Y , где он должен телепортнуться к RespawnPoint.Если высота ниже нуля , то соответственно пишешь значение с минусом.


Скрипты на заказ, помощь в исправлении ошибок ,работа с чужим кодом.В лс,недорого.
 
Форум » Unity » Вопросы » Возрождение при падении с карты.
Страница 1 из 11
Поиск:
Свернуть
Развернуть
Необходима авторизация
0
ТОП-5 САЙТА
НОВЫЕ ИГРЫ
ГОРЯЧИЕ ТЕМЫ
СЛУЧАЙНЫЕ ФАЙЛЫ