Unity Время бездействия

348
28 декабря 2017, 22:07

Какие есть варианты распознать бездействие игрока? допустим если 15 секунд ничего не делает не нажимает, тогда какое то действие выполнять ?

Answer 1
 float idle_lim = 30.0f; // допустимый лимит в секундах
 float last_ui = 0.0f;
 bool idle = false; // текущий статус idle
 void FixedUpdate() { 
    if ( (Input.anyKeyDown ) { // реагирует на любое действие пользователя - мышь, клава, тачскрин
       if ( idle ) {
          idle = false;
          // что делать в случае возврата пользователя из idle
       } 
       last_ui = Time.time;
    }
    if ( ( Time.time - last_ui ) > idle_lim ) { 
        idle = true;
        // инициировать тут что необходимо при входе в idle
    } 
 }
Answer 2
const float timeout = 10.0f;
float countdown = timeout;
bool idle = false;
...
if (!idle) {
    if (moveDir != Vector3.zero)
        countdown = timeout;
    if(countdown <= 0.0f) {
        idle = true;
        // Started-being-idle code here.
    }
    countdown -= Time.deltaTime;
}
else {
    if (moveDir != Vector3.zero) {
        idle = false;
        countdown = timeout;
        // Stopped-being-idle code here.
    }
    // Still-being-idle code here.
}
READ ALSO
Обмен данными Unity3d(клиент) и Node.js(сервер)

Обмен данными Unity3d(клиент) и Node.js(сервер)

Хочу наладить обмен информации сервер-клиент(Nodejs<->Unity3D) В случае с серверной частью беру такой скрипт

330
В чем практический смысл метода SetApartmentState?

В чем практический смысл метода SetApartmentState?

Работал с потоками и появился вопрос, когда увидел вот этот код:

245
&ldquo; перехватывание&rdquo; скобки в Visual Studio 2017 [требует правки]

“ перехватывание” скобки в Visual Studio 2017 [требует правки]

Всем доброго времени суток ! Есть проблема описание я не смогу составить поетому сразу смотрите видео : https://drivegoogle

234