OsSetSpeed
From OpenSimulator
(Difference between revisions)
m (It's a float not a integer) |
m (Change See Also) |
||
(7 intermediate revisions by one user not shown) | |||
Line 4: | Line 4: | ||
|delay=0 | |delay=0 | ||
|function_syntax= osSetSpeed(key ID, float SpeedModifier) | |function_syntax= osSetSpeed(key ID, float SpeedModifier) | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|description=Implemented December 30, 2009 by Revolution in GIT# 87959464c9db8948bed89909913400bc2eb7524d - Rev 11850 | |description=Implemented December 30, 2009 by Revolution in GIT# 87959464c9db8948bed89909913400bc2eb7524d - Rev 11850 | ||
Line 23: | Line 12: | ||
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: | 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'' | :''[PHYSICS]: Got a NaN velocity from Scene in a Character'' | ||
+ | |ossl_example=<source lang="lsl"> | ||
+ | // | ||
+ | // osSetSpeed Script Example | ||
+ | // Author: djphil | ||
+ | // | ||
− | + | 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 multiplied by 2.0"); | ||
+ | } | ||
+ | |||
+ | else | ||
+ | { | ||
+ | osSetSpeed(llDetectedKey(0), 1.0); | ||
+ | llSay(PUBLIC_CHANNEL, "Your speed in now multiplied by 1.0, the default value."); | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | </source> | ||
+ | |additional_info=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 [http://opensimulator.org/mantis/view.php?id=5564 #5564]. On 0.7.2-dev or later, you will able to do so. | ||
| | | | ||
}} | }} | ||
+ | == See Also == | ||
+ | * [[osSetSpeed]] | ||
+ | * [[osSetOwnerSpeed]] |
Latest revision as of 18:49, 5 December 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:
| |
Threat Level | Moderate |
Permissions | ${OSSL|osslParcelO}ESTATE_MANAGER,ESTATE_OWNER |
Extra Delay | 0 seconds |
Example(s) | |
// // osSetSpeed Script Example // Author: djphil // 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 multiplied by 2.0"); } else { osSetSpeed(llDetectedKey(0), 1.0); llSay(PUBLIC_CHANNEL, "Your speed in now multiplied by 1.0, the default value."); } } } | |
Notes | |
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. |
[edit] See Also
- osSetSpeed
- osSetOwnerSpeed