Commit Graph

236 Commits

Author SHA1 Message Date
Adil El Farissi
ac9ed3d5d1 Add selfsigned certificates support to Robust and osGetLinkInventoryKeys plus some fixes 2024-08-16 22:59:25 +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
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
Vincent Sylvester
dba340a447 Minor fixes
Signed-off-by: UbitUmarov <ajlduarte@sapo.pt>
2023-08-01 18:57:39 +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
Jeff Kelley
b96ef0d00c osSetPenColor
osSetPenColor1

Signed-off-by: UbitUmarov <ajlduarte@sapo.pt>
2023-05-05 10:45:02 +01:00
UbitUmarov
549ebc1025 add old llList2ListStrided renamed osOldList2ListStrided to easy any possible script fixes 2023-04-27 22:15:19 +01:00
UbitUmarov
4c061a0602 add llListSortStrided and osListSortInPlaceStrided 2023-04-26 20:26:01 +01:00
UbitUmarov
93e06f87f6 add list osGetParcelIDs() and key osGetParcelID(), plus a few changes to previus commits 2023-04-16 20:00:35 +01:00
UbitUmarov
c3db66a3f9 add LSL:key.NullKey, plus cosmetics 2023-02-10 16:18:37 +00:00
UbitUmarov
fd6edf81d9 remove some xengine code; remove OSSLPrim, whatever that was 2022-11-01 01:23:04 +00:00
UbitUmarov
6ff8ecaae0 appdomains are gone. XEngine does not make much sense without them 2022-10-02 11:38:50 +01:00
UbitUmarov
e78caeeac8 add explicit osMakeNotecard(string notecardName, LSL_String contents) so it does not depend on implicit cast from string to list, as before 2022-01-06 20:42:50 +00:00
UbitUmarov
3423e53043 fix osRequest*URL return type and threat level name 2021-10-18 20:42:28 +01:00
UbitUmarov
af4dacee53 a few typos 2021-09-01 16:37:28 +01:00
UbitUmarov
96cb47e80f anf ofc i forgot a file 2021-05-31 18:13:56 +01:00
UbitUmarov
15d0b02ba9 add LSL_Integer osAvatarType(string firts, string last) 2021-04-21 16:25:58 +01:00
UbitUmarov
9d1bd02d12 add LSL_Integer osAvatarType(LSL_Key avkey) 2021-04-21 15:52:09 +01:00
UbitUmarov
1c29f3378d mantis 8865: add experimental osNpcLookAt 2021-02-16 03:16:54 +00:00
UbitUmarov
e25b05a454 remove the expire argument from os[Link]ParticleSystem.. expire is controled by maxage != 0 2021-01-12 16:12:44 +00:00
UbitUmarov
72f7009b10 add os[Link]ParticleSystem with expire option. If expire true and system MaxAge > 0, the system will be be (lazy) removed from the prim after that MaxAge 2021-01-12 15:38:10 +00:00
UbitUmarov
a3b26255dd add vector variant of osSlerp; update script syntax 2021-01-06 16:32:51 +00:00
UbitUmarov
8fa28d96f5 clean tabs from osSHA256 patch (mantis 8839) 2020-12-29 13:31:08 +00:00
Mike Higgins
0da43a8ef5 added a new function string=osSHA256(string)
Signed-off-by: UbitUmarov <ajlduarte@sapo.pt>
2020-12-29 13:17:29 +00:00
UbitUmarov
64fea8f20c mantis 8770: let osGetSunParam(day_length) return the same as llGetDayLength() ie day length at prim location 2020-09-12 16:14:14 +01:00
UbitUmarov
b64e1792ff wt* remove osSetStateEvents, any script using it must just DIE 2020-08-31 15:01:26 +01:00
UbitUmarov
cd5ac2eae9 some cleanup to last patch from Bill Blight and Vincent (mantis 8738) 2020-08-08 18:27:45 +01:00
Vincent Sylvester
4eee476423 osSetParcelMusicURL
Signed-off-by: UbitUmarov <ajlduarte@sapo.pt>
2020-08-08 18:16:15 +01:00
UbitUmarov
5b87347476 and add some untested ossl 2020-06-21 12:41:10 +01:00
UbitUmarov
5b56a09cb2 some fixes on env protocol, forced env, etc 2020-06-21 01:41:14 +01:00
UbitUmarov
e3ecf0ddbe add LSL_Integer osReplaceAgentEnvironment(LSL_Key agentkey, LSL_Integer transition, LSL_String environment). note this is a hack, we cant do the ll* one 2020-06-19 19:55:40 +01:00
UbitUmarov
3bf0f6c407 do not display 0:xx:xx PM 2020-06-12 20:02:55 +01:00
UbitUmarov
d1ecccfaca add some ossl 2020-06-11 19:55:12 +01:00
UbitUmarov
9bd5310fe8 expose the option to save HUDs into notecard on the API 2020-06-01 21:05:57 +01:00
UbitUmarov
66eb8a2c2e let engines Suspend and resume scripts return false if script not on that engine 2020-05-25 14:41:59 +01:00
UbitUmarov
248d56d3ad add LSL_Integer osClearObjectAnimations() to remove all animations on a prim, returning the number it had; some clean on sending 2020-03-03 23:21:05 +00:00
UbitUmarov
76987fb647 ... osSetLinkStandTarget 2020-01-25 15:51:36 +00:00