Money/ja

From Second Life Wiki
Jump to navigation Jump to search

Emblem-important-red.png 警告 セキュリティ

常に領収額をチェックしてください。事前設定された額面はクライアントに対する推奨でしかありません。クライアントはそれでも L$0 か、任意の金額を支払うことができます。

説明

イベント: money( key id, integer amount ){ ; }

お金が amount の額で id によってプリムに支払われたときに発生します。

• key id 支払者
• integer amount 支払額

仕様

お金がプリムに支払われると、お金はオブジェクトのオーナーに渡されます。
オブジェクトがグループのもの、もしくはグループに寄贈されたものであれば、お金はすぐにグループメンバーに分割されます (このため、グループは PERMISSION_DEBIT できません)。「グループ負債の返済とグループ配当の受領」能力の役割をもつグループメンバーのみがお金を受け取ることができます。
関係するプリム・オブジェクトの支払いビヘイビアを有効にしておくのを忘れないようにしてください。
お金がに転送されるアプリケーションのほとんどで支払いボタンを設定しておくべきでしょう(llSetPayPrice)。オブジェクトにお金を支払うのが楽になります。

警告

  • このイベントは llGiveMoney の呼び出しによっては発生しません。llGiveMoney はオブジェクト同士でのお金のやりとりには使えないためです。
  • アタッチメントがお金を受け取ることはできません。

サンプル

integer price = 10;

default
{
    state_entry()
    {
        llSetPayPrice(PAY_HIDE, [PAY_HIDE ,PAY_HIDE, PAY_HIDE, PAY_HIDE]);
        llRequestPermissions(llGetOwner(), PERMISSION_DEBIT);
    }
    run_time_permissions(integer perm)
    {
        if(perm & PERMISSION_DEBIT)
            state cash;
    }
}

state cash
{
    state_entry()
    {
        llSetPayPrice(price, [price, PAY_HIDE, PAY_HIDE, PAY_HIDE]);
    }
    money(key id, integer amount)
    {
        if(amount != price)
        {
            llGiveMoney(id, amount);
            llInstantMessage(id, "あなたは "+(string)amount+" 支払いましたが、間違っています。"
               + "正しい金額は "+(string)price + " です。");
        }
        else
        {
            llInstantMessage(id, "あなたは正しい金額で支払いました。");
        }
    }
}

参考情報

関数

•  llGiveMoney 他のアバターにお金を支払います。
•  llSetPayPrice 支払いボタンを設定します。
この翻訳は 原文 と比べて古いですか?間違いがありますか?読みにくいですか?みんなで 修正 していきましょう! (手順はこちら)
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。