Update board to current code

This commit is contained in:
zontreck 2024-08-13 21:18:07 -07:00
parent a1a93ea994
commit ed7b3b5d15
15 changed files with 924 additions and 898 deletions

View file

@ -18,7 +18,7 @@ MainMenu(key kAv)
if(g_kLeasedTo == NULL){
lAppend += ["Lease"];
}else if(g_kLeasedTo == kAv || iAdmin || g_kOwner == kAv){
lAppend += ["End Lease", "Renew", "Set Picture", "Set Owner", "TransferLease", "Set Name", Checkbox(g_iWhiteFrame, "White Frame"), Checkbox(g_iLogo, "Logo"), Checkbox(g_iCustomTextColor, "CustomTxt"), "SetTxtC", "*RESET*"];
lAppend += ["End Lease", sSetor((g_iFlags&4)," ", "Renew"), "Set Picture", "Set Owner", sSetor ((g_iFlags & 2),"TransferLease", " "), "Set Name", Checkbox(bool(g_iMask & MASK_WHITEFRAME), "White Frame"), Checkbox(bool(g_iMask & MASK_LOGO), "Logo"), Checkbox(bool(g_iMask & MASK_CUSTOM_TEXT_COLOR), "CustomTxt"), "SetTxtC", "*RESET*"];
sAppend += "\n* CustomTxt, and SetTxtC relate to custom text colors.";
}
@ -31,6 +31,7 @@ MainMenu(key kAv)
Menu(g_kAuthorized, MAIN_MENU_TEXT+sAppend, MAIN_MENU_BUTTONS+lAppend, "menu~main");
}
Menu(key kAv, string sText, list lButtons, string sIdent)
{
llMessageLinked(LINK_THIS, LINK_MENU_DISPLAY, llDumpList2String([sIdent, "TRUE", sText, llDumpList2String(lButtons, "~")], "|"), kAv);
@ -50,8 +51,11 @@ string StripResident(string a)
return llDumpList2String(lParam, " ");
}
Text(){
string sColor = GetColorStr(g_iWhiteFrame);
string sColor = GetColorStr(bool(g_iMask & MASK_WHITEFRAME));
g_sName = StripResident(g_sName);
if(g_sPreferredName == ""){
if(g_sDisplayName != g_sName)
@ -63,7 +67,7 @@ Text(){
CleanInventory()
{
list lDefaults = ["Board [ZNI]", "Dialog Module", "Text", "FFF Stall Board Flash Drive [ZNI]", "Update Module [ZNI]"];
list lDefaults = ["Board [ZNI]", "Board Menu [ZNI]", "Dialog Module", "Text", "Stall Board Flash Drive [ZNI]", "Update Module [ZNI]", "Board Notifier [ZNI]"];
integer i=0;
integer end = llGetInventoryNumber(INVENTORY_ALL);
for(i=0;i<end;i++){
@ -93,4 +97,76 @@ string GetColorStr(integer iWhite)
if(iWhite)return "0,0,0.5";
else return "white"; // black frame
}
}
GetOnline()
{
UpdateDSRequest(NULL, llRequestAgentData(g_kLeasedTo, DATA_ONLINE), SetDSMeta(["online"]));
}
GetName()
{
UpdateDSRequest(NULL, llRequestUsername(g_kLeasedTo), SetDSMeta(["name"]));
}
GetDisplayName()
{
UpdateDSRequest(NULL, llRequestDisplayName(g_kLeasedTo), SetDSMeta(["displayname"]));
}
SetLease(key i)
{
g_kLeasedTo = i;
g_iExpireAt = llGetUnixTime() + THIRTY_DAYS;
llSay(0, "Leased! You will need to set the texture after reboot finishes");
SavePayload();
llSleep(2);
g_iState = mask(SET, g_iState, STATE_REBOOT_PENDING);
}
SavePayload(){
llLinksetDataWrite("lease", (string)g_kLeasedTo);
llLinksetDataWrite("texture", (string)g_kTexture);
llLinksetDataWrite("expire", (string)g_iExpireAt);
llLinksetDataWrite("owner", (string)g_kOwner);
llLinksetDataWrite("notif", (string)g_iNotification);
llLinksetDataWrite("name", g_sPreferredName);
llLinksetDataWrite("transfer", (string)g_kTransferID);
llLinksetDataWrite("transfer_expire", (string)g_iTransferTimeout);
llLinksetDataWrite("customtxtcolor", (string)g_vCustomColorText);
llLinksetDataWrite("mask", (string)g_iMask);
}
DeletePayload()
{
llLinksetDataReset();
}
RestoreFromKVP()
{
g_kLeasedTo = llLinksetDataRead("lease");
if(g_kLeasedTo==""){
g_kLeasedTo=NULL;
return;
}
g_kTexture = llLinksetDataRead("texture");
g_iExpireAt = (integer)llLinksetDataRead("expire");
g_kOwner = llLinksetDataRead("owner");
g_iMask = (integer)llLinksetDataRead("mask");
g_iNotification = (integer)llLinksetDataRead("notif");
g_sPreferredName = llLinksetDataRead("name");
g_kTransferID = llLinksetDataRead("transfer");
g_iTransferTimeout = (integer)llLinksetDataRead("transfer_expire");
g_vCustomColorText = (vector)llLinksetDataRead("customtxtcolor");
//state rebootfast;
}
RESET()
{
llLinksetDataReset();
}

View file

@ -6,7 +6,7 @@
integer g_iWaitFor = 0;
key FFF_CIRCLE_LOGO = "f063237e-429b-5e02-dbfb-8a2a69535cdc";
key CIRCLE_LOGO = "f063237e-429b-5e02-dbfb-8a2a69535cdc";
key OFFLINE_TEXTURE = "62f26398-4d32-15fb-38d8-d59e31dd0a86";
key ONLINE_TEXTURE = "69fdb503-d13b-8b21-98c9-70011db399d3";
#if DEVELOPER == 0
@ -41,7 +41,7 @@ integer g_iHaveKVP = 0;
integer g_iLastKVPTry;
string HEADER = "FFF Stall Board\n[By ZNI Creations]\nVersion 3.9.0430220029 (Apr 30, 2022)\n \n";
string HEADER = "Stall Board\n[By ZNI Creations]\nVersion 4.0.1114220156 (Nov 14, 2022)\n \n";
integer g_iAuthorized;
@ -76,4 +76,24 @@ integer g_iNotifFlags; // (may be incompatible!)
string g_sLeasedTo;
key g_kTransferDest=NULL_KEY;
key g_kTransferDest=NULL_KEY;
integer SERVER_CHANNEL = 0x9F1C;
integer g_iState;
integer g_iFlags;
integer g_iPricePerDay;
integer g_iBoot;
integer g_iMask = 1;
integer MASK_LOGO = 1;
integer MASK_CUSTOM_TEXT_COLOR = 2;
integer MASK_WHITEFRAME = 4;
integer STATE_REBOOT_PENDING =1;
integer STATE_REBOOT_FAST =2;