Hey, I think you're right! That would explain why overwriting works, but not deleting.
It didn't even cross my mind. So to clear an array of certain entries, you can't write:
----
Array -> For each X element
Array -> If value at CurX = 1 ... Delete index CurX from X axis
----
because the element index number is out of sync with the entries?
I suppose you'd have to use loops and a variable that keeps up with the deleting of entries?