| Commit message (Collapse) | Author | Files | Lines |
|
Returns the amount of health (in an integer) that an avatar has left in the scene.
If an avatar is not found or safe is enabled on a region, -1 is returned.
Example usage:
default
{
touch_end(integer _t)
{
key agentID = llDetectedKey(0);
osCauseDamage(agentID, 50);
llSay(0, llKey2Name(agentID) + " has " + (string)osGetHealth(agentID) + "% health left.");
}
}
|
|
Signed-off-by: Melanie <melanie@t-data.com>
|
|
|
|
if it is a UUID. The function is osIsUUID().
Thanks SignpostMarv!
|
|
another avatar in the scene.
Very useful in serious game/environment scenarios where its only allowed for trusted creators.
Threat level Severe
|
|
Allow NPCS to touch obects.
|
|
This works like osForceAttachToAvatar() but allows an object to be directly specified from the script object's inventory rather than forcing it to be rezzed in the scene first.
Still only attaches objects to the owner of the script.
This allows one to bypass the complicated co-ordination of first rezzing objects in the scene before attaching them.
Threat level high.
|
|
osNpcSay(UUID npc, string message) left untouched
New functions:-
osNpcSay(UUID npc, int channel, string message)
osNpcShout(UUID npc, int channel, string message)
osNpcWhisper(UUID npc, int channel, string message)
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
|
|
These behave identically to llAttachToAvatar() and llDetachFromAvatar() except that they do not enforce the PERMISSION_ATTACH check
Intended for use in completely controlled dedicated environments where these checks are more a UI hinderance than a help.
Threat level high.
|
|
originally proposed in SL Jira (https://jira.secondlife.com/browse/SVC-244).
|
|
osEjectFromGroup(userID) that invite/eject users to/from groups the object containing the script is set to. These functions also work for closed groups.
|
|
This allows one to get description data for a given prim inventory item.
Thanks MarcelEdward and GuduleLapointe!
|
|
|
|
are osReplaceString(string source, string patter, string replace, integer count, integer start)
The count parameter specifies the total number of replacements to make, -1 makes
all replacements.
|
|
belongs to an NPC in the region. FALSE if not or if the NPC module isn't present.
|
|
NPC, the npc's own key for an 'unowned' NPC and NULL_KEY is the input key was not an npc.
llGetOwnerKey() could also be extended but this does not allow one to distinguish between an unowned NPC and some other result (e.g. 'no such object' if NULL_KEY is the return.
Also, any future extensions to LSL functions by Linden Lab are unpredictable and OpenSim-specific extensions could clash.
|
|
Add osGetHomeURI function to the family of osGetGrid* functions. Returns the SRV_HomeURI setting from the [LoginService] configuration.
|
|
Add function osGetGridCustom to take an argument for the GridInfo kpv to retrieve from the GridInfoService
|
|
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.
|
|
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.
|
|
|
|
|
|
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.
|
|
any methods, even those without threat, automatically. It is for use with
setups wanting to allow only specific methods to specific users.
|
|
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!
|
|
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 :)
|
|
|
|
|
|
|
|
|
|
Rotation works if done around the z axis. Anything else leads to random results.
|
|
region to a notecard
This is separate from osOwnerSaveAppearance() so that owner saves can be allowed without allowing arbitrary avatar saves
|
|
|
|
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.
|
|
|
|
yet ready for user use.
Adds regression test.
|
|
storage.
This works by serializing and deserializing NPC AvatarAppearance to a notecard in the prim inventory and making the required baked textures permanent.
By using notecards, we avoid lots of awkward, technical and user-unfriendly issues concerning retaining asset references and creating a new asset type.
Notecards also allow different appearances to be swapped and manipulated easily.
This also allows stored NPC appearances to work transparently with OARs/IARs since the UUID scan will pick up and store the necessary references from the notecard text.
This works in my basic test but is not at all ready for user use or bug reporting yet.
|
|
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
|
|
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
|
|
|
|
Added the following replacement functions for compliance to the OSSL standards stated on the wiki:
osGetTerrainHeight
osSetTerrainHeight
osGetSunParam
osSetSunParam
osSetPenColor
The functions that do not comply to the standard give a warning when used but work normally otherwise.
The graphics primitive drawing command "PenColor" has also been added as well as dynamic texture parameter "bgcolor" as an alternative to "bgcolour".
The following two functions have been renamed because they are not enabled yet aynway:
osWindParamSet => osSetWindParam
osWindParamGet => osGetWindParam
|
|
This allows an input unix time to be converted to an llGetTimeStamp() format.
Thanks Thomax.
|
|
This provides the same functionality as osTeleportAgent but without the griefing potential. Region owners need not be concerned about the use of this function because it only allows to do what is already possible with the world map.
The intended use is with HUDs. For example, a list of (hypergrid) destinations could be made available for quick access.
Signed-off-by: Melanie <melanie@t-data.com>
|
|
Set the projection parameters in the host prim ...
osSetProjectionParam(bool Enabled,
key TextureMaskUUID,
float FOV,
float Focus,
float Ambiance);
Set the projection parameters in a target prim ...
osSetProjectionParam(ikey target uuid,
bool Enabled,
key TextureMaskUUID,
float FOV,
float Focus,
float Ambiance);
Threat Level very high
Signed-off-by: Melanie <melanie@t-data.com>
|
|
|
|
list osGetPrimititveParams(key prim, list rules);
osSetPrimitiveParams(key prim, list rules);
|
|
joins parcels in an area, osParcelSubdivide splits parcels in an area, osParcelSetDetails sets parcel name, description, owner and group owner. Join and Subdivide methods in LandChannel are exposed.
|
|
|
|
Signed-off-by: Melanie <melanie@t-data.com>
|