[I6]: Shorthand for "return mysub()"?

Hi all,

I’m trying to make an I6 game bilingual and hence have to filter most of the text output through a sub which is fed with both language versions, like

display("Achtung, Kleinkind!", "Watch out, baby!");

Now, if I want to use that within an action rule, I have to precede this with a “return” or such to make sure the code execution is ended here.

Since obviously there is a large number of such calls required, is there a shortcut for this? I think of something like “<< … >>” (which will obviously not work in this case), or the standard

"bla bla"

as a shorthand for

print "bla bla"; return true; .

Is there such a beast?

TIA,

syzygy

My I6 is long past rusty, but how about (untested):

if display("Achtung, Kleinkind!", "Watch out, baby!") rtrue;

No, there’s no shortcut like that for function calls.

Thanks for the advice!

I also take it the “preprocessor” of I6 isn’t powerful enough to allow something like

#define short(x, y)   display(x, y); return true

Right?

syzygy

Nope, sorry. There is no macro facility.

I6 doesn’t have a separate preprocessor stage. “ifdef” and “include” are language directives on the same level as “constant” or “verb”. Yes, this means that the lexer is tangled up with the language definition in a way that makes everything complicated and awful.