Commit Graph

645 Commits

Author SHA1 Message Date
UbitUmarov
d92940b62b add functions osListAs*(list src, integer index) identical to llList2*, but a bit faster with no typecast and index only from origin ( ie >= 0) 2025-05-09 20:00:19 +01:00
UbitUmarov
23ad195e7a add osSetTerrainTextures(LSL_List textures, LSL_Integer types) to set terrain textures for legacy viewers it types == 0 or 2; textures for new viewers if types == 1 or 2 or PBR materials if types == 1 (untested :( ) 2025-05-06 01:29:24 +01:00
Vincent Sylvester
28266fc7b6 HMAC function, stubs and interfaces for compute hash
Signed-off-by: UbitUmarov <ajlduarte@sapo.pt>
2025-04-17 20:20:28 +01:00
Vincent Sylvester
d3cf429c4c llGetVisualParams
Signed-off-by: UbitUmarov <ajlduarte@sapo.pt>
2025-04-11 15:28:40 +01:00
Vincent Sylvester
587b19c76b llListFindListNext
Signed-off-by: UbitUmarov <ajlduarte@sapo.pt>
2025-04-11 14:56:54 +01:00
UbitUmarov
7d47398802 bad merge.. 2025-04-11 08:50:25 +01:00
Vincent Sylvester
ae4ea576d5 llGetHealth
Signed-off-by: UbitUmarov <ajlduarte@sapo.pt>
2025-04-11 08:08:06 +01:00
UbitUmarov
4d0312f122 use switch expression instead 2025-04-11 08:03:37 +01:00
Vincent Sylvester
6eab3e6efb llGetSimStats
Signed-off-by: UbitUmarov <ajlduarte@sapo.pt>
2025-04-11 07:51:12 +01:00
Vincent Sylvester
f42fd1c552 llGetInventoryDesc
Signed-off-by: UbitUmarov <ajlduarte@sapo.pt>
2025-04-11 07:25:06 +01:00
UbitUmarov
bde18322eb add LSL_Integer osListFindListNext(LSL_List src, LSL_List test, LSL_Integer lstart, LSL_Integer lend, LSL_Integer instance), like ll one but with search restricted to a substring. Untested, sorry 2025-04-04 01:30:41 +01:00
UbitUmarov
e681e1f09a add llGetLinkSitFlags and dummy llSetLinkSitFlags 2025-02-07 22:04:01 +00:00
UbitUmarov
a20a5f312d add llGetStartString and limited llRezObjectWithParams for testing 2024-11-22 04:01:03 +00:00
UbitUmarov
c3ea01144e few lsl constants 2024-11-14 22:30:13 +00:00
Adil El Farissi
ac9ed3d5d1 Add selfsigned certificates support to Robust and osGetLinkInventoryKeys plus some fixes 2024-08-16 22:59:25 +01:00
Sue Cripter
0bf18539b5 Add llGetNotecardLineSync 2024-07-04 00:10:29 +02:00
UbitUmarov
cc1227364c add llDerezObject(..) 2024-06-23 21:54:46 +01:00
UbitUmarov
ecdc979687 oops it is sRGB not linear, so rename to osTemperature2sRGB 2024-06-04 09:46:11 +01:00
UbitUmarov
1d9d39328d add osTemperatureToLinearColor() 2024-06-04 09:05:03 +01:00
UbitUmarov
270427ba2a add vector osGetLinkColor(LSL_Integer linknum, LSL_Integer face) 2024-05-18 22:17:10 +01:00
UbitUmarov
4d552360dd also incremenet os_apiversion 2024-04-30 23:34:35 +01:00
UbitUmarov
25dcfa8b4e change llAtan2 arguments order to (y,x) to match standard documentation 2024-04-12 22:14:54 +01:00
UbitUmarov
e918888e30 add llGetCameraAspect and llGetCameraFOV 2024-03-28 15:34:03 +00:00
UbitUmarov
acbec23f48 clean appdomain related things 2024-03-26 21:34:33 +00:00
UbitUmarov
782bad9944 and rename it again as just osGetLinkInventoryKey, so it is coerent with llGetInventoryKey (mantis 9119) 2024-03-26 18:32:05 +00:00
UbitUmarov
7c63ff1150 rename new osGetLinkInventoryItemKey as osGetLinkInventoryItemAssetKey 2024-03-24 11:34:23 +00:00
Jeff Kelley
1aa7bea608 osGetLinkInventoryAssetKey
deleted:    bin/System.Drawing.Common.dll

Signed-off-by: UbitUmarov <ajlduarte@sapo.pt>
2024-03-24 11:25:09 +00:00
UbitUmarov
0d73a817cc oops 2024-03-05 20:21:41 +00:00
UbitUmarov
f770fc8a0e missing file 2024-03-05 18:52:48 +00:00
UbitUmarov
97b03f76c7 fix the last patch 2024-02-29 20:40:42 +00:00
Jeff Kelley
d58f9f0f5d osGetSitTarget
Signed-off-by: UbitUmarov <ajlduarte@sapo.pt>
2024-02-29 20:28:20 +00:00
Adil El Farissi
60214e6e81 Add 2 OSSL functions to the LinkInventory collection
Add Functions:
+ osGiveLinkInventoryList(integer linkNumber, key destination, string category, list inventory)
Give a group of items located in a child prim inventory

+ osRemoveLinkInventory(integer linkNumber, string name)
Remove an item from a child prim inventory

LSL Script example:
<pre><code>
default
{
    touch_start(integer a){

        integer linkNumber = llDetectedLinkNumber(0);
        list linkInventoryNames = osGetLinkInventoryNames(linkNumber, INVENTORY_ALL);
        osGiveLinkInventoryList(linkNumber, llDetectedKey(0), llGetLinkName(linkNumber), linkInventoryNames);

        for(integer i = 0; i < llGetListLength(linkInventoryNames); i++){
            osRemoveLinkInventory(linkNumber, llList2String(linkInventoryNames, i));
        }
    }
}
</code></pre>
2024-02-25 07:14:49 +00:00
Adil El Farissi
db80781e7d Basic implementation of AES encryption/decryption and respective OSSL functions
Add methods:
+ private static string AESEncryptString(string secret, string plainText, string ivString= null)
AES Encrypt a string using a password and a random or custom Initialization Vector.

+ private static string AESDecryptString(string secret, string encryptedText, string ivString= null)
AES Decrypt the string encrypted by AESEncryptString with the same password and ivString used in the encryption.

Methods implementations:
+ Util.AESEncrypt(string secret, string plainText)
+ Util.AESDecrypt(string secret, string encryptedText)
+Util.AESEncryptTo(string secret, string plainText, string ivString)
+ Util.AESDecryptFrom(string secret, string encryptedText, string ivString)

OSSL functions as first case of use:
+ osAESEncrypt(string secret, string plainText)
+ osAESDecrypt(string secret, string encryptedText)
+ osAESEncryptTo(string secret, string plainText, string ivString)
+ osAESDecryptFrom(string secret, string encryptedText, string ivString)

LSL script example:
<pre><code>
string plainText = "Hello World :)";
string secret = "#!qUeRtY$@123^456€!#";

default
{
    touch_start(integer i)
    {
        string encryptedText = osAESEncrypt(secret, plainText);
        llOwnerSay("\nEncrypted with osAESEncrypt:\n"+ encryptedText);
        string decryptedText = osAESDecrypt(secret, encryptedText);
        llOwnerSay("\nDecrypted with osAESDecrypt:\n"+ decryptedText);

        // Encription / Decription with custom Initialization Vector.
        string ivString = (string)llGetOwner() /* +"_"+ llGenerateKey() */;
        string encryptedToText = osAESEncryptTo(secret, plainText, ivString);
        llOwnerSay("\nEncrypted with osAESEncryptTo:\n"+ encryptedToText);
        string decryptedFromText = osAESDecryptFrom(secret, encryptedToText, ivString);
        llOwnerSay("\nDecrypted with osAESDecryptFrom:\n"+ decryptedFromText);
    }
}
</code></pre>

Web Rain :)
2024-02-23 21:14:33 +00:00
Adil El Farissi
ea7417dff6 Update OSSL_Stub.cs 2024-02-21 04:26:06 +00:00
Adil El Farissi
ca722ecdd8 Add some OSSL functions related to child prims inventory manipulations
Add functions:

+ osGiveLinkInventory(integer linkNumber, key destination, string inventory)
Give an item located in a child prim inventory.

+ osGetInventoryNames(integer type)
Return a list of items names by type (or INVENTORY_ALL) located in the prim inventory.

+ osGetLinkInventoryNames(integer linkNumber, integer type)
Return a list of items names by type (or INVENTORY_ALL) located in a child prim inventory.

+ osGetInventoryKeys(integer type)
Return a list of the items UUIDs by type (or INVENTORY_ALL) located in the prim inventory.

+ osGetLinkInventoryKeys(integer linkNumber, integer type)
Return a list of the items UUIDs by type (or INVENTORY_ALL) located in a child prim inventory.

+ osGetLinkInventoryKey(integer linkNumber, string name)
Return the UUID of the specified item name located in a child prim inventory.

+ osGetLinkInventoryDesc(integer linkNumber, string itemNameorid)
Return the description of an item located in a child prim inventory.

+ osGetLinkInventoryName(integer linkNumber, key itemId)
Return the name of an item located in a child prim inventory.

Note: the LinkInventory functions don't have access to the root prim contents. This may change if requested by the community...
2024-02-20 17:36:33 +00:00
UbitUmarov
cf27093ee9 several changes to llIsFriend and related methods 2024-02-16 20:14:06 +00:00
UbitUmarov
4e2bea288a add llIsFriend 2024-02-16 17:17:59 +00:00
UbitUmarov
2e26b8a8bb add LinksetData support. Untested and still does not store in dbs. Not as spec. See mantis 9081 (runprebuild) 2024-02-06 23:45:11 +00:00
UbitUmarov
f1cba63aad retire StringToBytes variants with string format. Do the format before calling.. 2024-02-05 18:34:44 +00:00
UbitUmarov
79ac5c7f54 remove some obsolete code 2023-11-29 12:17:08 +00:00
UbitUmarov
bbe6075aa0 add lsl constant PRIM_SCULPT_FLAG_ANIMESH and change a few things about it 2023-08-08 18:45:49 +01:00
Vincent Sylvester
dba340a447 Minor fixes
Signed-off-by: UbitUmarov <ajlduarte@sapo.pt>
2023-08-01 18:57:39 +01:00
UbitUmarov
d5e49f29da cosmetics 2023-07-25 19:56:55 +01:00
UbitUmarov
5ab9278583 add a few lsl constants for llLinkPlaySound 2023-07-18 20:28:56 +01:00
UbitUmarov
2849e57920 add osGetPrimCount([key primKey]) and osGetSittingAvatarsCount([key primkey]) that just do want name says unlike ll mess, absent primKey argument means current linkset 2023-06-14 22:45:37 +01:00
UbitUmarov
2625eed5e4 add some constants and reserve some linkset_data lsl event slots, compatible to mantis9081 patch, for now not accepted (any future implementation may diverge from that, even sl 2023-06-02 18:30:28 +01:00
UbitUmarov
52bd6a443e make llLinkPlaySound() closer to spec 2023-05-31 19:27:43 +01:00
Jeff Kelley
b96ef0d00c osSetPenColor
osSetPenColor1

Signed-off-by: UbitUmarov <ajlduarte@sapo.pt>
2023-05-05 10:45:02 +01:00
UbitUmarov
35962d8c39 add llListFindStrided; llListFindList change to be more as spec 2023-04-29 11:06:35 +01:00
UbitUmarov
7dbedecd88 add LSL llLinear2sRGB and llsRGB2Linear 2023-04-28 01:55:35 +01:00