From 8d4750b6d0decf4bdcaeb4dd835ddef84d934b5d Mon Sep 17 00:00:00 2001 From: Sei Lisa Date: Tue, 12 Dec 2023 16:52:45 +0100 Subject: [PATCH] Add new functions and constants --- builtins.txt | 26 +++++++++++++++++++++++++- fndata.txt | 12 ++++++++++++ lslopt/lslfuncopt.py | 12 ++++++++++++ 3 files changed, 49 insertions(+), 1 deletion(-) diff --git a/builtins.txt b/builtins.txt index 175fe8a..177e800 100644 --- a/builtins.txt +++ b/builtins.txt @@ -1,4 +1,4 @@ -// Generated by LSL2 Derived Files Generator. Database version: 0.0.20230714000; output module version: 0.0.20230603000 +// Generated by LSL2 Derived Files Generator. Database version: 0.0.20231212001; output module version: 0.0.20230603000 integer llAbs( integer val ) float llAcos( float val ) void llAddToLandBanList( key avatar, float hours ) @@ -178,6 +178,7 @@ vector llGetRegionSunDirection( ) rotation llGetRegionSunRotation( ) float llGetRegionTimeDilation( ) float llGetRegionTimeOfDay( ) +string llGetRenderMaterial( integer face ) vector llGetRootPosition( ) rotation llGetRootRotation( ) rotation llGetRot( ) @@ -239,8 +240,10 @@ void llLinkSetSoundRadius( integer link, float radius ) void llLinkSitTarget( integer link, vector offset, rotation rot ) void llLinkStopSound( integer link ) integer llLinksetDataAvailable( ) +integer llLinksetDataCountFound( string pattern ) integer llLinksetDataCountKeys( ) integer llLinksetDataDelete( string keyname ) +list llLinksetDataDeleteFound( string pattern, string pass ) integer llLinksetDataDeleteProtected( string keyname, string password ) list llLinksetDataFindKeys( string pattern, integer start, integer count ) list llLinksetDataListKeys( integer start, integer count ) @@ -399,6 +402,7 @@ void llSetLinkColor( integer linknumber, vector color, integer face ) integer llSetLinkMedia( integer link, integer face, list params ) void llSetLinkPrimitiveParams( integer linknumber, list rules ) void llSetLinkPrimitiveParamsFast( integer linknumber, list rules ) +void llSetLinkRenderMaterial( integer link, string material, integer face ) void llSetLinkTexture( integer linknumber, string texture, integer face ) void llSetLinkTextureAnim( integer link, integer mode, integer face, integer sizex, integer sizey, float start, float length, float rate ) void llSetLocalRot( rotation rot ) @@ -415,6 +419,7 @@ void llSetPrimURL( string url ) void llSetPrimitiveParams( list rules ) integer llSetRegionPos( vector pos ) void llSetRemoteScriptAccessPin( integer pin ) +void llSetRenderMaterial( string material, integer face ) void llSetRot( rotation rot ) void llSetScale( vector scale ) void llSetScriptState( string name, integer run ) @@ -595,6 +600,7 @@ const integer CHANGED_MEDIA = 0x800 const integer CHANGED_OWNER = 0x80 const integer CHANGED_REGION = 0x100 const integer CHANGED_REGION_START = 0x400 +const integer CHANGED_RENDER_MATERIAL = 0x1000 const integer CHANGED_SCALE = 0x8 const integer CHANGED_SHAPE = 0x4 const integer CHANGED_TELEPORT = 0x200 @@ -622,6 +628,7 @@ const integer CHARACTER_TYPE_D = 3 const integer CHARACTER_TYPE_NONE = 4 const integer CLICK_ACTION_BUY = 2 const integer CLICK_ACTION_DISABLED = 8 +const integer CLICK_ACTION_IGNORE = 9 const integer CLICK_ACTION_NONE = 0 const integer CLICK_ACTION_OPEN = 4 const integer CLICK_ACTION_OPEN_MEDIA = 6 @@ -717,6 +724,7 @@ const integer INVENTORY_BODYPART = 13 const integer INVENTORY_CLOTHING = 5 const integer INVENTORY_GESTURE = 21 const integer INVENTORY_LANDMARK = 3 +const integer INVENTORY_MATERIAL = 57 const integer INVENTORY_NONE = -1 const integer INVENTORY_NOTECARD = 7 const integer INVENTORY_OBJECT = 6 @@ -759,6 +767,7 @@ const integer LINKSETDATA_DELETE = 2 const integer LINKSETDATA_EMEMORY = 1 const integer LINKSETDATA_ENOKEY = 2 const integer LINKSETDATA_EPROTECTED = 3 +const integer LINKSETDATA_MULTIDELETE = 3 const integer LINKSETDATA_NOTFOUND = 4 const integer LINKSETDATA_NOUPDATE = 5 const integer LINKSETDATA_OK = 0 @@ -955,11 +964,19 @@ const integer PRIM_BUMP_TILE = 8 const integer PRIM_BUMP_WEAVE = 17 const integer PRIM_BUMP_WOOD = 3 const integer PRIM_CAST_SHADOWS = 24 +const integer PRIM_CLICK_ACTION = 43 const integer PRIM_COLOR = 18 const integer PRIM_DESC = 28 const integer PRIM_FLEXIBLE = 21 const integer PRIM_FULLBRIGHT = 20 const integer PRIM_GLOW = 25 +const integer PRIM_GLTF_ALPHA_MODE_BLEND = 1 +const integer PRIM_GLTF_ALPHA_MODE_MASK = 2 +const integer PRIM_GLTF_ALPHA_MODE_OPAQUE = 0 +const integer PRIM_GLTF_BASE_COLOR = 48 +const integer PRIM_GLTF_EMISSIVE = 46 +const integer PRIM_GLTF_METALLIC_ROUGHNESS = 47 +const integer PRIM_GLTF_NORMAL = 45 const integer PRIM_HOLE_CIRCLE = 0x10 const integer PRIM_HOLE_DEFAULT = 0x0 const integer PRIM_HOLE_SQUARE = 0x20 @@ -1014,13 +1031,19 @@ const integer PRIM_POINT_LIGHT = 23 const integer PRIM_POSITION = 6 const integer PRIM_POS_LOCAL = 33 const integer PRIM_PROJECTOR = 42 +const integer PRIM_REFLECTION_PROBE = 44 +const integer PRIM_REFLECTION_PROBE_BOX = 1 +const integer PRIM_REFLECTION_PROBE_DYNAMIC = 2 +const integer PRIM_RENDER_MATERIAL = 49 const integer PRIM_ROTATION = 8 const integer PRIM_ROT_LOCAL = 29 const integer PRIM_SCRIPTED_SIT_ONLY = 40 +const integer PRIM_SCULPT_FLAG_ANIMESH = 0x20 const integer PRIM_SCULPT_FLAG_INVERT = 0x40 const integer PRIM_SCULPT_FLAG_MIRROR = 0x80 const integer PRIM_SCULPT_TYPE_CYLINDER = 4 const integer PRIM_SCULPT_TYPE_MASK = 7 +const integer PRIM_SCULPT_TYPE_MESH = 5 const integer PRIM_SCULPT_TYPE_PLANE = 3 const integer PRIM_SCULPT_TYPE_SPHERE = 1 const integer PRIM_SCULPT_TYPE_TORUS = 2 @@ -1202,6 +1225,7 @@ const integer SKY_MOON = 9 const integer SKY_MOON_TEXTURE = 20 const integer SKY_PLANET = 10 const integer SKY_RAYLEIGH_CONFIG = 18 +const integer SKY_REFLECTION_PROBE_AMBIANCE = 24 const integer SKY_REFRACTION = 11 const integer SKY_STAR_BRIGHTNESS = 13 const integer SKY_SUN = 14 diff --git a/fndata.txt b/fndata.txt index 481ad79..4586654 100644 --- a/fndata.txt +++ b/fndata.txt @@ -1685,6 +1685,18 @@ integer llListFindStrided(list src, list test, integer start, integer end, integ list llListSortStrided(list src, integer stride, integer stride_index, integer ascending) - SEF +integer llLinksetDataCountFound(string pattern) +- SEF + +list llLinksetDataDeleteFound(string pattern, string pass) + +string llGetRenderMaterial(integer face) +- SEF + +void llSetRenderMaterial(string material, integer face) + +void llSetLinkRenderMaterial(integer link, string material, integer face) + ################################################################### # Events are SEF if a script with an empty event can't be diff --git a/lslopt/lslfuncopt.py b/lslopt/lslfuncopt.py index 91dc16c..4de38f4 100644 --- a/lslopt/lslfuncopt.py +++ b/lslopt/lslfuncopt.py @@ -111,6 +111,18 @@ primParamsTypes = \ , 40: 'i' # 40=PRIM_SCRIPTED_SIT_ONLY , 41: 'ivv' # 41=PRIM_SIT_TARGET , 42: 'sfff' # 42=PRIM_PROJECTOR + , 43: 'i' # 43=PRIM_CLICK_ACTION + , 44: 'iffi' # 44=PRIM_REFLECTION_PROBE + # GLTF parameters admit an empty string in any of the places except the + # first integer (face number). We're not prepared to deal with that. +# , 45: 'isvvf' # 45=PRIM_GLTF_NORMAL +# , 46: 'isvvfv' # 46=PRIM_GLTF_EMISSIVE +# , 47: 'isvvfff' # 47=PRIM_GLTF_METALLIC_ROUGHNESS +# , 48: 'isvvfvfifi' # 48=PRIM_GLTF_BASE_COLOR + , 45: 'i*' # 45=PRIM_GLTF_NORMAL + , 46: 'i*' # 46=PRIM_GLTF_EMISSIVE + , 47: 'i*' # 47=PRIM_GLTF_METALLIC_ROUGHNESS + , 48: 'i*' # 48=PRIM_GLTF_BASE_COLOR } # llGetPrimitiveParams parameters with arguments. F=face, L=link.