05-29-2022, 05:32 AM
The next:(and ("UpdateKing" Mover) ("UpdateKing" Next)) suggestion should have worked - But after the "next:" maybe it should be next:(or ("UpdateKing" Mover) ("UpdateKing" Next)) instead to allow one to fail? I have often wondered about (or <non-decision moves>) and whether it means and/or in this usage.
I often have problems with this kind of structure, and one thing that might work that I have used is
next:(priority
{
("UpdateKing" Mover
(then ("UpdateKing" Next))
)
("UpdateKing" Mover)
("UpdateKing" Next)
}
)
i.e I construct my own and/or -- if you can't update both then update one or the other...
-- Well usually I uses this for doing something for everything (eg scoring) after something that might fail.
The method of adding in a dummy action that must always occur into your ("UpdateKing" ...) function might also work, but might be unreliable and obscure for debugging... e.g. what if the compiler sees it as redundant and rejects it or strips it out?
I hope I am making sense here.
I often have problems with this kind of structure, and one thing that might work that I have used is
next:(priority
{
("UpdateKing" Mover
(then ("UpdateKing" Next))
)
("UpdateKing" Mover)
("UpdateKing" Next)
}
)
i.e I construct my own and/or -- if you can't update both then update one or the other...
-- Well usually I uses this for doing something for everything (eg scoring) after something that might fail.
The method of adding in a dummy action that must always occur into your ("UpdateKing" ...) function might also work, but might be unreliable and obscure for debugging... e.g. what if the compiler sees it as redundant and rejects it or strips it out?
I hope I am making sense here.