Вы программиста с продюсером и геймдизайнером не путайте.
Программисту ни история, ни география не нужны - это задачи геймдизайнера и продюсера - проработать предметную область.
PopTop, PlayerPrefs.Save вызовите дополнительно. И учитесь пользоваться отладчиком - смотрите что и куда у вас пишет.
Ошибка если и есть - то она логическая
PopTop, Заметте - из вашего кода непонятно как часто вызывается OnClick. Если не часто - не каждый кадр/действие юзера - то и пес с ним, пускай сохраняет