more piece move logic