fixed piece movement check causation bug