DONTSITONME
From OpenSimulator
(Difference between revisions)
												
			m (Removed 'Template:' prefix from template includings and/or changed external-link into internal-link)  | 
			|||
| (3 intermediate revisions by 3 users not shown) | |||
| Line 1: | Line 1: | ||
__NOTOC__  | __NOTOC__  | ||
{{Quicklinks}}  | {{Quicklinks}}  | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| + | Statement: This script defines an object in the OpenSim environment that sends warning messages to the public chat channel when avatars attempt to sit on it.   | ||
| + | It sets a sit target for avatars, sets a timer event to periodically send warning messages, and triggers a warning message when an avatar sits on the object.  | ||
| + | |||
| + | <source lang="lsl">  | ||
| + | // This script defines an object that will send warning messages when sat upon.  | ||
| + | |||
| + | // Define default state  | ||
| + | default  | ||
| + | {  | ||
| + |     // State entry function called when the script starts or resets  | ||
| + |     state_entry()   | ||
| + |     {  | ||
| + |         // Set a timer event to trigger every 25 seconds  | ||
| + |         llSetTimerEvent(25.0);  | ||
| + | |||
| + |         // Set the sit target for avatars to sit on  | ||
| + |         llSitTarget(<0.0, 0.0, 0.1>, <0.0, 0.0, 0.0, 1.0>);  | ||
| + | |||
| + |         // Send a message to the public chat channel  | ||
| + |         llSay(PUBLIC_CHANNEL, "Don't sit on me!");  | ||
| + |     }  | ||
| + | |||
| + |     // Changed event handler called when something about the object changes  | ||
| + |     changed(integer how)  | ||
| + |     {  | ||
| + |         // Check if the change involves a link  | ||
| + |         if ((how & CHANGED_LINK) != 0)  | ||
| + |         {  | ||
| + |             // Check if an avatar is sitting on the sit target  | ||
| + |             if (llAvatarOnSitTarget() != "")  | ||
| + |             {  | ||
| + |                 // Send a warning message to the public chat channel  | ||
| + |                 llSay(PUBLIC_CHANNEL, "ACK! GET OFF !!!");      | ||
| + |             }  | ||
| + |         }  | ||
| + |     }  | ||
| + | |||
| + |     // Timer event handler called when the timer event triggers  | ||
| + |     timer()  | ||
| + |     {  | ||
| + |         // Send a periodic warning message to the public chat channel  | ||
| + |         llSay(PUBLIC_CHANNEL, "Please don't sit on me");      | ||
| + |     }  | ||
| + | }  | ||
| + | </source>  | ||
[[Category:Scripts]]  | [[Category:Scripts]]  | ||
Latest revision as of 02:54, 5 March 2024
Statement: This script defines an object in the OpenSim environment that sends warning messages to the public chat channel when avatars attempt to sit on it. It sets a sit target for avatars, sets a timer event to periodically send warning messages, and triggers a warning message when an avatar sits on the object.
// This script defines an object that will send warning messages when sat upon. // Define default state default { // State entry function called when the script starts or resets state_entry() { // Set a timer event to trigger every 25 seconds llSetTimerEvent(25.0); // Set the sit target for avatars to sit on llSitTarget(<0.0, 0.0, 0.1>, <0.0, 0.0, 0.0, 1.0>); // Send a message to the public chat channel llSay(PUBLIC_CHANNEL, "Don't sit on me!"); } // Changed event handler called when something about the object changes changed(integer how) { // Check if the change involves a link if ((how & CHANGED_LINK) != 0) { // Check if an avatar is sitting on the sit target if (llAvatarOnSitTarget() != "") { // Send a warning message to the public chat channel llSay(PUBLIC_CHANNEL, "ACK! GET OFF !!!"); } } } // Timer event handler called when the timer event triggers timer() { // Send a periodic warning message to the public chat channel llSay(PUBLIC_CHANNEL, "Please don't sit on me"); } }