LlGiveMoney/ja
From Second Life Wiki
関数: integer llGiveMoney( key destination, integer amount );
スクリプトのオーナからdestinationのアバターへとamountL$のお金を譲渡します。
常に0のinteger値を返します。
| • key | destination | – | アバターkey. | |
| • integer | amount | – | number of L$の数は0より多くすべきです。(amount > 0) |
実行するにはownerにPERMISSION_DEBITの権限が必要です。
警告
- スクリプトに権限PERMISSION_DEBITが不足している場合、スクリプトはDEBUG_CHANNEL上でエラーを報告して、演算に失敗するでしょう。(しかしスクリプトは実行し続けます。)
- owner以外の誰かにPERMISSION_DEBITが付与された場合、関数はDEBUG_CHANNEL上で報告されるエラーを呼び出します。
- オブジェクトからほかのオブジェクトへ払うことはできません。
- グルーブに譲渡したオブジェクトは、お金を渡すことができません。(権限は付与されません)
- 一度PERMISSION_DEBIT権限を持ったスクリプトは、アカウントのL$を空にできます。
- 詐欺と窃盗はLL:Terms Of Serviceの違反と罪の両方にあたります。
- リージョン上で、各住民へ30秒間に30回の支払い上限が適用されます。上限を超えての継続はスクリプトエラーと、回数が過剰な間の支払い中止を起こします。履歴上、速すぎる支払いは断続的に失敗します。
例
integer AMOUNT = 10; integer STASH = 50; update() { if(STASH >= AMOUNT) llSetText("I have L$"+(string)STASH + " to give away!"); else llSetText("I have no L$ to give away :("); } default { state_entry() { llRequestPermissions(llGetOwner(), PERMISSION_DEBIT ); } run_time_permissions (integer perm) { if(perm & PERMISSION_DEBIT) { state ready; } } } state ready { state_entry() { update(); } touch_start(integer num) { if(STASH >= AMOUNT) { llGiveMoney(llDetectedKey(0), AMOUNT); STASH -= AMOUNT; update(); } else { llWhisper(0, "No more money to give away :("); } } money(integer m) { STASH += m; update(); } }
関連項目
イベント
| • | run_time_permissions | – | 権限で受信するイベントです | |
| • | money |
関数
| • | llGetPermissions | – | 付与されている権限を取得します | |
| • | llGetPermissionsKey | – | 権限が付与されているエージェントを取得します | |
| • | llRequestPermissions | – | 権限を要求します | |
| • | llSetPayPrice |
項目
| • | スクリプトの権限 |

