OsSetSpeed

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
(Script change)
m (Correcting the script)
Line 22: Line 22:
 
         if (switch = !switch)
 
         if (switch = !switch)
 
         {
 
         {
             osSetSpeed(llGetOwner(), 2.0);
+
             osSetSpeed(llDetectedKey(0), 2.0);
             llOwnerSay("Your speed in now set to 2.0");
+
             llSay(PUBLIC_CHANNEL, "Your speed in now set to 2.0");
 
         }
 
         }
 
          
 
          
 
         else
 
         else
 
         {
 
         {
             osSetSpeed(llGetOwner(), 1.0);
+
             osSetSpeed(llDetectedKey(0), 1.0);
             llOwnerSay("Your speed in now set to the default value (1.0)");
+
             llSay(PUBLIC_CHANNEL, "Your speed in now set to the default value (1.0)");
 
         }
 
         }
 
     }
 
     }

Revision as of 14:24, 24 November 2020

osSetSpeed(key ID, float SpeedModifier)
Implemented December 30, 2009 by Revolution in GIT# 87959464c9db8948bed89909913400bc2eb7524d - Rev 11850

This allows for users to speed themselves up. It multiplies the running, walking, rotating and flying of the avatar.

The default value for SpeedModifier is 1.0.

To be precise, it affects physical velocity. If you specify too large or too small number for SpeedModifier, the target will be unmovable, showing the following message in the region console:

[PHYSICS]: Got a NaN velocity from Scene in a Character

Note: As of 0.7.1.1, you can't apply float numbers to SpeedModifier (it will result in script compile error) due to the bug #5564. On 0.7.2-dev or later, you will able to do so.

Threat Level Moderate
Permissions ${OSSL|osslParcelO}ESTATE_MANAGER,ESTATE_OWNER
Extra Delay 0 seconds
Example(s)
//
// osSetSpeed Script Example
//
 
integer switch;
 
default
{
    state_entry()
    {
        llSay(PUBLIC_CHANNEL, "Touch to see osSetSpeed usage.");
    }
 
    touch_start(integer number) 
    {
        if (switch = !switch)
        {
            osSetSpeed(llDetectedKey(0), 2.0);
            llSay(PUBLIC_CHANNEL, "Your speed in now set to 2.0");
        }
 
        else
        {
            osSetSpeed(llDetectedKey(0), 1.0);
            llSay(PUBLIC_CHANNEL, "Your speed in now set to the default value (1.0)");
        }
    }
}
Personal tools
General
About This Wiki