zxt:extension:00000000:0001
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
zxt:extension:00000000:0001 [2021/03/11 22:10] – asie | zxt:extension:00000000:0001 [2021/08/06 22:26] (current) – asie | ||
---|---|---|---|
Line 1: | Line 1: | ||
{{tag> | {{tag> | ||
- | ====== 00000000: | + | ====== 00000000: |
===== Information ===== | ===== Information ===== | ||
Line 13: | Line 13: | ||
| reading_must | MUST NOT | | | | reading_must | MUST NOT | | | ||
| writing_must | MUST NOT | | | | writing_must | MUST NOT | | | ||
- | | playing_should | MAY | If any extensions | + | | playing_should | MAY | If any #IFEXT calls are used in Objects with the described caveat |
- | | playing_must | MAY | If you're only using the #ifext portion, without #unlock extensions checks. | | + | | playing_must | MAY | If any #IFEXT calls are used in Objects. | |
| editing_should | MUST NOT | | | | editing_should | MUST NOT | | | ||
Line 23: | Line 23: | ||
===== Description ===== | ===== Description ===== | ||
- | This extension adds two OOP commands | + | This extension adds an OOP command |
- | * ''# | + | Keep in mind that to support |
- | * A new command, '' | + | |
- | The idea is that ''# | + | ===== Example usage ===== |
- | ==== Example usage ==== | + | ==== Simple scenario |
< | < | ||
- | #unlock extensions foundone | + | #ifext 00000000 0001 found |
+ | :found | ||
+ | Extensions found! | ||
+ | #end | ||
+ | :ifext | ||
Extensions not found. | Extensions not found. | ||
#end | #end | ||
- | :foundone | + | </ |
- | #ifext 00000000 0001 foundtwo | + | |
- | Unlock OK, but not ifext? - Should not happen | + | ==== Two touch codepaths ==== |
+ | |||
+ | < | ||
+ | @Interactive | ||
+ | #ifext 00000000 0001 zap touch | ||
+ | :ifext | ||
+ | #end | ||
+ | :touch | ||
+ | I found nothing... | ||
+ | #end | ||
+ | :touch | ||
+ | I found IFEXT support! | ||
#end | #end | ||
- | :foundtwo | ||
- | Unlock and ifext OK! Your implementation is correct. | ||
</ | </ | ||
- | ===== Implementations ===== | + | ==== Two touch codepaths (#BIND workaround) |
- | * [[https://github.com/OpenZoo/ | + | If the code above is bound, '' |
+ | |||
+ | < | ||
+ | @Interactive | ||
+ | #send init | ||
+ | #end | ||
+ | :init | ||
+ | #zap init | ||
+ | #ifext 00000000 0001 zap touch | ||
+ | :ifext | ||
+ | #end | ||
+ | :touch | ||
+ | I found nothing... | ||
+ | #end | ||
+ | :touch | ||
+ | I found IFEXT support! | ||
+ | #end | ||
+ | </code> | ||
+ | |||
+ | An alternative, more advanced technique is pre-setting the instruction pointer in an external editor. | ||
+ | |||
+ | ===== Implementations ===== |
zxt/extension/00000000/0001.1615500647.txt.gz · Last modified: 2021/03/11 22:10 by asie