Jump to content
ainst Composer

Hello! Scripter Wanted! :: SOLVED ::

Recommended Posts

Hello! need a scripter.
It is necessary to remake the script unpacker script into a two-page hud. on the first page, click gives out the content, turns over to the other side with 5 buttons of social networks. You can either click on these buttons to go to the links or click on an empty space on the hud to remove the hud. possible mesh (8 faces). another layer for the animated texture background - a separate script already exists. The unpacker itself already contains the functions for the invitation to the group, delivery confirmation. for reward. please respond! thanks!

Untitled.png



integer delivery = 0;

///////////////////// CONFIGURATION //////////////////

key your_uuid = "00000000-0000-0000-0000-000000000000"; // type your key UUID here
string PRODUCT_NAME = "Product name here";
string PRODUCT_VERSION = "Version numbers here";
string CREATED_BY = "Creator name here";

string PRODUCT_NAME_TEXT = "Product description here";

string TOUCH_TEXT = "Click Me To Unpack!";

string UNPACKING_TEXT = "Unpacking...please wait";

string SENDING_ITEMS_TEXT = "Unpacked, Now Sending Items...";

string UNAUTHORISED_TEXT = "You are not allowed to unpack this.";

string GOOD_BYE_TEXT = "Thank you for your Purchase ! Self-Destruction";

string group_uuid = "00000000-0000-0000-0000-000000000000"; // type the key group here UUID
string join_message = "Click here to join our support group:"; // message that appears in the local chat
string content = "";

integer SEND_ON_REZ = FALSE;//when set to false, you need to click the box to unpack

integer OWNER_ONLY = TRUE;// set to true only the owner can unpack the package

integer DIE_AFTER_UNPACK = FALSE;//when set to to true,the package will destroy after it given its inventory

//Under this line you can enable or disable the floating texts above your box.
integer FLOAT_TEXT_SHOW_PRODUCT_NAME = TRUE;
integer FLOAT_TEXT_SHOW_PRODUCT_VERSION = TRUE;
integer FLOAT_TEXT_SHOW_CREATED_BY = TRUE;

// Here you can change the floating text color.

vector TEXT_COLOR = <0.0,1.0,1.0>;

//Beyond this point i would not recommend modifications, and there for that is on own risk.
DEFINITION_REZ_EFFECTS()
{
//DEFINITION_Text(FALSE);
// Plus whatever else
}

DEFINITION_Text(integer show)
{
if(show == TRUE)
{
string title;
if(FLOAT_TEXT_SHOW_PRODUCT_NAME == TRUE)
{
title += PRODUCT_NAME_TEXT+PRODUCT_NAME+"\n";
}
if(FLOAT_TEXT_SHOW_PRODUCT_VERSION == TRUE)
{
title += PRODUCT_VERSION+"\n";
}
if(FLOAT_TEXT_SHOW_CREATED_BY == TRUE)
{
title += CREATED_BY+"\n";
}
title+=TOUCH_TEXT;
llSetText(title, TEXT_COLOR, 1.0);
}
else if(show == FALSE)
{
llSetText("", ZERO_VECTOR, 0);
}
}

DEFINITION_SEND_ITEMS(key id)
{
integer i = 0;
integer items = llGetInventoryNumber(INVENTORY_ALL);
string name;
list itemslist;
string complete;
do
{
complete = (string)(i*100/items);
llSetText(UNPACKING_TEXT+"\n"+complete+"% Complete", TEXT_COLOR, 1.0);
name = llGetInventoryName(INVENTORY_ALL, i);
if(llStringLength(name) > 0 && name != llGetScriptName())
{
itemslist += name;
}
}while(i++<items);
llSetText(SENDING_ITEMS_TEXT+"\nMay take "+(string)((integer)(3*llGetRegionTimeDilation()))+" seconds till you recieve.", TEXT_COLOR, 1.0);
string FOLDER_NAME = PRODUCT_NAME+" "+PRODUCT_VERSION;
llGiveInventoryList(id, FOLDER_NAME, itemslist);
llInstantMessage(id, "The folder is named "+FOLDER_NAME+" in your inventory");
}
default
{
state_entry()
{
llSetObjectName(PRODUCT_NAME+" "+PRODUCT_VERSION+" (Boxed)");
DEFINITION_Text(TRUE);
}
on_rez(integer a)
{
if(delivery == 0){
delivery = 1;
llInstantMessage(your_uuid,llGetObjectName()+ " Rezzed by "+ llKey2Name(llGetOwner()));
llOwnerSay( join_message + " secondlife:///app/group/" + group_uuid + "/about");
// send invite to group as a link for the recipient to click

content = llKey2Name( llGetOwner()) + " has rezzed " + llGetObjectName() ;
}
DEFINITION_REZ_EFFECTS();
if(SEND_ON_REZ == TRUE)
{
DEFINITION_SEND_ITEMS(llGetOwnerKey(llGetKey()));
}
else
{
DEFINITION_Text(TRUE);
}
}
touch_start(integer d)
{
if(OWNER_ONLY == TRUE)
{
if(llDetectedKey(0) == llGetOwnerKey(llGetKey()))
{
DEFINITION_SEND_ITEMS(llGetOwnerKey(llGetKey()));
if(DIE_AFTER_UNPACK == TRUE)
{
llSetText(GOOD_BYE_TEXT, TEXT_COLOR, 1.0);
llSleep(3);
llDie();
}
DEFINITION_Text(TRUE);
}
else
{
llInstantMessage(llDetectedKey(0), UNAUTHORISED_TEXT);
}
}
else if(OWNER_ONLY == FALSE)
{
DEFINITION_SEND_ITEMS(llGetOwnerKey(llGetKey()));
if(DIE_AFTER_UNPACK == TRUE)
{
llSetText(GOOD_BYE_TEXT, TEXT_COLOR, 1.0);
llSleep(3);
llDie();
}
DEFINITION_Text(TRUE);
}
}
} 

 

Edited by ainst Composer
solved

Share this post


Link to post
Share on other sites
47 minutes ago, Wulfie Reanimator said:

Seems super simple, you can send me an IM inworld. I'll be online within 30 mins. 

Hello! I sent you messages and a notecard. just to make sure you got my message.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×