Commit graph

169 commits

Author SHA1 Message Date
Sei Lisa
d23699fbe6 Change the strategy for the U+FFFD separator handling.
Use a global variable instead. In SL, the optimizer does the replacement automatically, therefore no memory penalty is incurred. In OpenSim, the variable is assigned at run time with llUnescapeURL. The OpenSim separator is also changed from U+001F to U+007F, because most control characters under U+0020 cause problems with exporting when present in script memory.

Fixes #41.
2017-09-15 17:43:48 +02:00
Sei Lisa
8bd8b19e2f Add caveat on the use of -1 for all sitters. 2017-09-10 19:45:55 +02:00
Sei Lisa
997ea85236 Allow -1 to mean all sitters.
Suggested by Natsagan in the Unofficial AVsitter group.
2017-09-10 19:45:55 +02:00
Sei Lisa
70b737145e Allow "*" as pose name to mean all poses.
Suggested by Natsagan in the Unofficial AVsitter group.
2017-09-10 19:45:55 +02:00
Sei Lisa
da833a59a0 Revert last squashed commit, to push it as separate commits. 2017-09-10 19:42:31 +02:00
Sei-Lisa
0ed4903ada Allow * to mean all poses, and -1 to mean all sitters (#34)
* Allow "*" as pose name to mean all poses.

Suggested by Natsagan in the Unofficial AVsitter group.

* Allow -1 to mean all sitters.

Suggested by Natsagan in the Unofficial AVsitter group.

* Add caveat on the use of -1 for all sitters.
2017-09-09 23:55:23 +10:00
codeviolet
dc8b6c8386 use timer to avoid event timeout in OpenSim (#40) 2017-09-09 18:56:10 +10:00
codeviolet
bfb8ba8443 changed main author to initial author 2017-09-09 09:57:13 +02:00
Sei Lisa
96b4c44bc8 Fix markdown issues 2017-09-09 09:57:13 +02:00
Sei Lisa
00d7504ad5 Add AUTHORS.md 2017-09-09 09:57:13 +02:00
Sei-Lisa
2e7202e8a1 Fix bug where chains didn't detach on standup. (#33)
This was introduced in commit 5c4f5b3.
2017-09-08 00:33:16 +10:00
codeviolet
c2e2d63f70 Amend copyright notice 2017-09-02 10:03:01 +02:00
Sei Lisa
7d1afc7823 Makefile: Use a configurable variable for the zip program. 2017-09-02 09:45:52 +02:00
Sei Lisa
1f92469556 Add release building guide to README.md 2017-09-02 09:45:52 +02:00
Sei Lisa
e57b703964 Add Noob-detector to the optimized scripts list in Makefile. 2017-09-02 09:45:52 +02:00
Sei Lisa
19b025f7c3 Fix Windows file deletion.
Under Windows, 'del' was causing problems with the forward slashes used for directories, as these are not accepted by the shell commands, even if they are accepted as paths in general. Fix it by adding 'rm' capabilities to build-aux.py and using it in Makefile instead of the $(RM) macro.
2017-09-02 09:45:52 +02:00
Sei Lisa
242a5e0017 Rename RELEASE to BUILD_GUIDE and prepare-for-oss to build-aux
BUILD_GUIDE is more future-proof, especially if we end up using the preprocessor.

The build-aux rename is preparatory work for the next changes.
2017-09-02 09:45:52 +02:00
Sei Lisa
4ed043d823 Fix precedence of the "!" logical NOT operator.
We knew that in OpenSim, the bitwise NOT "~" operator's precedence was broken (see <http://opensimulator.org/mantis/view.php?id=3268>), but it appears that the same bug affects the logical NOT operator "!" as well, so it needs parentheses when followed by more expressions.
2017-09-02 09:45:52 +02:00
Sei Lisa
d8069cd1a9 Fix embedded assignments for OpenSim in AVselect/root-security 2017-09-02 09:45:52 +02:00
Sei Lisa
29ec5d7dd1 Add the rest of core files to the OpenSim version 2017-09-02 09:45:52 +02:00
Sei Lisa
b7b329847f Port UUIDs to OpenSim 2017-09-02 09:45:52 +02:00
Sei Lisa
7bf262c61e Fix llDialog with empty buttons list for OpenSim.
The optimizer removes the extra "OK" for SL.
2017-09-02 09:45:52 +02:00
Sei Lisa
b71c5e4287 Allow the separating space between // and OSS to be omitted. 2017-09-02 09:45:52 +02:00
Sei Lisa
1d9717b16b Revert osReplaceString change.
osReplaceString requires a regular expression, causing problems with regex-reserved characters.
2017-09-02 09:45:52 +02:00
Sei Lisa
cbb82150db More optimizations. 2017-09-02 09:45:52 +02:00
Sei Lisa
90bd72e1ff Further fixes for OpenSim.
In OpenSim, llGetLinkNumber() returns 0 for single prims with a sitting avatar. On top of that, in older versions llGetLinkKey returns NULL_KEY for link number 0, and in newer ones it does so for link number 1.

The present changes try to make sure that under either situation, the code behaves correctly for the core scripts.
2017-09-02 09:45:52 +02:00
Sei Lisa
e77bddec30 Unindent blocks that were left indented for clarity in the previous commit.
Only space changes, no code changes.
2017-09-02 09:45:52 +02:00
Sei Lisa
7482550bef Some micro-optimizations.
- [AV]sitA: Compute loading progress percentage without converting to float. Remove some 'else' clauses, adding 'return' where appropriate. That required moving the retrieval of the next notecard line near the top. A block has been left indented for clarity, and will be unindented in the next commit.
- [AV]prop: Remove some 'else' clauses, adding 'return' where appropriate. A block has been left indented for clarity, and will be unindented in the next commit.
- [AV]Xcite!: Change (string)llList2Integer to llList2String, after verifying that the elements in the list are always integers, and therefore this can't cause problems.
- [AV]root-RLV-extra: Remove unused event.
- [AV]faces: Change llListReplaceList with a replacement of [] to llDeleteSubList, to save one argument. Remove unnecessary 'else'.
- [AV]sequence: Comment out unused condition. It would be removed by the optimizer anyway, but this will hopefully help with clarity.
- AVpos-shifter: Change var++ to ++var (the optimizer would also do this anyway).
2017-09-02 09:45:52 +02:00
Sei Lisa
65c067cc30 Prepare the core scripts for OpenSim.
- Add Makefile and release creation instructions.
- Add a simple Python program to automate the OpenSim conversion based on markings in the code.
- Add .gitignore entries for the generated files.
- Add parentheses around assignments as required by OpenSim. This is done only to the core scripts.
- OpenSim isn't compatible with SL when there are conditions of type key. Those are all converted. Conditions of other types, except integer, are expanded for clarity and optimization, as they generate the same or better code that way, and currently the optimizer can do a better job when they are expanded.
- Floats in scientific notation need a dot.
- llParseStringXXXX doesn't work the same in OpenSim as in SL, when the separator is an Unicode codepoint that doesn't represent a character. For that reason, the internal separator, which is U+FFFD ("Replacement Character") is changed automatically by the Python program to U+001F (Unit Separator control character). For further safety, function strReplace is altered to use osReplaceString instead of llParseStringKeepNulls/llDumpList2String.

Furthermore, the ~ operator has the wrong precedence in OpenSim, but that was handled by a previous commit. Note that appearances of the ~ operator that were not preceded by a ! have only been replaced in the core scripts.
2017-09-02 09:45:52 +02:00
Sei Lisa
4278710ce8 Fix some marginal bugs, and the version of [AV]faces.
- Bump version of [AV]faces to 2.2.
- With very bad luck, some channel numbers could overflow the range of an integer due to float rounding, and produce DEBUG_CHANNEL or PUBLIC_CHANNEL as output.
- If both CHANGED_INVENTORY and CHANGED_LINK came at the same time, [AV]prop would fail to handle both.
- There was code that did nothing in [AV]faces. While it caused no bug per se, if it was reused in future then it could be affected by the same problem as that in [AV]prop.
2017-09-02 09:45:52 +02:00
Sei Lisa
610890951d Undo some hand optimizations.
Many of them cause problems with OpenSim.

All of them are applied by the optimizer, except (str="")+str, which produces gains only in LSO, not in Mono, and doesn't work in OpenSim.

A few are undone only for clarity, relying on the fact that the optimizer will apply them again.
2017-09-02 09:45:52 +02:00
Sei Lisa
202b4503d1 Remove or add parentheses as necessary to improve clarity.
There should be no changes in the code compiled from source directly.
2017-09-02 09:45:52 +02:00
Sei Lisa
2488349a1b Comment and formatting changes; no actual code changes.
- Add spaces between functions.
- Add comments on numeric codes and a few others.
- Reformat lists and one function.
- Remove spaces at EOL.
- Use actual copyright symbol.
2017-09-02 09:45:52 +02:00
codeviolet
ef3adcce5e formatting fixes 2017-09-01 17:52:39 +02:00
codeviolet
199aec0ef5 Add IMPORT_GUIDE and edit README 2017-09-01 17:52:39 +02:00
Sei Lisa
b30760acc3 Add .gitattributes to account for different line endings between systems 2017-08-31 12:11:53 +02:00
Sei Lisa
f97f8c5a5b Whitespace-only changes.
- Remove CR before LF to allow Git to use system-specific line terminators.
- Expand tabs to spaces.
- Remove spaces at end of line.
2017-08-31 12:08:57 +02:00
codeviolet
eb0164ff0a fix errors in intial upload
<CONTROLLER_UUID> and <AVATAR_UUID> were the wrong way around
2017-08-29 11:30:17 +02:00
Sei-Lisa
2d9b5aebfa Fix menu activation on helper click for all avatars. (#21)
It was broken for some.
2017-08-29 18:48:51 +10:00
Sei-Lisa
77fe80bb66 Hot fix for settings.php (#27)
* Hot fix for settings.php

It's failing whenever there's more than 1 chunk.

Fixes #25.

* Escape $ip_packed.

It can contain arbitrary binary characters, so it needs escaping.
2017-08-29 11:21:09 +10:00
codeviolet
705ac02889 adding settings.php and Noob-detector.lsl per #20 2017-08-28 12:02:53 +02:00
vm
001bfa1ecd add listen handle 2017-08-27 03:45:46 +02:00
Sei-Lisa
e03807caa7 Fix update-receiver.lsl failing to self-delete, and a security issue. (#22)
The types in the list are strings, so they won't match a key.

Remove the pin from the prim when removing the script.
2017-08-27 10:39:50 +10:00
Oddunity
56c16cf6bf Minor bug fix and optimizations
- Fixed timer bug
- Changed llGetBoundngBox to llGetObjectMass
- Restrict prop cleanup to only include children of non-attached parent objects
2017-08-18 00:17:16 +02:00
Oddunity
4ff281d1f2 Cleanup props when parent object no longer exists
A timed event to check for the existence of the rezzing object and cleanup when the check fails.
2017-08-18 00:17:16 +02:00
mifi3000
19424493e9 Revise MARKETPLACE.txt and fix typo 2017-08-07 16:55:12 +10:00
Sei-Lisa
c157fd936a Remove [AV]object notice, per discussion in #5 (#7) 2017-08-07 11:10:15 +10:00
codeviolet
1640af3f2c Create MARKETPLACE.txt 2017-08-06 12:28:03 +10:00
Sei Lisa
5b6cd5763b Cosmetic changes to AVprop (no code changes)
Add vertical space between functions and between events; format the attachment points list; add inline comments indicating the meaning of the 90xxx codes.
2017-08-04 14:24:39 +02:00
vm
1f53bac37d re-add web service 2017-08-02 21:41:33 +10:00