SHOW:
|
|
- or go back to the newest paste.
1 | function newMonitoredVariable(name, value) | |
2 | Runtime:dispatchEvent{name="Variable"; variable=name, value=value} | |
3 | return function(...) | |
4 | if select('#', ...) == 0 then | |
5 | return value | |
6 | end | |
7 | local old = value | |
8 | value = ... | |
9 | Runtime:dispatchEvent{name="Variable"; variable=name, value=value, oldValue=old} | |
10 | return old | |
11 | end | |
12 | end | |
13 | ||
14 | - | Runtime:addEventListener("Variable", function (event) _G[event.variable] = value end) |
14 | + | Runtime:addEventListener("Variable", function (event) _G[event.variable] = event.value end) |
15 | ||
16 | set_fnord = newMonitoredVariable("fnord", 5) | |
17 | ||
18 | print(fnord) -- prints 5 | |
19 | ||
20 | set_fnord("kumquat") | |
21 | ||
22 | print(fnord) -- prints kumquat |