Add LinkSound functions and constants; disallow unstable in void

The unstable flag does not make sense in void functions; add warning.

Also, new upstream version of builtins.txt with new functions that have been added to fndata.txt.
This commit is contained in:
Sei Lisa 2023-02-03 12:57:58 +01:00
parent 91b3186245
commit b13bb6d810
3 changed files with 35 additions and 9 deletions

View file

@ -1,4 +1,4 @@
// Generated by LSL2 Derived Files Generator. Database version: 0.0.20221115000; output module version: 0.0.20140731000
// Generated by LSL2 Derived Files Generator. Database version: 0.0.20230203000; output module version: 0.0.20140731000
integer llAbs( integer val )
float llAcos( float val )
void llAddToLandBanList( key avatar, float hours )
@ -230,19 +230,24 @@ string llKey2Name( key id )
key llKeyCountKeyValue( )
key llKeysKeyValue( integer start, integer count )
vector llLinear2sRGB( vector color )
void llLinkAdjustSoundVolume( integer link, float volume )
void llLinkParticleSystem( integer linknumber, list rules )
void llLinkPlaySound( integer link, string sound, float volume, integer flags )
void llLinkSetSoundQueueing( integer link, integer queue )
void llLinkSetSoundRadius( integer link, float radius )
void llLinkSitTarget( integer link, vector offset, rotation rot )
void llLinkStopSound( integer link )
integer llLinksetDataAvailable( )
integer llLinksetDataCountKeys( )
integer llLinksetDataDelete( string key )
integer llLinksetDataDeleteProtected( string key, string password )
integer llLinksetDataDelete( string keyname )
integer llLinksetDataDeleteProtected( string keyname, string password )
list llLinksetDataFindKeys( string pattern, integer start, integer count )
list llLinksetDataListKeys( integer start, integer count )
string llLinksetDataRead( string key )
string llLinksetDataReadProtected( string key, string password )
string llLinksetDataRead( string keyname )
string llLinksetDataReadProtected( string keyname, string password )
void llLinksetDataReset( )
integer llLinksetDataWrite( string key, string value )
integer llLinksetDataWriteProtected( string key, string value, string password )
integer llLinksetDataWrite( string keyname, string value )
integer llLinksetDataWriteProtected( string keyname, string value, string password )
string llList2CSV( list src )
float llList2Float( list src, integer index )
integer llList2Integer( list src, integer index )
@ -1170,6 +1175,10 @@ const integer SKY_SUN_TEXTURE = 21
const integer SKY_TEXTURE_DEFAULTS = 1
const integer SKY_TRACKS = 15
const integer SMOOTH = 0x10
const integer SOUND_LOOP = 0x01
const integer SOUND_PLAY = 0x00
const integer SOUND_SYNC = 0x04
const integer SOUND_TRIGGER = 0x02
const float SQRT2 = 1.41421356
const integer STATUS_BLOCK_GRAB = 0x40
const integer STATUS_BLOCK_GRAB_OBJECT = 0x400
@ -1311,7 +1320,7 @@ event land_collision( vector pos )
event land_collision_end( vector pos )
event land_collision_start( vector pos )
event link_message( integer sender_num, integer num, string str, key id )
event linkset_data( integer action, string key, string value )
event linkset_data( integer action, string keyname, string value )
event listen( integer channel, string name, key id, string message )
event money( key id, integer amount )
event moving_end( )

View file

@ -1650,6 +1650,17 @@ integer llOpenFloater(string title, string url, list params)
string llGetInventoryAcquireTime(string item)
- SEF
void llLinkPlaySound(integer link, string sound, float volume, integer flags)
void llLinkStopSound(integer link)
void llLinkAdjustSoundVolume(integer link, float volume)
- delay 0.1
void llLinkSetSoundQueueing(integer link, integer queue)
void llLinkSetSoundRadius(integer link, float radius)
###################################################################
# Events are SEF if a script with an empty event can't be

View file

@ -375,7 +375,13 @@ def LoadLibrary(builtins = None, fndata = None):
elif match_flag.group(4):
flag = match_flag.group(4).lower()
if flag == 'unstable':
functions[curr_fn]['uns'] = True
if functions[curr_fn]['Type'] is None:
warning(u"unstable does not make sense"
" with void function, in line %d,"
" function %s. Omitting flag."
% (linenum, curr_fn))
else:
functions[curr_fn]['uns'] = True
else:
functions[curr_fn][flag] = True
elif match_flag.group(5):