| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
should in theory never happen), don't add the NPC to the npc list but return UUID.Zero instead.
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| | |
http://opensimulator.org/mantis/view.php?id=5869
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
|
|/
|
|
|
|
|
|
| |
presence and population of m_avatars.
This is required to stop a race where the SensorRepeat module can detect an NPC avatar before m_avatars is populated.
Extending the lock is the easiest to understand solution rather than getting complicated with null checks.
Hopefully resolves http://opensimulator.org/mantis/view.php?id=5872
|
|
|
|
|
|
| |
accurately reflects the data sent by the viewer. Add times bans and the
expiration of timed bans.
Warning: Contains a Migration (and nuts)
|
|
|
|
|
| |
This allows NPCs to be sensed as agents by LSL sensors rather than as a specific NPC type (which is currently an OpenSimulator-only extension).
Wiki doc on this and other recent NPC functions will follow soon
|
|
|
|
| |
Support for viewer side of telehub management. Can manupulate Telehubs and SpawnPoints from the viewer estate managemnt tools. This is a work in progress and does not yet persist or affect teleport routing.
|
| |
|
|
|
|
| |
This is being done outside the npc module since the check is meaningless for region module callers, who can fake any id that they like.
|
|
|
|
| |
methods and expose on interface for external calls.
|
|
|
|
| |
owner, can be destroyed only by the owner and only the owner can save their appearance. Added "NPC" as a flag to llSensor to sense NPCs and exclude them from "AGENT" results.
|
|
|
|
| |
IsColliding
|
| |
|
|
|
|
|
|
|
|
|
| |
it's live before sending other data.
This means that avatar/appearance data of other avatars and scene objects for a client will be sent after the ack rather than possibly before.
This may stop some avatars appearing grey on login.
This introduces a new OpenSim.Framework.ISceneAgent to accompany the existing OpenSim.Framework.ISceneObject and ISceneEntity
This allows IClientAPI to handle this as it can't reference OpenSim.Region.Framework.Interfaces
|
|
|
|
|
|
| |
Curiously, a Vector3.ToString() will not display the last two places of the float. In this case, the failure of
the assertion would confusingly report Expected: <0, 0, 0.8454993> But was: <0, 0, 0.8454993> when actual Z figure is 0.845499337
Should fully address http://opensimulator.org/mantis/view.php?id=5779
|
| |
|
| |
|
| |
|
|
|
|
| |
packet per prim. More to come as we change to make use of this.
|
|
|
|
|
|
|
|
| |
This is to partially address http://opensimulator.org/mantis/view.php?id=5769
We don't need to call SP.HandleAgentSit() again if we are within 10m since the autopilot won't trigger.
By calling it twice, the position of the sitting NPC was wrongly adjusted, ending up near <0,0,0>.
However, this change does mean that NPCs further than 10m away will not attempt to autopilot to the prim, though this code was broken anyway (is actually a different mechanism to normal NPC movmeent).
Hopefully this can be addressed soon.
|
|
|
|
| |
CreateNotecardAsset()
|
|
|
|
| |
scene presence by client ID.
|
|
|
|
| |
without a getter
|
|
|
|
| |
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 :)
|
|
|
|
| |
sends entity updates (including presence ones), not just prims.
|
|
|
|
| |
converted back and forth between ScenePresence and IClientAPI. More to be done still.
|
|
|
|
| |
This is moved into ScenePresence for now as a general facility
|
|
|
|
|
|
|
|
| |
used by Autopilot coming from the client side.
I thought that I had implemented this but must have accidentally removed it.
Adds a regression test to detect if this happens again.
Temporarily disables automatic landing of NPC at a target. Will be fixed presently.
|
|
|
|
|
|
|
| |
This stops the npc walking backwards if the target is directly behind.
This means that the npc no longer returns to its original rotation once movement has finished.
If you want this behaviour, please store and reset the original rotation after movement.
This is somewhat to address http://opensimulator.org/mantis/view.php?id=5678
|
| |
|
|
|
|
| |
This is overkill for some tests since they dont' need all the modules, but I think the gain in code readability is worth it
|
|
|
|
| |
attachment and npc tests
|
|
|
|
| |
These should be identical. However, the item isn't available when rezzing npc attachments.
|
| |
|
|
|
|
|
|
|
| |
The approach here, as in other parts of OpenSim, is to return a copy of the list rather than the attachments list itself
This prevents callers from forgetting to lock the list when they read it, as was happening in various parts of the codebase.
It also improves liveness.
This might improve attachment anomolies when performing region crossings.
|
|
|
|
| |
This adds an incomplete IScenePresence to match ISceneEntity
|
|
|
|
|
| |
This meant punching in another AddUser() method in IUserManagement to do a direct name to UUID associated without the account check (since NPCs don't have accounts).
May address http://opensimulator.org/mantis/view.php?id=5645
|
|
|
|
|
|
|
| |
removed from the scene.
This is done by introducing a PresenceType enum into ScenePresence which currently has two values, User and Npc.
This seems better than a SaveAttachments flag in terms of code comprehension, though I'm still slightly uneasy about introducing these semantics to core objects
|
|
|
|
|
|
| |
previous attachments from the scene.
Addresses http://opensimulator.org/mantis/view.php?id=5636
|
|
|
|
| |
status, rather than remaining silent if it was already on/off
|
|
|
|
| |
textures (which are already stored permanently)
|
|
|
|
| |
Needed to hook up the Close() function in the NPCAvatar IClientAPI implementation, which [unfortunately] is still needed
|
| |
|
|
|
|
|
|
| |
can just use the currently set Rotation
looks like I spoke to soon about eliminating jerkiness on "go here"/autopilot. It's still there.
|
|
|
|
| |
eliminate the second setting in AddNewMovement()
|
|
|
|
|
|
| |
after finishing their movement. This also fixes judder after an avatar has finished "go here"/autopilot movement in a viewer.
This meant reseting the SP.AgentControlFlags since the Animator uses these to determine the correct default animation.
|
|
|
|
|
|
|
| |
Default for this function is now not to automatically land.
This allows better control by scripts when an avatar is going to be landing on a prim rather than the ground.
Stopping the avatar involves faking a collision, to avoid the pid controller making it overshoot.
A better approach would be to gradually slow the avatar as we near the target
|
|
|
|
|
| |
this is to allow walking on prims. it will be up to the script writer to be sure that there is a continuous path.
currently implemented in osNpcMoveToTarget(), but none of this is final.
|