DONTSITONME
From OpenSimulator
(Difference between revisions)
(4 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
__NOTOC__ | __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. | ||
+ | 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"); } }