УСКОРЕНИЕ ПО НАЖАТИЮ LSHIFT в CharacterMotor

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

УСКОРЕНИЕ ПО НАЖАТИЮ LSHIFT в CharacterMotor

Сообщение dostalition 26 янв 2013, 22:58

В стандартном скрипте ФПКонтоллера CharacterMotor есть переменная maxFovardspeed ... Решил сделать ускорение по нажатию шифта, вставив такой код
Синтаксис:
Используется javascript
if(Input.GetKeyDown(KeyCode.LeftShift))
                    maxForwardSpeed = 30;
в функцию Update, но это не срабатывает ... Подскажите, в чём ошибка ?
ТВОРЧЕСТВО рулит ... :) Все эти чередующиеся нули и единицы ничего не стоят без АТМОСФЕРЫ, ЦЕЛОСТНОСТИ ПРОИЗВЕДЕНИЯ и прочих ТОНКИХ, но столь необходимых штук ... :)
Аватара пользователя
dostalition
UNITрон
 
Сообщения: 295
Зарегистрирован: 21 янв 2013, 01:35
Откуда: Украина

Re: УСКОРЕНИЕ ПО НАЖАТИЮ LSHIFT в CharacterMotor

Сообщение Левш@ 26 янв 2013, 23:31

_X.cor.R (Prologue)
Аватара пользователя
Левш@
Адепт
 
Сообщения: 4073
Зарегистрирован: 14 окт 2009, 16:34
Откуда: IBERIA
Skype: bars_levsha
  • Сайт

Re: УСКОРЕНИЕ ПО НАЖАТИЮ LSHIFT в CharacterMotor

Сообщение dostalition 26 янв 2013, 23:52

:-? :-\
ТВОРЧЕСТВО рулит ... :) Все эти чередующиеся нули и единицы ничего не стоят без АТМОСФЕРЫ, ЦЕЛОСТНОСТИ ПРОИЗВЕДЕНИЯ и прочих ТОНКИХ, но столь необходимых штук ... :)
Аватара пользователя
dostalition
UNITрон
 
Сообщения: 295
Зарегистрирован: 21 янв 2013, 01:35
Откуда: Украина

Re: УСКОРЕНИЕ ПО НАЖАТИЮ LSHIFT в CharacterMotor

Сообщение dostalition 26 янв 2013, 23:53

А можно небольшой комментарий ? ... :)
ТВОРЧЕСТВО рулит ... :) Все эти чередующиеся нули и единицы ничего не стоят без АТМОСФЕРЫ, ЦЕЛОСТНОСТИ ПРОИЗВЕДЕНИЯ и прочих ТОНКИХ, но столь необходимых штук ... :)
Аватара пользователя
dostalition
UNITрон
 
Сообщения: 295
Зарегистрирован: 21 янв 2013, 01:35
Откуда: Украина

Re: УСКОРЕНИЕ ПО НАЖАТИЮ LSHIFT в CharacterMotor

Сообщение AMD 27 янв 2013, 00:20

Видимо переменная намекает, что она есть множитель дающий увеличение скорости, и Вам возможно стоит попробовать увеличивать ее
Программист — это профессиональный конвертер галлюцинаций заказчика в жесткую формальную систему.
AMD
UNITрон
 
Сообщения: 349
Зарегистрирован: 16 июн 2012, 14:33
Откуда: Москва

Re: УСКОРЕНИЕ ПО НАЖАТИЮ LSHIFT в CharacterMotor

Сообщение dostalition 27 янв 2013, 00:42

Скажите , можно ли изменить моим кодом непосредственно переменную maxForwardSpeed , ведь увеличивая её в инспекторе, увеличивается и скорость передвижения ? Вы можете сказать что-то более конкретное, типа "в твоём коде не хватает того-то " или "Ты не туда его влепил", или "так этот вопрос вообще не решить" ... :) ? То, что по ссылке, Мне не о чём не говорит .... :(
ТВОРЧЕСТВО рулит ... :) Все эти чередующиеся нули и единицы ничего не стоят без АТМОСФЕРЫ, ЦЕЛОСТНОСТИ ПРОИЗВЕДЕНИЯ и прочих ТОНКИХ, но столь необходимых штук ... :)
Аватара пользователя
dostalition
UNITрон
 
Сообщения: 295
Зарегистрирован: 21 янв 2013, 01:35
Откуда: Украина

Re: УСКОРЕНИЕ ПО НАЖАТИЮ LSHIFT в CharacterMotor

Сообщение dostalition 27 янв 2013, 02:18

Подскажите правильный указатель на переменную maxFovardspeed в CharacterMotor ...
ТВОРЧЕСТВО рулит ... :) Все эти чередующиеся нули и единицы ничего не стоят без АТМОСФЕРЫ, ЦЕЛОСТНОСТИ ПРОИЗВЕДЕНИЯ и прочих ТОНКИХ, но столь необходимых штук ... :)
Аватара пользователя
dostalition
UNITрон
 
Сообщения: 295
Зарегистрирован: 21 янв 2013, 01:35
Откуда: Украина

Re: УСКОРЕНИЕ ПО НАЖАТИЮ LSHIFT в CharacterMotor

Сообщение dostalition 27 янв 2013, 14:13

ВОПРОС РЕШЕН ! Создаём в моторе статик-переменную
Синтаксис:
Используется javascript
static var an = 1.0;
Находим (тоже в моторе) function GetDesiredHorizontalVelocity () и
после строчки с var maxSpeed : float = MaxSpeedInDirection(desiredLocalDirection); пишем: maxSpeed = maxSpeed * an; Выглядит так
Синтаксис:
Используется javascript
var maxSpeed : float = MaxSpeedInDirection(desiredLocalDirection);
      maxSpeed = maxSpeed * an;
и вставляем в апдэйт такой код
Синтаксис:
Используется javascript
if (Input.GetKey(KeyCode.LeftShift)) {
                 CharacterMotor.an = 3;
             } else {
             if (Input.GetKeyUp (KeyCode.LeftShift)) {
                 CharacterMotor.an = 1;
             }
             }
головняк получился из-за путаницы с TPC и FPC ... :) ТОВАРИЩИ АДМИНЫ И К ОНЫМ ПРИБЛИЖЕННЫЕ, не вводите в заблуждение начинающих игроделов, у Них и без того ГОЛОВА ПУХНЕТ ! :))) НО, ВСЕ-ЖЕ, БЛАГОДАРЮ ВСЕМ ОТКЛИКНУВШИМСЯ ! ... :)
ТВОРЧЕСТВО рулит ... :) Все эти чередующиеся нули и единицы ничего не стоят без АТМОСФЕРЫ, ЦЕЛОСТНОСТИ ПРОИЗВЕДЕНИЯ и прочих ТОНКИХ, но столь необходимых штук ... :)
Аватара пользователя
dostalition
UNITрон
 
Сообщения: 295
Зарегистрирован: 21 янв 2013, 01:35
Откуда: Украина

Re: УСКОРЕНИЕ ПО НАЖАТИЮ LSHIFT в CharacterMotor

Сообщение Левш@ 27 янв 2013, 15:09

Подскажите правильный указатель на переменную maxFovardspeed в CharacterMotor ...

Щас глянул этот скриптик, там так наворотили что черт ногу сломает, вникать неохота... проще новый, свой контроллер написать. :)
Добрый совет найти старый FPC (из 2ХХ версий Юнити), там все просто и новичку понятно сделано. Ускорение добавляеться легко.

http://gamecreatingcommunity.ru/_fr/54/7539263.jpg

А ту я скрипты перепутал, сорьки. :D
_X.cor.R (Prologue)
Аватара пользователя
Левш@
Адепт
 
Сообщения: 4073
Зарегистрирован: 14 окт 2009, 16:34
Откуда: IBERIA
Skype: bars_levsha
  • Сайт


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

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8