Difference between revisions of "LlAddToLandPassList/ja"

From Second Life Wiki
Jump to navigation Jump to search
m (Undo revision 851162 by Mako Nozaki (Talk))
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
{{LSL_Function/ja
{{LSL_Function/avatar/ja|avatar}}{{LSL_Function/ja
|func=llAddToLandPassList
|func=llAddToLandPassList
|sort=AddToLandPassList
|sort=AddToLandPassList
Line 5: Line 6:
|p1_type=key|p1_name=avatar
|p1_type=key|p1_name=avatar
|p2_type=float|p2_name=hours
|p2_type=float|p2_name=hours
|func_desc='''avatar''' を '''hours''' 時間の間、あるいは '''hours''' がゼロの場合は (明示的に) 削除されるまで、その土地の "許可された住人" 一覧へ追加します。
|func_desc='''avatar''' を '''hours''' 時間の間、あるいは '''hours''' がゼロの場合は永遠に、その土地の "許可された住人" 一覧へ追加します。
|return_text
|return_text
|spec
|spec
|caveats
|caveats=* '''hours''' の最大値は 144 です。144 を超える値は警告なく全て 144 に減らされます。
|examples=<lsl>// これは不完全なやりかたです。BAN 取り消しの時ですら、
|examples=<source lang="lsl2">// これは不完全なやりかたです。BAN 取り消しの時ですら、
// アバター名を完全に指定する必要がありますので。
// アバター名を完全に指定する必要がありますので。
// あくまで、土地の許可/禁止を管理する関数の使用例です。
// あくまで、土地の許可/禁止を管理する関数の使用例です。
Line 97: Line 98:
         command = "";
         command = "";
     }
     }
}</lsl>
}</source>
|helpers
|helpers
|related
|related

Latest revision as of 11:01, 21 February 2016

要約

関数: llAddToLandPassList( key avatar, float hours );

avatarhours 時間の間、あるいは hours がゼロの場合は永遠に、その土地の "許可された住人" 一覧へ追加します。

• key avatar アバターの UUID
• float hours

警告

  • この関数は 0.1 秒間、スクリプトを停止します。
  • hours の最大値は 144 です。144 を超える値は警告なく全て 144 に減らされます。
All Issues ~ Search JIRA for related Bugs

サンプル

// これは不完全なやりかたです。BAN 取り消しの時ですら、
// アバター名を完全に指定する必要がありますので。
// あくまで、土地の許可/禁止を管理する関数の使用例です。
// コピー、使用、改変、配布はご自由に、自己責任でどうぞ。
// 
// Commands are:
//   /5 ban:full_avatar_name
//   /5 tempban:full_avatar_name
//   /5 unban:full_avatar_name
//   /5 pass:full_avatar_name
//   /5 unpass:full_avatar_name
//   /5 clearban
//   /5 clearpass

string command;

default
{
    state_entry()
    {
        llListen(5, "", llGetOwner(), "");
    }
    
    on_rez(integer param)
    {
        llResetScript();
    }

    listen(integer chan, string name, key id, string message)
    {
        if (command != "")
        {
            llOwnerSay("前のコマンドを処理中です。時間をおいて再実行してください。");
        }
        
        list args = llParseString2List(message,[":"],[]);
        command = llToLower(llList2String(args,0));
        
        if (command == "clearbans")
        {
            llResetLandBanList();
        }
        if (command == "clearpass")
        {
            llResetLandPassList();
        }
        else
        {
            llSensor(llList2String(args,1),NULL_KEY,AGENT,96,PI);
        }
    }
    
    no_sensor()
    {
        command = "";
    }
    
    sensor(integer num)
    {
        integer i;
        for (i=0; i< num; ++i)
        {
            if (command == "ban")
            {
                // Ban indefinetely 
                llAddToLandBanList(llDetectedKey(i),0.0);
            }
            if (command == "tempban")
            {
                // Ban for 1 hour.
                llAddToLandBanList(llDetectedKey(i),1.0);
            }
            if (command == "unban")
            {
                llRemoveFromLandBanList(llDetectedKey(i));
            }
            if (command == "pass")
            {
                // Add to land pass list for 1 hour
                llAddToLandPassList(llDetectedKey(i),1.0);
            }
            if (command == "unpass")
            {
                llRemoveFromLandPassList(llDetectedKey(i));
            }
        }
        command = "";
    }
}

特記事項

Search JIRA for related Issues

Signature

function void llAddToLandPassList( key avatar, float hours );
この翻訳は 原文 と比べて古いですか?間違いがありますか?読みにくいですか?みんなで 修正 していきましょう! (手順はこちら)
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。