View Issue Details

Category
整備班:YAYA
SeveritymajorReproducibilityalways 
Status closed 
Summary0000259: Can't use string expansion to call functions in dic files loaded with DICLOAD
Description

When loading a dic file, functions in that dic file can't be called with embedded strings %()
It is still possible to run these functions through script input, but they don't return anything when displayed normally by the ghost.
It is also possible to run these functions with an embed tag, which is a decent workaround.

TagsNo tags attached.
Attach Tags

Activities

guest

2021-08-31 10:14

reporter  

dicload_test_v2.nar (512,866 bytes)

ponapalt

2021-08-31 10:53

administrator   ~0000625

When loading main.dic, YAYA can't find OnExtraTalk function, so %(OnExtraTalk) is replaced to empty string.
%(value) can't process functions/values dynamically. It's evaluated statically.

But there is a loophole : how about using EVAL ?

guest

2021-08-31 12:02

reporter   ~0000626

Ah, I understand now.
Yes, using EVAL makes it work as I wanted. I used a method similar to the one described on this page: http://emily.shillest.net/ayaya/index.php?cmd=read&page=Tips%2F%E9%AB%98%E9%80%9F%E5%8C%96&word=randomtalkex
I think I can make this work, it's a better workaround than using embed tags. Thanks!
I wonder if this information should be listed on the page for the DICLOAD function?

ponapalt

2021-08-31 12:33

administrator   ~0000629

Documented.

Issue History

Date Modified Username Field Change
2021-08-31 10:14 guest New Issue
2021-08-31 10:14 guest File Added: dicload_test_v2.nar
2021-08-31 10:48 ponapalt Assigned To => ponapalt
2021-08-31 10:48 ponapalt Status new => assigned
2021-08-31 10:53 ponapalt Status assigned => feedback
2021-08-31 10:53 ponapalt Note Added: 0000625
2021-08-31 12:02 guest Note Added: 0000626
2021-08-31 12:02 guest Status feedback => assigned
2021-08-31 12:33 ponapalt Status assigned => closed
2021-08-31 12:33 ponapalt Resolution open => no change required
2021-08-31 12:33 ponapalt Note Added: 0000629