| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The original function suffered from unexpected results due to rounding
errors. An error of only 1 or 2 ulps would cause the code to not detect
a singularity at Y rotation +/- PI/2 and take the non-singularity code
path. The replacement code does not suffer from wildly inaccurate
results at the +/- PI/2 singularity. The check in the code for the
singularity isn't strictly needed, but gives more consistent results
At the singularity, the X and Z rotations add. The if check simply
forces the X rotation to be zero so the entirety of the X+Z rotation is
carried by Z.
Additionally, the test code has been updated to include test cases that
caused the old code to fail. The test algorithm is also updated to
perform a more meaningful test. The original code checked if the values
against expected values. This could fail at +/- PI rotations since a
rotation around an axis by PI causes the identical effect as a rotation
by -PI. The new test code checks that the returned angles can be used
to recreate a quaternion that causes the same rotation.
|
|
|
|
|
| |
any methods, even those without threat, automatically. It is for use with
setups wanting to allow only specific methods to specific users.
|
|
|
|
| |
understood by AVN v0.3
|
|
|
|
| |
IsColliding
|
|
|
|
|
|
|
| |
osParseJSON uses hand-crafted decoding that has two issues
* does not seem to handle top-level JSON lists
* does not seem to handle unicode text
thanks otakup0pe!
|
| |
|
|
|
|
| |
asking for a new determination
|
|
|
|
| |
DetermineMovementAnimation() for better code readability
|
|\ |
|
| |
| |
| |
| |
| |
| | |
state change), don't also remove sensors for other scripts in the same prim.
Hopefully fixes http://opensimulator.org/mantis/view.php?id=4448 and http://opensimulator.org/mantis/view.php?id=4452
|
| | |
|
|/ |
|
|
|
|
|
|
|
| |
scripts from the appdomain in XEngine.
All the other actions (script state save, etc.) still occur.
This makes shutdown where there are many scripts vastly quicker.
|
|
|
|
|
|
| |
from previous commit which sort out which iterator is used are left
intact. A discussion is needed as to what constitutes an avatar vs a
ScenePresence.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the 3 iteration functions so more of them are using the correct
iteration for the action they are performing. The 3 iterators that seem
to fit all actions within OpenSim at this time are:
ForEachAvatar: Perform an action on all avatars (root presences)
ForEachClient: Perform an action on all clients (root or child clients)
ForEachRootClient: Perform an action on all clients that have an avatar
There are still a dozen places or so calling the old
ForEachScenePresence that will take a little more refactoring to
eliminate.
|
|\ |
|
| |
| |
| |
| | |
breaks LINK_SET et al.
|
| | |
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
UpdateFlag is now referenced/used only within SOP and SOG. Outsiders are
using ScheduleFullUpdate, ScheduleTerseUpdate or ClearUpdateSchedule on
SOP consistently now. Also started working toward eliminating those
calls to ScheduleFullUpdate, ScheduleTerseUpdate or ClearUpdateSchedule
from outside SOP in favor of just setting properties on SOP and let SOP
decide if an update should be scheduled. This consolidates the update
policy within SOP and the client rather than everywhere that makes
changes to SOP. Some places forget to call update while others call it
multiple times, "just to be sure".
UpdateFlag and Schedule*Update will both be made private shortly.
UpdateFlag is intended to be transient and internal to SOP so it has
been removed from XML serializer for SOPs.
|
|
|
|
| |
We always use SOP.Rotation instead
|
|
|
|
| |
ForEachScenePresence can be changed to ForEachRootScenePresence.
|
|
|
|
| |
passed to ForEachScenePresence checks for !IsChildAgent first. It consolidates child and root handling for coming refactors.
|
|
|
|
| |
This causes false positives if a simulator has more than 1 region and the current region is 'root' since this sends the command separately to each region and each region has its own XEngine
|
|
|
|
|
|
| |
PARCEL_GROUP, PARCEL_OWNER, ESTATE_MANAGER and REGION_OWNER can be combined with the existing agent uuid option to limit ossl functions to agents and owner classes.
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
|
|
|
|
| |
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
|
|
|
|
| |
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
|
|
|
|
| |
Thanks thomax for a patch to add handling for Sun/Moon pos.
|
|\ |
|
| |
| |
| |
| |
| |
| | |
a single script by giving the script item id (which can be found via scripts show).
Not an ideal way to do this on a region with many scripts. Needs refinement later.
|
|/
|
|
| |
scene presence by client ID.
|
|
|
|
|
| |
These will stop all running scripts and start all stopped scripts respectively.
A stopped script does not save any events for later processing.
|
| |
|
|
|
|
|
| |
On resume, we need to place requeue the script for event processing if there are any events on the queue.
Also need to do this under m_Script lock in order to avoid a race
|
|
|
|
|
| |
These aim currently to suspend and resume all scripts.
However, resume isn't currently working due to what looks like a bug in resume functionality itself.
|
|
|
|
| |
The item ID is the one required for any script manipulation on the command line, so I think it's somewhat more useful to show this bearing in mind the limited space available
|
| |
|
|
|
|
|
|
| |
engine in the current region.
Also added synonym of "scripts show"
|
|
|
|
| |
GetAvatarOnSitTarget() which returned exactly the same thing
|
|
|
|
|
|
|
|
| |
understandable
This makes something like osNpcSit(npc, llGetKey(), OS_NPC_IMMEDIATE) now become
osNpcSit(npc, llGetKey(), OS_NPC_SIT_NOW);
This is why it's in development :)
|
|
|
|
| |
Allows you to stand an NPC that has sat.
|
|
|
|
|
|
|
|
|
| |
Format is osNpcSit(<npc-uuid>, <target-uuid>, OS_NPC_SIT_IMMEDIATE)
e.g. osNpcSit(npc, llGetKey(), OS_NPC_SIT_IMMEDIATE);
At the moment, sit only succeeds if the part has a sit target set.
NPC immediately sits on the target even if miles away - they do not walk up to it.
This method is in development - it may change so please don't trust it yet.
Standing will follow shortly since that's kind of important once you're sitting :)
|
|
|
|
| |
module is disabled.
|
| |
|
|
|
|
| |
user knows why they are waiting.
|
|
|
|
|
|
|
| |
this new flag set parcels claim date
value 0 for this flag set current unixstamp
http://opensimulator.org/mantis/view.php?id=5725
|
|
|
|
| |
idiomatic LastReportedSimFPS and LastReportedSimStats on SimStatsReporter
|
|
|
|
|
|
| |
than going through scene
I know this goes against the law of demeter but I don't think it's that useful here and I'd rather get rid of nasty little wrapper methods
|
|
|
|
| |
handlers for attachments to call public interface and rearranged module file into sections
|
|\ |
|