refactor set_tile update_tile
fix conflicts