08-19-2021, 07:17 AM
(This post was last modified: 08-19-2021, 07:23 AM by dale walton.)
Sorry, this should have been posted in player problems section...
I checked, and I see that the diagonals and maybe other code is double executing, which might be causing performance penalties. I don't know why it is happening, but I do know the script seems to be fragile and small changes to the structure cause it to fail.
To illustrate the double diagonals I am attaching a version that uses apply instead of and when adding diagonals and setting there direction. See the "ApplyInsteadOfAnd" define
In this case, the states are set before placement (I assume because that is the logic "remove" requires) - The result is the first state is ignored then the diagonal is placed, then the second state execution occurs then another diagonal is placed without a subsequent state update, leaving that one in state 0 - So, then it is easy to see that these actions are executing twice because they don't overlap.
But I don't know where this doubling of consequences is creeping in. It is in the implemented version, but not too visible (it just makes the diagonals look darker than the other connections because the connecting pieces are transparent.)
I checked, and I see that the diagonals and maybe other code is double executing, which might be causing performance penalties. I don't know why it is happening, but I do know the script seems to be fragile and small changes to the structure cause it to fail.
To illustrate the double diagonals I am attaching a version that uses apply instead of and when adding diagonals and setting there direction. See the "ApplyInsteadOfAnd" define
In this case, the states are set before placement (I assume because that is the logic "remove" requires) - The result is the first state is ignored then the diagonal is placed, then the second state execution occurs then another diagonal is placed without a subsequent state update, leaving that one in state 0 - So, then it is easy to see that these actions are executing twice because they don't overlap.
But I don't know where this doubling of consequences is creeping in. It is in the implemented version, but not too visible (it just makes the diagonals look darker than the other connections because the connecting pieces are transparent.)