// SPDX-License-Identifier: MIT // Copyright (c) 2026 Incoprea // Notice with an expiry time // Not compiled or tested in-world // Setup: Edit NOTICE and LIFETIME. Touch as owner to start a notice session. // Stop / restore: Disable or remove the script, then run Clear floating text in the same prim. Stored hover text survives script removal. // Notes: Reset cancels the countdown and clears the notice. Timer delays may postpone clearing; do not use this for access enforcement. // License: see LICENSE in this distribution. // Original Incoprea example. MIT. string NOTICE="Workshop starting soon"; integer LIFETIME=300; integer deadline; default { state_entry() { llSetText("",ZERO_VECTOR,0); } touch_start(integer touches) { if(llDetectedKey(0)!=llGetOwner())return; if(LIFETIME<1 || LIFETIME>86400) { llOwnerSay("Use a lifetime from 1 to 86400 seconds."); return; } deadline=llGetUnixTime()+LIFETIME; llSetText(NOTICE,<1,0.9,0.7>,1); llSetTimerEvent(1); } timer() { if(llGetUnixTime()>=deadline) { llSetText("",ZERO_VECTOR,0); llSetTimerEvent(0); llOwnerSay("Notice expired."); } } changed(integer flags) { if(flags & CHANGED_OWNER)llResetScript(); } }