MOLIER ART STUDIO
Четверг, 28.03.2024, 13:10
Приветствую Вас Гость | RSS
 
Главная Запуск действия, когда актер находится в режиме ожидания. - ФорумРегистрацияВход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » Wintermute Engine » Скрипты / Script » Запуск действия, когда актер находится в режиме ожидания.
Запуск действия, когда актер находится в режиме ожидания.
MolierДата: Понедельник, 26.09.2011, 10:24 | Сообщение # 1
Группа: Администраторы
Сообщений: 332
Награды: 2
Репутация: 15
Статус: Offline
Награды
За создание сайта За хорошую репутацию +10 За 100 Сообщений За 200 Сообщений За 300 Сообщений
На сайте http://res.dead-code.org есть вот такой скрипт

Code

#include "scripts\base.inc"  
   
var IsIdle = false;  
var IdleStartTime = 0;  
   
while(true) // endless loop  
{  
   if(actor.Ready) // is the actor doing something  
   {  
     if(!IsIdle)  
     {  
       // actor enters idle state  
       IsIdle = true;  
       IdleStartTime = Game.CurrentTime;  
     }  
     else if(Game.CurrentTime - IdleStartTime > 5000) // is the actor idle for 5 seconds  
     {  
       IdleStartTime = Game.CurrentTime;   
       actor.ApplyEvent("idle");  
     }  
   }  
   else IsIdle = false; // actor is busy; set IsIdle to false  
   Sleep(100); // wait for 100 milliseconds  
}  
   
////////////////////////////////////////////////////////////////////////////////  
on "idle"  
{  
   // do some idle processing here  
   actor.Talk("Yawn!");  
   actor.GoTo(Random(0, 1000), Random(0, 600));  
}


На сколько я понял, если актер находится в режиме ожидания (5 секунд), он произносит Yawn!
Сколько не пробовал , всунуть это скрипт себе в игру, нечего не выходит. Может кто уже использовал этот сценарий, подскажите в чем проблема, и где иго правильно разместить.




Не ошибается лишь тот, кто не чего не делает.
 
P1LL0TTДата: Вторник, 27.09.2011, 18:18 | Сообщение # 2
Группа: Проверенные
Сообщений: 53
Награды: 3
Репутация: 8
Статус: Offline
Награды
Просто допиши это в actor.script =)
Хотя не оч хорошо получится, потому что петли типа while(true) очень знатно грузят систему, лучше перенести эту часть в gameloop.


И это лучшее не свете колдовство,
Ликует солнце на лезвии гребня,
И это все, и больше нету ничего -
Есть только небо, вечное небо.

БЛОГ МОЕЙ ИГРЫ: http://dragon-3.blogspot.com/
 
MolierДата: Среда, 28.09.2011, 18:25 | Сообщение # 3
Группа: Администраторы
Сообщений: 332
Награды: 2
Репутация: 15
Статус: Offline
Награды
За создание сайта За хорошую репутацию +10 За 100 Сообщений За 200 Сообщений За 300 Сообщений
P1LL0TT, спасибо, все работает.



Не ошибается лишь тот, кто не чего не делает.
 
Форум » Wintermute Engine » Скрипты / Script » Запуск действия, когда актер находится в режиме ожидания.
  • Страница 1 из 1
  • 1
Поиск:

Copyright MyCorp © 2024
!!! На сайте могут находиться статьи, которые, честно и не помню, откуда они у меня появились, одним словом нет информации о первоисточнике и авторе, если на них наткнётся автор, просьба к нему написать мне, чтобы я смог поставить ссылку на источник. !!!