User:Damian Darkwyr
Revision as of 07:37, 20 January 2011 by Damian Darkwyr (talk | contribs)
I made these contributions.... lol
Specific Contents Giver
random giver script
<lsl> /*Hippo Vendor Crowd Discount Plugin by Damian Darkwyr
* *Create prim. *Place this script inside prim. *Link this prim to your Hippo Vendor *DONE */
float setting = 0.5;//change this to effect the amount of discount. it will be 0.5*0.numberofscanned avatars integer i; integer fil; list keys; key buyer; default {
state_entry() { llSetText("Earn a (0.5*x) discount for each person you get within 25m of this vendor when you make your purchase.",<1,1,1>,1); llRequestPermissions(llGetOwner(),PERMISSION_DEBIT); } run_time_permissions(integer p) { if(p & PERMISSION_DEBIT) { }else { llResetScript(); } } link_message(integer s,integer r,string str,key id) { if(r == -147900) { list d = llParseString2List(str,["^"],[]); buyer = (key)llList2String(d,0); llSetObjectDesc(llList2String(d,2)); llSensor("","",AGENT,25,PI); } } sensor(integer x) { keys = []; i = 0; do { fil = llListFindList(keys,[(string)llDetectedKey(i)]); if(fil == -1) { keys += [(string)llDetectedKey(i)]; } i++; }while(i < x); string avcount = "0."+(string)llGetListLength(keys); float pS = setting * (float)avcount; if(pS >= 0.86)pS = 0.85; integer pricepaid = (integer)llGetObjectDesc(); float client_rake = (float)pricepaid * pS; integer owner_rake = pricepaid - (integer)client_rake; pricepaid = pricepaid - owner_rake; //llOwnerSay((string)pricepaid); llInstantMessage(buyer,"thank you for bringing a crowd. Here is you discount."); llGiveMoney(buyer,pricepaid); } no_sensor() { }
} </lsl>