diff options
author | David Walter Seikel | 2016-01-23 14:21:26 +1000 |
---|---|---|
committer | David Walter Seikel | 2016-01-23 14:21:26 +1000 |
commit | c2c292430315b08899d6aff6cc36727c5287de68 (patch) | |
tree | 00c1b88da6da08a28b0f1b6ac405fa7ef64f6ac2 /TODO | |
parent | Think we need a self for default LSL chat filtering. (diff) | |
download | SledjHamr-c2c292430315b08899d6aff6cc36727c5287de68.zip SledjHamr-c2c292430315b08899d6aff6cc36727c5287de68.tar.gz SledjHamr-c2c292430315b08899d6aff6cc36727c5287de68.tar.bz2 SledjHamr-c2c292430315b08899d6aff6cc36727c5287de68.tar.xz |
Might actually be getting to a design here. B-)
Diffstat (limited to '')
-rw-r--r-- | TODO | 42 |
1 files changed, 42 insertions, 0 deletions
@@ -167,6 +167,48 @@ Communication | |||
167 | Link messages include the number of the link (to or from, depending on which end you are at), a number, a string, and a key. | 167 | Link messages include the number of the link (to or from, depending on which end you are at), a number, a string, and a key. |
168 | These are entirely internal to LuaSL though. | 168 | These are entirely internal to LuaSL though. |
169 | 169 | ||
170 | purkle registers a listener, with no filter. | ||
171 | llDialog's client side sends a say() to love. | ||
172 | Normally, that wont be bounced back to extantz. | ||
173 | SL and OS however, bounce all channels across the viewer, which is why some of them can peek at other channels. | ||
174 | Which is why purkle registers with no filter, gotta gettem all. | ||
175 | Later we should default to just channel 0. | ||
176 | |||
177 | Soooo, every one sends their say() commands to love. Love decides who to send listen() events to, which may include sending back to the source. | ||
178 | |||
179 | May need to start name spacing Lua stuff. | ||
180 | scripts.compile(), scripts.run(), scripts.reset() scripts.listen() which would include avatar's clients registering via purkle pretending to be a Lua script, | ||
181 | world.say() | ||
182 | |||
183 | The only place where there is any ambiguity is LuaSL. | ||
184 | Purkle accepts event.say() from love, LSLGuiMess sends world.say() to love. | ||
185 | Love routes world.say()'s around, even back to the source if needed, sending them as event.say(). | ||
186 | LuaSL sends world.say() to love. LuaSL accepts event.say() from love for scripts. | ||
187 | When a say() comes in, it's executed, which triggers the say() that sends to love. OOPS!!!! | ||
188 | world.say() -> events.say() | ||
189 | |||
190 | More generic event system? | ||
191 | There are other events flying around. | ||
192 | BASIC event Just send it to LuaSL, it loops through all scripts, sending the event to them all if they have an event function in their current state. | ||
193 | REGISTER event Script has to register for these events with love. Can have filter. love loops through all regisitered "scripts", applies filters, sends events. | ||
194 | REQUEST event Script has to request an event from love. Can have a filter. Love sends event straight back to the script. Once. | ||
195 | This covers the "wait for return value" case as well. events.return()? | ||
196 | touch_start goes from extantz to LuaSL, via love. Most of the rest go from love to LuaSL I think. link_message, state_entry, state_exit are internal to LuaSL, timer should be. | ||
197 | All manner of arguments sent to events. | ||
198 | Some of them include the llDetected*() functions for getting more info. | ||
199 | So we need some way of sending arbitrary data, as well as a bunch of fixed data, over the network when we send events. | ||
200 | Listen events are common? | ||
201 | collision, land_collision, not_at_*_target , and touch might be ongoing? | ||
202 | llCollisionFilter(string name, id, integer accept) | ||
203 | llTarget(vector position, float range) | ||
204 | llTargetRemove(integer number) | ||
205 | llVolumeDetect(integer detect) | ||
206 | Sensor and no_sensor might be common, but you request those, your silly fault, they have filters though. | ||
207 | llSensor(string name, string id, integer type, float range, float arc) | ||
208 | llSensorRepeat(string name, string id, integer type, float range, float arc, float rate) | ||
209 | Event types can have filters? Events can be types? In otherwords, generic filter system, attach say filters to say events, etc. | ||
210 | Figure this all out as we go along. | ||
211 | |||
170 | LuaSL crashes | 212 | LuaSL crashes |
171 | ----------------- | 213 | ----------------- |
172 | 214 | ||