08-29-2022, 02:15 AM
(This post was last modified: 08-29-2022, 02:16 AM by dale walton.)
Does every move X ludeme handle consequences the same way? i.e. if there is a conditional apply in X where some action Y is taken if condition Z is true, is Move X handled the same way when Z is false for all X, Y, and Z? e.g. (forEach) has a NoMovesYet parameter..., but do some combinations default to executing the move without the condition, or is it consistently not executed?
How about for (and) ?
My understanding of (seq) is that it is a shortcut for concatenating move ... then ... move ... then ... move... constructions - which can make it easier to construct defines, but still enforces dependency. I don't know if this is correct. It could be helpful to have an "(ifPossible" <move> <then>) ludeme to use within a consequence chain. - I perhaps could use (priority {1 argument} (then ...)) for this purpose, or if not at least: (priority (1 argument (then (or {the others}))) (or {the others}) but that is not what priority is intended for I think.
-- I understand the intent of the language is to encourage script designs that can be parallelized as much as possible when compiled, but some games do need this kind of option.
How about for (and) ?
My understanding of (seq) is that it is a shortcut for concatenating move ... then ... move ... then ... move... constructions - which can make it easier to construct defines, but still enforces dependency. I don't know if this is correct. It could be helpful to have an "(ifPossible" <move> <then>) ludeme to use within a consequence chain. - I perhaps could use (priority {1 argument} (then ...)) for this purpose, or if not at least: (priority (1 argument (then (or {the others}))) (or {the others}) but that is not what priority is intended for I think.
-- I understand the intent of the language is to encourage script designs that can be parallelized as much as possible when compiled, but some games do need this kind of option.