aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine/Shared/Api (unfollow)
Commit message (Collapse)AuthorFilesLines
2012-01-13Change the default osNpcCreate() to create an 'owned' npc rather than an ↵Justin Clark-Casey (justincc)1-1/+1
'unowned' one. An owned NPC is one that only the original creator can manipulate and delete. An unowned NPC is one that anybody with access to the osNpc* methods and knowledge of the avatar id can manipulate. This is to correct an oversight I made in the original reimplementation where I mistakenly assumed that avatar IDs could be treated as private. I am not anticipating that many people were deliberately making use of unowned npcs due to their insecure nature. If you do need an unowned NPC please call the new overloaded osCreateNpc() function with the option OS_NPC_NOT_OWNED.
2012-01-13Removing osNpcCreateOwned(). Please use osNpcCreate(string user, string ↵Justin Clark-Casey (justincc)3-12/+0
name, vector position, string notecard, int options) instead with option OS_NPC_CREATOR_OWNED Please note that correct option name is OS_NPC_CREATOR_OWNED not OS_NPC_CREATE_OWNED as mistakenly put in a previous commit.
2012-01-12Add osNpcCreate(string firstname, string lastname, LSL_Vector position, ↵Justin Clark-Casey (justincc)4-0/+15
string notecard, int options) variant. This will be documented soon. Options can currently be OS_NPC_CREATE_OWNED - creates a 'creator owned' avatar that will only respond to osNpc* functions made by scripts owned by the npc creator OS_NPC_NOT_OWNED - creates an avatar which will respond to any osNpc* functions that a caller has permission to make (through the usual OSSL permission mechanisms). options is being added to provide better scope for future extensibility without having to add more functions The original non-options osNpcCreate() function will continue to exist.
2012-01-12Allow all NPCs to show up on sensors as all osNpc* script methods now check ↵Justin Clark-Casey (justincc)1-6/+9
for ownership permission before executing. As per #opensim-dev irc discussion.
2012-01-12Add permissions checks for owned avatars to all other osNpc* functions.Justin Clark-Casey (justincc)1-20/+50
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.
2012-01-12refactor: Move existing npc owner checks to NPCModule.CheckPermissions() ↵Justin Clark-Casey (justincc)1-5/+1
methods and expose on interface for external calls.
2012-01-07Fix threat level setting on osNpcPlayAnimationMelanie1-1/+1
2012-01-06fix a typo "osNpcCreated" to "osNpcCreate" in OSSL threat level checknebadon1-1/+1
2012-01-06Fix some syntax issuesMelanie2-4/+4
2012-01-06Add osNpcPlayAnimation and osNpcStopAnimation which respect ownership as wellMelanie3-0/+56
2012-01-06Add osNpcCreateOwned to create an owned NPC. Those can be sensed only by the ↵Melanie5-6/+48
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.
2012-01-06Fixed llAngleBetween() to allow denormal rotationsJohn Cochran1-5/+9
2012-01-06Add script instruction count back to llRot2Euler. Other minor ↵Justin Clark-Casey (justincc)1-2/+12
formatting/doc changes.
2012-01-06Replaced llRot2Euler function.John Cochran1-18/+13
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.
2012-01-06Add ThreatLevel.NoAccess to OSSL. This allows to enable OSSL without enablingMelanie2-1/+5
any methods, even those without threat, automatically. It is for use with setups wanting to allow only specific methods to specific users.
2011-12-28Introduce a LightShare kill packet ans send it when needed. Currently onlyMelanie1-0/+1
understood by AVN v0.3
2011-12-12Cleaned up ScenePresence parameters for Flying, WasFlying, FlyingOld and ↵Dan Lake1-3/+1
IsColliding
2011-12-11Mantis 5816: osParseJSON Decoding Problemsnebadon3-191/+72
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!
2011-12-05Fix CHANGED_TEXTURE and CHANGED_COLOR.Melanie1-18/+18
2011-12-03Use agent.Animator.CurrentMovementAnimation in llGetAgentInfo() rather than ↵Justin Clark-Casey (justincc)1-1/+1
asking for a new determination
2011-12-03Rename ScenePresenceAnimator.GetMovementAnimation() -> ↵Justin Clark-Casey (justincc)1-1/+1
DetermineMovementAnimation() for better code readability
2011-11-26Add missing property to llGetLinkPrimitiveParamsBlueWall2-0/+4
2011-11-26When removing an LSL sensor for a script (e.g. through llResetScript() or ↵Justin Clark-Casey (justincc)1-1/+1
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
2011-11-03Rename ForEachAvatar back to ForEachScenePresence. The other changesDan Lake3-11/+11
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.
2011-11-03Renamed ForEachRootScenePresence to ForEachAvatar. Cleaned up calls toDan Lake3-15/+14
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.
2011-11-02Changes UpdateFlag in SOP to an enumeration of NONE, TERSE and FULL.Dan Lake1-9/+6
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.
2011-11-02Restore the recursive calling of PRIM_LINK_TARGET because the version I madeMelanie1-327/+334
breaks LINK_SET et al.
2011-11-02Some positioning fixes from AVN trunkMelanie1-1/+42
2011-11-02Streamline PRIM_LINK_TARGET, eliminating a recursion and a failure scenarioMelanie1-4/+3
2011-10-29Remove completely unused SOG.Rotation parameterJustin Clark-Casey (justincc)1-1/+1
We always use SOP.Rotation instead
2011-10-27Continuation of previous checkin. Found more places where ↵Dan Lake1-15/+9
ForEachScenePresence can be changed to ForEachRootScenePresence.
2011-10-27Added new ForEachRootScenePresence to Scene since almost every delegate ↵Dan Lake1-10/+10
passed to ForEachScenePresence checks for !IsChildAgent first. It consolidates child and root handling for coming refactors.
2011-10-26Added optional owner classes to existing OSSL agent PermissionsMichelle Argus1-6/+61
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>
2011-10-26Implementation of PRIM_OMEGA, but only for settingSignpostMarv Martin2-4/+18
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2011-10-26Implementing PRIM_LINK_TARGET, but only for setting paramsSignpostMarv Martin2-4/+14
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2011-10-22Add case to Lightshare/WindlightBlueWall1-0/+3
Thanks thomax for a patch to add handling for Sun/Moon pos.
2011-10-19Renamed and rearranged AvatarFactoryModule to eliminate redundant lookups of ↵Dan Lake1-1/+1
scene presence by client ID.
2011-10-19Add "show scripts" command to show all scripts currently known to the script ↵Justin Clark-Casey (justincc)1-2/+0
engine in the current region. Also added synonym of "scripts show"
2011-10-17refactor: Use SOP.SitTargetAvatar instead of calling a special ↵Justin Clark-Casey (justincc)1-1/+1
GetAvatarOnSitTarget() which returned exactly the same thing
2011-10-17rename OS_NPC_SIT_IMMEDIATE to OS_NPC_SIT_NOW since it's shorter and more ↵Justin Clark-Casey (justincc)1-1/+1
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 :)
2011-10-17Implement osNpcStand(<npc-id>)Justin Clark-Casey (justincc)3-0/+17
Allows you to stand an NPC that has sat.
2011-10-17Implement osNpcSit(). This is still in development so don't trust itJustin Clark-Casey (justincc)4-0/+19
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 :)
2011-10-12Get rid of some traces of the old pre-ROBUST grid architecture configJustin Clark-Casey (justincc)1-2/+0
2011-10-11osSetParcelDetails - PARCEL_DETAILS_CLAIMDATEPixel Tomsen2-21/+32
this new flag set parcels claim date value 0 for this flag set current unixstamp http://opensimulator.org/mantis/view.php?id=5725
2011-10-10Convert getLastReportedSimFPS() and getLastReportedSimStats() into more ↵Justin Clark-Casey (justincc)2-2/+2
idiomatic LastReportedSimFPS and LastReportedSimStats on SimStatsReporter
2011-10-10refactor: have lsl and ossl interrogate scene.StatsReporter directly rather ↵Justin Clark-Casey (justincc)2-2/+2
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
2011-10-04Removed all refs to IClientAPI from IAttachmentsModule. Separated client ↵Dan Lake1-1/+1
handlers for attachments to call public interface and rearranged module file into sections
2011-10-03Removed redundant code in AttachmentsModule and simplified interfaces which ↵Dan Lake1-2/+1
converted back and forth between ScenePresence and IClientAPI. More to be done still.
2011-10-04trival tweak to trigger the continuous integration systemJustin Clark-Casey (justincc)1-1/+1
2011-10-04Return NULL_KEY from llGetTexture if a non-existent face is indicated, ↵Justin Clark-Casey (justincc)1-1/+1
rather than "" As per http://wiki.secondlife.com/wiki/LlGetTexture