Difference between revisions of "Template:LSL Function/chat/ru"

From Second Life Wiki
Jump to navigation Jump to search
(Undo revision 1172191 by Highstaker Resident (Talk))
 
Line 1: Line 1:
{{LSL_Function/ru
{{LSL Injection Test}}{{#if:
|inject-2={{LSL_Function/chat/ru|channel|msg}}
 
|func_id=23
<includeonly>{{#if:{{{nc|}}}||{{#vardefine:hidden-text|{{#var:hidden-text}}{{LSLC|Communications{{#var:lang}}}}}}}}</includeonly>
|func_sleep=0.0
 
|func_energy=10.0
{{#if:{{{1|<noinclude>*</noinclude>}}}|
|func=llSay
 
|sort=Say
<includeonly>{{#if:{{{nc|}}}||{{#vardefine:hidden-text|{{#var:hidden-text}}{{LSLC|Chat{{#var:lang}}}}}}}}</includeonly>
|p1_type=integer|p1_name=channel
 
|p2_type=string|p2_name=msg
{{#vardefine:fc-neither|{{#ifeq:{{#if:{{{np|}}}|*}}{{#if:{{{nd|}}}|*}}|**|*}}}}
|func_desc= Произносит сообщение, обозначенное в строке {{LSLP|msg}}, на канале под номером  {{LSLP|channel}}.
{{#vardefine:constants_nb|{{#if:{{#var:fc-neither}}||{{LSL Constants/Chat/ru|np={{{np|}}}|nd={{{nd|}}}|direct={{{direct|}}}}}}}
|return_text
{{#var:constants_nb}}}}
|spec
{{#vardefine:p_{{{1|none}}}_desc|канал {{#if:{{{input|}}}|input|вывода}} , любое целочисленное значение{{#if:{{#var:fc-neither}}|except {{#var:PUBLIC_CHANNEL}} and {{#var:DEBUG_CHANNEL}}|{{#if:{{{np|}}}|except {{#var:PUBLIC_CHANNEL}}}}{{#if:{{{nd|}}}|except {{#var:DEBUG_CHANNEL}}}}}}}}
|constants
{{#vardefine:p_{{{1|none}}}_hover| канал {{#if:{{{input|}}}|input|вывода}} , любое целочисленное значение {{#if:{{#var:fc-neither}}|except PUBLIC_CHANNEL and DEBUG_CHANNEL|{{#if:{{{np|}}}|except PUBLIC_CHANNEL}}{{#if:{{{nd|}}}|except DEBUG_CHANNEL}}}}}}
|caveats=
 
*Произносимое сообщение слышно на расстоянии 20 метров от произносящего примитива (а не корневого). У события [[listen]] иное поведение - примитив в связанном объекте слышит сообщение только если его может услышать корневой примитив.
{{#ifeq:{{#var:fc-neither}}{{{1|<noinclude>{{{1}}}</noinclude>}}}{{{dialog|}}}|{{{1}}}|
*Максимальная длина текста - 1023 байта.
{{#vardefine:caveats|{{#var:caveats}}
*Примитив '''не может''' слышать сам себя, это сделано для избежания рекурсии. Однако, он может слышать другие примитивы связанного объекта.
*Messages sent on {{#if:{{{np|}}}||{{#var:PUBLIC_CHANNEL}} {{#if:{{{nd|}}}||and}}}} {{#if:{{{nd|}}}||{{#var:DEBUG_CHANNEL}}}} are throttled to a rate of <200/2sec, per region, per owner/user.
|examples=<lsl>default
**Once the rate is exceeded, all following messages on {{#if:{{{np|}}}||{{#var:PUBLIC_CHANNEL}} {{#if:{{{nd|}}}||or}}}} {{#if:{{{nd|}}}||{{#var:DEBUG_CHANNEL}}}} will be dropped until the send rate is again below 200/2sec for the previous 2 sec. Dropped messages, despite being dropped still count against the limit.}}
{
    state_entry()
    {
        llSay(0,"Hello, Avatar!");
    }
}</lsl>
Для избежания засорения чата других пользователей используйте [[llInstantMessage]], [[llOwnerSay]] или [[llRegionSayTo]].
|helpers
|also_events=
{{LSL DefineRow||[[listen]]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|Получает сообщения}}
|also_functions=
{{LSL DefineRow||[[llListen]]|Устанавливает режим слушания}}
{{LSL DefineRow||[[llInstantMessage]]|Отправляет сообщение в чат только определенному пользователю}}
{{LSL DefineRow||[[llOwnerSay]]|Отправляет сообщение в чат только владельцу объекта}}
{{LSL DefineRow||[[llRegionSay]]|Отправляет сообщение по всему региону}}
{{LSL DefineRow||[[llShout]]|Произносит сообщение на расстояние 100 метров}}
{{LSL DefineRow||[[llWhisper]]| Произносит сообщение на расстояние 10 метров }}
|also_tests
|also_articles=
{{LSL DefineRow||[[Hello Avatar]]}}
|helpers=
* [[User:Anylyn_Hax#echo.2C_im.2C_imme_and_debug|echo, im, imme and debug]] - полезные функции, написанные пользователем {{User|Anylyn Hax}}.
|notes=
* Канал {{HoverText|0|Zero}} является публичным ( {{#var:PUBLIC_CHANNEL}} . Пользователи могут слышать сообщения, отправляемые на этот канал.  Другие каналы приватны, пользователи не могут их слышать (за исключением канала {{#var:DEBUG_CHANNEL}}).
* Для тестовой информации (дебага) рекомендуется использовать llInstantMessage (не рекомендую, поскольку эта функция тормозит скрипт -- прим. пер.), llOwnerSay, или канал {{#var:DEBUG_CHANNEL}} . В последнем случае скрипт произносит сообщение в отдельном окошке.
* Если один объект говорит что-то другому, то удобно использовать канал с отрицательным номером:
<lsl>
    llSay(-5243212,"turn on");
</lsl>
Сообщения на отрицательных каналах не могут быть непосредственно произнесены пользователем через чат. Если произнести "/-999 сообщение", то он произнесет эту строку на нулевом канале. Однако, [[llTextBox]] и [[llDialog]] дают возможность пользователю произнести сообщение на отрицательном канале.
|cat1
|cat2
|cat3
|cat4
}}
}}
}}
{{#if:{{{2|<noinclude>*</noinclude>}}}|
{{#if:{{{input|}}}|
{{#vardefine:p_{{{2|none_}}}_desc|{{#if:{{{ph|}}}|{{{ph|}}}|{{{pd|}}}}} message}}
|
{{#if:{{{dialog|}}}|
{{#vardefine:p_{{{2|none_}}}_desc|message to be displayed in the {{{dialog|}}}}}
|
{{#vardefine:p_{{{2|none_}}}_desc|произносимое сообщение}}
}}
}}
}}
}}<noinclude>
{| {{Prettytable}}
|-{{Hl2}}
! #var
! value
|-
{{VarPair|caveats}}
|-
{{VarPair|p_{{{1|none}}}_desc}}
|-
{{VarPair|p_{{{1|none}}}_hover}}
|-
{{VarPair|p_{{{2|none_}}}_desc}}
|-
{{VarPair|constants_nb}}
|}
</noinclude>

Latest revision as of 22:10, 25 August 2012

#var value
caveats
  • Messages sent on PUBLIC_CHANNEL and DEBUG_CHANNEL are throttled to a rate of <200/2sec, per region, per owner/user.
    • Once the rate is exceeded, all following messages on PUBLIC_CHANNEL or DEBUG_CHANNEL will be dropped until the send rate is again below 200/2sec for the previous 2 sec. Dropped messages, despite being dropped still count against the limit.
p_none_desc канал вывода , любое целочисленное значение
p_none_hover канал вывода , любое целочисленное значение
p_none__desc произносимое сообщение
constants_nb
Channel Constant Description
DEBUG_CHANNEL 0x7FFFFFFF Канал, зарезервированный для сообщений ошибках и тестовых сообщений.
PUBLIC_CHANNEL 0x0 Канал, слышный всем пользователям в радиусе действия.