Difference between revisions of "Money"

From Second Life Wiki
Jump to navigation Jump to search
m (It's ok to sign code in comments but shouldn't sign contributions.)
Line 5: Line 5:
|p1_type=key|p1_name=id|p1_desc=who paid
|p1_type=key|p1_name=id|p1_desc=who paid
|p2_type=integer|p2_name=amount|p2_desc=the amount paid
|p2_type=integer|p2_name=amount|p2_desc=the amount paid
|event_desc=Triggered when money is paid to the prim/object in the '''amount''' by '''id'''.
|event_desc=Triggered when money is paid to the prim in the '''amount''' by '''id'''.
|event_footnote=When money is paid to the object, the money is given to the objects owner.<br/>If the object is owned by a group it is divvied up amongst the group members.<br/>Don't forget to turn on the pay-behavior of the prims/objects involved.(thnx to Indira Bekkers)
|event_footnote
|constants
|constants
|spec=
|spec=When money is paid to the prim, the money is given to the object's owner.<br/>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]]).
 
The pay buttons should be configured in most applications where money is being transfered ([[llSetPayPrice]]), it makes paying money to the object easier.
|caveats
|caveats
|examples=<pre>integer price = 10;
|examples=<pre>integer price = 10;
Line 49: Line 51:
|also_header
|also_header
|also_events
|also_events
|also_functions={{LSL DefineRow||[[llGiveMoney]]|}}
|also_functions={{LSL DefineRow||[[llGiveMoney]]|Give money to another avatar}}
{{LSL DefineRow||[[llSetPayPrice]]|}}
{{LSL DefineRow||[[llSetPayPrice]]|Configure the pay buttons}}
|also_articles
|also_articles
|also_footer
|also_footer

Revision as of 12:04, 3 August 2007

Emblem-important-red.png Security Warning!

Always (ALWAYS!) check the amount paid.

Description

Event: money( key id, integer amount ){ ; }

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).

The pay buttons should be configured in most applications where money is being transfered (llSetPayPrice), it makes paying money to the object easier.

Caveats


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");
        }
    }
}

See Also

Functions

•  llGiveMoney Give money to another avatar
•  llSetPayPrice Configure the pay buttons

Deep Notes

Signature

event void money( key id, integer amount );