User:Fox Diller/GiftCardSecurity
<lsl> // House of Nyla's Gift Certificate Sub_System // 2006 by Crystal Studio // Remember kids, go hunting with Peter Rose for a shot in the dark!
// Main Attributes to Security -- The person who this gift cert will go to FOREVA // Who issued, and is reponsible for the issuance of the pretty cards!! key ISSUER_KEY = "42047785-d5d1-49e5-b2ca-743753207934"; string ISSUER_NAME = "Nyla Cheeky";
// The secret passphrase to utter in a silent IM to uniquely id the card. Keep it kinda short... string PASSPHRASE = "XYZ123";
// The price that this cert will be for... must just be numbers. No decimal, or nuffing... integer PRICE = 2500;
// Set the nice new formated price...-- I have to declare it here if I wanna use it everywhere else... string FORMATTED_PRICE;
// Neat function I wrote while stoned string llNumberFormat(integer number) {
string output;
integer x;
integer z;
string numberString = (string)number;
integer numberStringLength = llStringLength(numberString);
if ((numberStringLength % 3) == 2) z = 1;
else if ((numberStringLength % 3) == 0) z = 2;
for(x=0;x<numberStringLength;x++)
{
output += llGetSubString(numberString, x, x);
if ((x % 3) == z && x != (numberStringLength - 1))
output += ",";
}
return output;
}
// Make the object pretty setup() {
// Set the nice new formated price...
FORMATTED_PRICE = llNumberFormat(PRICE);
// Make the object's name all pretty.
llSetObjectName("www.HouseOfNyla.com - L$"+FORMATTED_PRICE+" gift certificate");
llSetObjectDesc("www.HouseOfNyla.com Gift Certificate System - Ohhh, someone must love you!");
}
// What to tell people who are not Nyla! notOwnerSpeech() {
llSay(0, "Ho Ho Ho! Merry Christmas from the House of the Nyla!"); llSay(0, "Please, have fun spending L$"+FORMATTED_PRICE+" at our exclusive boutiques!"); llSay(0, "Remember, you must redeem this voucher with Nyla Cheeky.");
}
// MAIN() default {
state_entry()
{
setup();
notOwnerSpeech();
}
touch_start(integer total_number)
{
if (llDetectedName(0) == ISSUER_NAME && llDetectedKey(0) == ISSUER_KEY)
if (llGetOwner() == ISSUER_KEY)
llInstantMessage(ISSUER_KEY, "Hi, this is my passphrase { "+PASSPHRASE+" } and my official price is + { L$"+FORMATTED_PRICE+" }");
else
{
notOwnerSpeech();
llInstantMessage(ISSUER_KEY, "Remember! You must ask for for the user to send you this cert to get the passphrase inside...");
}
else
notOwnerSpeech();
}
on_rez(integer stater)
{
llResetScript();
}
} </lsl>