Difference between revisions of "LlOwnerSay/ru"

From Second Life Wiki
Jump to navigation Jump to search
(Created page with "{{LSL_Function/ru |inject-2={{LSL_Function/limits}}{{LSL_Function/chat/ru||msg}} |func_id=292|func_sleep=0.0|func_energy=10.0 |func=llOwnerSay|p1_type=string|p1_name=msg |func_de…")
 
 
Line 1: Line 1:
{{LSL_Function/ru
{{LSL_Function/ru
|inject-2={{LSL_Function/limits}}{{LSL_Function/chat/ru||msg}}
|inject-2={{LSL_Function/limits/ru}}{{LSL_Function/chat/ru||msg}}
|func_id=292|func_sleep=0.0|func_energy=10.0
|func_id=292|func_sleep=0.0|func_energy=10.0
|func=llOwnerSay|p1_type=string|p1_name=msg
|func=llOwnerSay|p1_type=string|p1_name=msg
Line 7: Line 7:
|spec
|spec
|caveats=
|caveats=
* If {{LSLP|msg}} is longer than 1023 bytes, it will be truncated to 1023 bytes.
* Если {{LSLP|msg}} длиннее 1023 байт, оно урезается до 1023 байт.
* Silently fails ~45 seconds after the owner leaves the region the object is in.
* После того, как пользователь покинул регион, в котором находится объект, функция может слать сообщения только на протяжении ~45 секунд, после чего перестаёт слать сообщения, пока владелец не вернется в регион. На работе скрипта это не отражается.
* Silently fails when the object to which the script is attached is [[deed]]ed to a group.
* Не работает, если объект находится  [[deed|во владении группы]].
* Some viewers do not display llOwnerSay text when {{LSLP|msg}} is empty ({{String}}).
* Некоторые программы-просмотрщики не показывают сообщение от llOwnerSay если {{LSLP|msg}} является пустой строкой.
|constants
|constants
|examples=<lsl>default
|examples=<lsl>default
Line 20: Line 20:
}</lsl>
}</lsl>
|helpers=
|helpers=
<lsl> //-- llOwnerSay extension for preventing silent failures
<lsl> //Функция, позволяющая избегать недостатков, связанных с владением объектом группой
//-- paste this code at the top of the script and replace
//или отсутствем владельца в симе
//--  any calls to llOwnerSay below it with uOwnerSayPlus
uOwnerSayPlus( string vStrMsg ){
uOwnerSayPlus( string vStrMsg ){
key owner = llGetOwner();
key owner = llGetOwner();
Line 34: Line 33:
}</lsl>
}</lsl>
|also_functions=
|also_functions=
{{LSL DefineRow||[[llRegionSay]]|Sends chat region wide}}
{{LSL DefineRow||[[llRegionSay]]|Отправляет сообщение по всему региону}}
{{LSL DefineRow||[[llWhisper]]|Sends chat limited to 10 meters}}
{{LSL DefineRow||[[llWhisper]]|Произносит сообщение на расстояние 10 метров}}
{{LSL DefineRow||[[llSay]]|Sends chat limited to 20 meters}}
{{LSL DefineRow||[[llSay]]|Произносит сообщение на расстояние 20 метров}}
{{LSL DefineRow||[[llShout]]|Sends chat limited to 100 meters}}
{{LSL DefineRow||[[llShout]]|Произносит сообщение на расстояние 100 метров}}
{{LSL DefineRow||[[llInstantMessage]]|}}
{{LSL DefineRow||[[llInstantMessage]]|}}
|also_events
|also_events

Latest revision as of 00:25, 26 August 2012

Общая информация

Function: llOwnerSay( string msg );

Отправляет сообщение, обозначенное в строке msg, только владельцу объекта.

• string msg произносимое сообщение

Предостережения

  • Если msg длиннее 1023 байт, оно урезается до 1023 байт.
  • После того, как пользователь покинул регион, в котором находится объект, функция может слать сообщения только на протяжении ~45 секунд, после чего перестаёт слать сообщения, пока владелец не вернется в регион. На работе скрипта это не отражается.
  • Не работает, если объект находится во владении группы.
  • Некоторые программы-просмотрщики не показывают сообщение от llOwnerSay если msg является пустой строкой.

Примеры

<lsl>default {

   touch_start(integer total_number)
   {
       llOwnerSay("Ouch!" );
   }
}</lsl>

Полезные вырезки

<lsl> //Функция, позволяющая избегать недостатков, связанных с владением объектом группой //или отсутствем владельца в симе uOwnerSayPlus( string vStrMsg ){ key owner = llGetOwner(); if (llKey2Name( owner )){ llOwnerSay( vStrMsg ); //-- single owner that the region still has a handle for }else if (llList2Key( llGetObjectDetails( llGetKey(), [OBJECT_GROUP] ), 0 ) == owner){ llWhisper( 0, "/me : " +vStrMsg ); //-- group owned, must send the message publicly }else{ llInstantMessage( owner, vStrMsg ); //-- single owner, not present, send them an IM } }</lsl>

См. также

Функции

•  llRegionSay Отправляет сообщение по всему региону
•  llWhisper Произносит сообщение на расстояние 10 метров
•  llSay Произносит сообщение на расстояние 20 метров
•  llShout Произносит сообщение на расстояние 100 метров
•  llInstantMessage

Статьи

•  Limits о пределах и ограничениях

Углублённые заметки

Search JIRA for related Issues

Tests

• llOwnerSay Test

Описания

function void llOwnerSay( string msg );