DONTSITONME
From OpenSimulator
(Difference between revisions)
(New page: default { state_entry() { llSetTimerEvent(25); llSitTarget(<0,0,0.1f>,<0,0,0,1>); llSay(0,"Dont sit on me!"); } changed(integer how) { ...) |
|||
| (6 intermediate revisions by 5 users not shown) | |||
| Line 1: | Line 1: | ||
| − | + | __NOTOC__ | |
| − | + | {{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. | |
| − | llSetTimerEvent(25); | + | 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. |
| − | llSitTarget(<0,0,0. | + | |
| − | llSay( | + | <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]] | ||
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"); } }