User:Damian Darkwyr

From Second Life Wiki
Revision as of 07:37, 20 January 2011 by Damian Darkwyr (talk | contribs)
Jump to navigation Jump to search

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>