Sales Assistant Script

Thread Started By steadymobbin

2055
0
  • 30 Vote(s) - 3.17 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Rate Thread
#1
//Sales Assistant v1.3
//Do not remove the following information...

//Originally Coded by Nick Fortune - 09/01/2004
//Updated by Chaiboy Rang - 07/29/2007
//Updated by Chimera Firecaster - 05/01/2010

//This script allows you to sell items and split the profit with a partner.

//To use this script, you'll need to do the following:
// 1. Make a Vendor Sign with an image of the item(s) you are selling.
// 2. Rez a box and place the item or items being sold in the "Contents" of
// the box.
// 3. Take the box back into your inventory.
// 4. Then drag the box out of your inventory and place it in the "Contents" of // the Vendor Sign.
// 5. Along with the box, place a copy of this script in the "Contents" of
// the Vendor Sign.

//The script obtains the price of the item from the Vendor Sign's DESCRIPTION
// Remember that DESCRIPTION is found in the GENERAL tab along with the NAME
// that you assigned to the Vendor Sign (if any).

//Here's an example of how you want the DESCRIPTION to read:
// 100$ Men's Plaid Boxer Shorts

//The script will read the price from the DESCRIPTION, as long as you have
// formatted it as follows: "Price$ Name-of-Item". The dollar sign ($)
// must be there for the script to work properly. Note that the Name-of-Item
// which follows Price$ is not important to the script. That part of the
// description can be anything that you. What's important is Price$.

//In addition to indicating the price in the description, you need to enter
// two values below. FIRST, you need to enter your partner's UUID key
// If you don't know what that is, do a search on web for information
// on how to obtain it. Or you may visit:

[To see links please register here]

// for a free script to obtain an avatar's UUID key.
// SECONDLY, you need to enter the percentage of the total that you are paying
// your partner. The default percentage is 50%. You can make this whatever
// you and your partner have mutually agreed upon. Enter the value as a
// decimal. For example, if you are paying your partner 40%, enter the
// value as .40

//Note: this is a FREE script. It is given generously to the Second Life
// community without the expectation of anything in return. It may be
// distributed, but please do not charge for it. That's bad form and will
// most certainly bring bad karma to those who dishonor the kindness of others.

//-----Do Not Remove Above Header

//INFORMATION THAT YOU NEED TO ADD . . .

// 1. PUT YOUR PARTNER'S KEY IN THE NEXT LINE: where the x's are your partner's key
key gPartner = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";

// 2. PUT THE PERCENTAGE YOU WISH TO PAY YOUR PARTNER IN THE NEXT LINE
float gPercent = .50;

///----------------Don't need to change anything below this line-------------------

key gOwner;
integer gPrice;
integer gCut;
integer gPerms = FALSE;
string gObject;

default {
state_entry() {
llWhisper(0, (string)gPartner);
gOwner = llGetOwner();
list Parsed = llParseString2List(llGetObjectDesc(), ["$"], []);
gPrice = llList2Integer(Parsed, 0);
if (!gPrice) {
llInstantMessage(gOwner, "Error: Please set object description to ''price$ info about object. This only sells a object so please put clothing,r bodyparts or multiple items in a bag or box. ''. Touch to reset when ready.");
}
else {
llSetPayPrice(gPrice, [gPrice, PAY_HIDE, PAY_HIDE, PAY_HIDE]);
if (gPartner != "") {
gCut = llRound(gPrice * gPercent);
}
gObject = llGetInventoryName(INVENTORY_OBJECT,0);
llRequestPermissions(gOwner,PERMISSION_DEBIT);
}
}

on_rez(integer passed) {
if(llDetectedKey(0) != llGetOwner()) {
llResetScript();
}
}

run_time_permissions(integer type)
{
if ((type & PERMISSION_DEBIT) != PERMISSION_DEBIT) {
gPerms = FALSE;
llInstantMessage(gOwner, "I require debit permissions to function.");
llRequestPermissions(gOwner,PERMISSION_DEBIT);
}
else {
gPerms = TRUE;
llInstantMessage(gOwner, "I have aquired debit permissions from "+llKey2Name(gOwner)+".");
if ((gPrice) && (gObject != "")) {
if (gPartner != "") {
llInstantMessage(gOwner, "Selling "+gObject+" for "+(string)gPrice+"$L. [Partner receives "+(string)gCut+"$L cut.]");
}
else {
llInstantMessage(gOwner, "Selling "+gObject+" for "+(string)gPrice+"$L. [NO Partner Defined.]");
}
}
else {
llInstantMessage(gOwner, "I have permissions, but your box is missing contents or missing a price.");
llInstantMessage(gOwner, "Fix error and touch to reset when ready.");
}
}
}

touch_start(integer total_number) {
if (llDetectedKey(0) == llGetOwner()) {
llResetScript();
}
else {
llWhisper(0, gObject+" - $"+(string)gPrice+"L. Right click and pay amount to purchase.");
}
}

money(key giver, integer amount) {
if (gPerms == TRUE) {
if (amount < gPrice) {
llSay(0, gObject+" costs L$" + (string) gPrice);
llSay(0, "You paid $L"+(string)amount+", which is not enough!");
llGiveMoney(giver, amount);
}
else {
llSay(0, "Thank you for your purchase!");
llGiveInventory(giver, gObject);
if (amount > gPrice) {
llGiveMoney(giver, amount - gPrice);
}

if (gPartner != "") {
llGiveMoney(gPartner, gCut);
}
}
}
}
}
[Image: guns-bullet-shirt_recreated.jpg]
Reply




Possibly Related Threads…
Thread Author Replies Views Last Post
  Sales Assistant v1.1 YoungMoney 0 2,624 03-04-2013, 01:54 AM
Last Post: YoungMoney

Forum Jump:

1 Guest(s)
Share this:

About Second Life Copybot

Second Life CopyBot Forum is a place where you can get items for Second Life and other vitual worlds for free. With our CopyBot viewers you can export and import any content from these virtual worlds and modify them in 3D software such as Blender, 3D studio Macx etc...