Суббота, 19.07.2025, 12:57

Мой блог

Главная | Регистрация | Вход
Приветствую Вас Гость
RSS
Форма входа
Календарь
«  Октябрь 2008  »
Пн Вт Ср Чт Пт Сб Вс
  12345
6789101112
13141516171819
20212223242526
2728293031
Поиск
Друзья сайта
Статистика

Дневник


Главная » 2008 » Октябрь » 22 » Кто тут?! Простой скрипт подсчета посетителей.
Кто тут?! Простой скрипт подсчета посетителей.
16:56

Хочешь знать кто был у тебя вчера дома, пока ты был в реале?) Это простою Нам потребуется простой скрипт)

Вот он:

// Global variables
list visitor_list;
float range = 10.0; // радиус действия в метрах
float rate = 1.0; // частота обнавления
 
 
// Functions
integer isNameOnList( string name )
{
  integer len = llGetListLength( visitor_list );
  integer i;
  for( i = 0; i < len; i++ )
  {
  if( llList2String(visitor_list, i) == name )
  {
  return TRUE;
  }
  }
  return FALSE;
}
 
// States
default
{
  state_entry()
  {
  llSay(0, "Visitor List Maker started...");
  llSay(0, "The owner can say 'help' for instructions."); 
  llSensorRepeat( "", "", AGENT, range, TWO_PI, rate );
  llListen(0, "", llGetOwner(), "");
  }
   
   
  sensor( integer number_detected )
  {
  integer i;
  for( i = 0; i < number_detected; i++ )
  {
  if( llDetectedKey( i ) != llGetOwner() )
  {
  string detected_name = llDetectedName( i );
  if( isNameOnList( detected_name ) == FALSE )
  {
  visitor_list += detected_name;
  }
  }
  }  
  }
   
  listen( integer channel, string name, key id, string message )
  {
  if( id != llGetOwner() )
  {
  return;
  }
   
  if( message == "help" )
  {
  llSay( 0, "This object records the names of everyone who" );
  llSay( 0, "comes within "+ (string)range + " meters." );
  llSay( 0, "Commands the owner can say:" );
  llSay( 0, "'help' - Shows these instructions." );
  llSay( 0, "'say list' - Says the names of all visitors on the list.");
  llSay( 0, "'reset list' - Removes all the names from the list." );
  }
  else
  if( message == "say list" )
  {
  llSay( 0, "Visitor List:" );
  integer len = llGetListLength( visitor_list );
  integer i;
  for( i = 0; i < len; i++ )
  {
  llSay( 0, llList2String(visitor_list, i) );
  }
  llSay( 0, "Total = " + (string)len ); 
  }
  else
  if( message == "reset list" )
  {
  visitor_list = llDeleteSubList(visitor_list, 0, llGetListLength(visitor_list));
  llSay( 0, "Done resetting.");
  }
  }  
}

Вставляем его в объект. Сохраняем.

Команды для управления скриптом, пишем в основной чат:

help - справка

say list - список гостей

reset list - обнулить список

Удачного использования!

Просмотров: 1476 | Добавил: volldemar | Рейтинг: 3.0/2 |
Всего комментариев: 1
1 Anonim  
0
Где сплагиатил? Скрипт полная ерунда, он не работает...

Имя *:
Email *:
Код *:
Copyright MyCorp © 2025
Сайт управляется системой uCoz