Скрипт полета бабочки. Подлет

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

Скрипт полета бабочки. Подлет

Сообщение mepihin 13 сен 2013, 16:23

Вот я сделал передвижение и разворот, но когда создаю условие нажатия на Space, то там должен происходить взлет бабочки. У меня выше 0 не поднимается. Почему?
Короче, не работает как надо.
Синтаксис:
Используется csharp
using UnityEngine;
using System.Collections;

public class Batterfly : MonoBehaviour {
       
        // скорость падения, передвижения, поворота
        public float fallspeed, movespeed, turnspeed;
       
        // вспомогательные переменные контроллера и трансформа
        CharacterController controller;
        Transform thistransform;
       
        void Start () {
                controller = this.GetComponent<CharacterController>();
                thistransform = transform;
        }
       
        void FixedUpdate () {
                // начинаем полет
                controller.Move(transform.forward * movespeed * Time.deltaTime * Input.GetAxis("Vertical") + Vector3.down * fallspeed * Time.deltaTime);
               
                // занимаемся расчетом поворота игрока
                Quaternion root = Quaternion.AngleAxis(turnspeed * Time.deltaTime * Input.GetAxis("Horizontal"), Vector3.up);
                thistransform.rotation *= root;
               
                // поднимаем высоту полета
                if (Input.GetKey(KeyCode.Space)) {
                        thistransform.position = new Vector3(thistransform.position.x, thistransform.position.y * fallspeed * Time.deltaTime, thistransform.position.z);       
                }
        }
}
Аватара пользователя
mepihin
UNIверсал
 
Сообщения: 418
Зарегистрирован: 01 янв 2013, 20:58
Откуда: Россия - Москва
Skype: live:snukler

Re: Скрипт полета бабочки. Подлет

Сообщение qwerty74 13 сен 2013, 17:21

Потому что ноль при умножении на любое число равно ноль

Попробуй так
Синтаксис:
Используется csharp
 thistransform.position += new Vector3(0,  fallspeed * Time.deltaTime, 0);        
 
qwerty74
UNITрон
 
Сообщения: 201
Зарегистрирован: 14 мар 2012, 14:03

Re: Скрипт полета бабочки. Подлет

Сообщение mepihin 13 сен 2013, 17:26

qwerty74 писал(а):Потому что ноль при умножении на любое число равно ноль

Попробуй так
Синтаксис:
Используется csharp
 thistransform.position += new Vector3(0,  fallspeed * Time.deltaTime, 0);        
 

Блин точно, прибавлять надо было))) забыл
Аватара пользователя
mepihin
UNIверсал
 
Сообщения: 418
Зарегистрирован: 01 янв 2013, 20:58
Откуда: Россия - Москва
Skype: live:snukler


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot], Yandex [Bot] и гости: 26