04-21-2021, 03:06 PM
Thanks.
I had gotten it to work by adding neutral pieces and checking Each group them by the selected sites to see if they also included perimeter sites. Your above code will be much easier.
(do (forEach Piece
(do ...
ifAfterwards:(not (can Move(...))
)
(then
(
(do (forEach ...
(select
(from (...)
if:(can Move
(do (...)
next:(do
(...)
ifAfterwards:(
<problem in here>
))))))
(<remove pieces>
))
ifAfterwards:(... <but don't, if the site removed was the same site as was added> )
))
I also ran into problems with
My guessing it was too much ifAfterwards for the program to keep straight, and it would not compile. - I will wait for your new release which can simplify many of these steps, and has other bug fixes, and then tell you if I still have any problems.
I had gotten it to work by adding neutral pieces and checking Each group them by the selected sites to see if they also included perimeter sites. Your above code will be much easier.
(do (forEach Piece
(do ...
ifAfterwards:(not (can Move(...))
)
(then
(
(do (forEach ...
(select
(from (...)
if:(can Move
(do (...)
next:(do
(...)
ifAfterwards:(
<problem in here>
))))))
(<remove pieces>
))
ifAfterwards:(... <but don't, if the site removed was the same site as was added> )
))
I also ran into problems with
My guessing it was too much ifAfterwards for the program to keep straight, and it would not compile. - I will wait for your new release which can simplify many of these steps, and has other bug fixes, and then tell you if I still have any problems.