Difference between revisions of "How do I make a donation box?"
Jump to navigation
Jump to search
Kireji Haiku (talk | contribs) m |
|||
Line 9: | Line 9: | ||
<lsl> | <lsl> | ||
default { | default | ||
{ | |||
changed(integer change) | |||
{ | |||
if (change & (CHANGED_OWNER | CHANGED_INVENTORY)) | |||
return; | |||
} | } | ||
}</lsl> | |||
touch_start(integer num_detected) | |||
{ | |||
// PUBLIC_CHANNEL has the integer value 0 | |||
llSay(PUBLIC_CHANNEL, "Please right-click me and select 'Pay...' to donate."); | |||
} | |||
money(key id, integer amount) | |||
{ | |||
string name = llKey2Name(id); | |||
key owner = llGetOwner(); | |||
llInstantMessage(id, "Thank you for your donation, " + name + "!"); | |||
llInstantMessage(owner, name + " has donated " + (string)amount + " L$."); | |||
} | |||
} | |||
</lsl> | |||
Once the script is installed, you can easily change the donation box's properties to accept left-clicks as well. | Once the script is installed, you can easily change the donation box's properties to accept left-clicks as well. |
Revision as of 15:17, 29 October 2012
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
A donation box is a scripted object that Resident can right-click (CMD-click on Macintosh) and pay without receiving a service or object in return. You can make any object a donation box by adding a small script to it. To do so:
- Right-click the object inworld and choose Edit.
- Click on the Content tab. (Click More if you don't see it.)
- Click the New Script button.
- Delete everything in the script. Copy and paste the text in the box below.
- Click Save. If the compile is complete, close the script window and editing window. The Pay option should now appear in the pie menu when a Resident right-clicks on the object. Sample Donation Script:
<lsl> default {
changed(integer change) { if (change & (CHANGED_OWNER | CHANGED_INVENTORY)) return; }
touch_start(integer num_detected) { // PUBLIC_CHANNEL has the integer value 0 llSay(PUBLIC_CHANNEL, "Please right-click me and select 'Pay...' to donate."); }
money(key id, integer amount) { string name = llKey2Name(id);
key owner = llGetOwner();
llInstantMessage(id, "Thank you for your donation, " + name + "!"); llInstantMessage(owner, name + " has donated " + (string)amount + " L$."); }
} </lsl>
Once the script is installed, you can easily change the donation box's properties to accept left-clicks as well.
- If you've closed the editing window, right-click the object and choose Edit again.
- Make sure you're on the General tab in the Editor. (Click More if you don't see it.)
- At the bottom left, you'll see a dropdown list labeled When Left-Clicked:
- Set the option to Pay and close the editing window.