Money
From Second Life Wiki
| LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Tutorials |
| | Security Warning! |
|
Always check the amount paid. Preconfigured payment amounts are a suggestion to the client. The client can still send L$0 or any positive integer. |
Description
Event: money( key id, integer amount ){ ; }| 20 | Event ID |
Triggered when money is paid to the prim in the amount by id.
| • key | id | – | who paid | |
| • integer | amount | – | the amount paid |
Specification
When money is paid to the prim, the money is given to the object's owner.
If the object is owned by or deeded to a group it is divvied up amongst the group members immediately (which is why groups can't grant PERMISSION_DEBIT).
Don't forget to turn on the pay-behavior of the prims/objects involved.
The pay buttons should be configured in most applications where money is being transfered (llSetPayPrice), it makes paying money to the object easier.
Caveats
- This event cannot be triggered by a call to llGiveMoney because llGiveMoney cannot be used by one object to pay another object.
- Money cannot be paid to an attachment.
Examples
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, "You paid "+(string)amount+", which is the wrong price, the price is: "+(string)price); } else { llInstantMessage(id, "You paid the right price"); } } }
This article wasn't helpful for you? Maybe the related article at the LSL Wiki is able to bring enlightenment.

