2016-08-12 5 views
0

Я хочу таймер, который не засчитывается каждую секунду. я хочу, чтобы он работал медленнеемедленный таймер для часов

timer = timer + Time.deltaTime; 
    int itimer = (int)timer; 
    int minutes = itimer % 60; 
    int hours = itimer/60; 
    string time = hours.ToString() + ":" + minutes.ToString().PadLeft(2, '0'); 

это код. часы в настоящее время начинаются в 19:20, и я хочу, чтобы минутный счетчик поднимался каждые 4 секунды или что-то в этом роде (мне все же приходится вычислять точный тайм-аут). Я попытался сделать «Time.deltaTime * 0.9», но код не работает так. как я могу лучше всего замедлить это с помощью этого кода? также, когда это будет 20:00 (или 1200 до конверсии), я бы хотел, чтобы что-то произошло, поэтому мне все еще нужен доступ к этому номеру спасибо

+0

потому что вы говорите о 'Time.deltaTime'. Я предполагаю, что вы работаете с union3d, не забудьте включить соответствующие теги при задании вопроса. –

+0

Просто запустите таймер, который проходит через секунду, и у вас есть DateTime, где вы сохраняете свое время начала. На каждом событии таймера просто вызовите метод даты и времени AddMilliseconds() и добавьте несколько (сколько угодно) больше миллисексудов, чем 1000 –

+0

Вы сказали * «но код не работает» * Что произошло, когда вы пытались, как было неправильное поведение? Также @ ThomasVoß это единство, он не говорит о реальном времени настенных часов, а в игровом времени. И это время игры, когда 1 секунда часов на стене = 1 минута в игровом времени. –

ответ

1

Вероятно, проблема была у вас была ошибка при отправке при попытке присвоить результат возвращается к timer. Это потому, что по умолчанию, когда вы сделали 0.9, он сделал это как double, и ваша переменная timer была плавающей. Добавьте f в конец номера, чтобы отметить его поплавок, и он должен работать.

timer = timer + Time.deltaTime * 0.9f; 
int itimer = (int)timer; 
int minutes = itimer % 60; 
int hours = itimer/60; 
string time = hours.ToString() + ":" + minutes.ToString().PadLeft(2, '0'); 
+0

ohh !! да! это, наверное, так. как я мог забыть об этом. я чувствую себя таким манекеном, чтобы расспрашивать прямо сейчас. я сожалею о том, что беспокою всех, кто читал это. я должен был знать это –

Смежные вопросы