Делаю кликер на движке Unity. Возникла проблема с переполнением числа Int64. Использую много для чего этот тип данных, но пока столкнулся только с переполнением денег, то есть в инт64 помещается 9 квинтиллионов, а зарабатываю уже больше. Подумал и нашёл несколько путей решения: сбалансировать цены/заработок, использовать тип данных double или сделать другое представление числа. Подскажите пожалуйста как лучше? Или может другие пути решения? Насколько целесообразно использовать double?
FlyFuGame, ну типа того.
У вас будет массив приписок, типа: пустая K M B ......
Массив значений можно даже short
Ну и логика, 1000 это 1К, 1000К это 1М, 1000М это 1В и т.д.
Допустим последняя приписка будет условно E, но что если будет 1000E? Все правильно нужно делать доп логику генерарования приписок, типа 1000E это 1 E1, 1000 E1 это 1 E2 ....
Ну и можно реализовать всякие удобные методы, перегрузки операторов для работы с классом... Там уже по своему усмотрению
Создайте свой класс для этого. Классический BigInt, который можно реализовать на основе массива. Или можно хранить только значимую часть денег и префикс. Зачем вам знать сколько у вас копеек, если у вас из квинтилион рублей.