C # Unity 3D добавляет точку каждый полный оборот - PullRequest
0 голосов
/ 28 сентября 2018

Итак, я около часа искал решение своей проблемы, но пока не нашел, поэтому нахожусь здесь.Моя проблема в том, что я хочу посчитать, сколько полных вращений я делаю, у меня есть вращающийся объект, и при каждом полном вращении я хочу сохранить счет, я не могу рассчитать время, которое требуется, и затем добавить очки на этом, потому что скоростьвращающегося объекта будет постоянно меняться, так что не будет работать.В идеале я также смог бы изменить угол, под которым вы набираете очко.Или, скажем, каждые 1 градус, который я поворачиваю, это добавило бы точку на это, все, что я хотел бы просто посчитать, сколько раз я повернул.Любая помощь будет принята с благодарностью.

1 Ответ

0 голосов
/ 28 сентября 2018

Вы можете получить текущее вращение xy или z от вашего игрового объекта, а затем в обновлении вы можете посмотреть, вращалось ли оно.Пример для 10 единиц за одну точку:

  1. Ваш игровой объект имеет вращение равное 20 - сохраните это значение в переменной с именем rot вне метода обновления.

  2. Обновление называется.Вращение ваших игровых объектов теперь 25 - в обновлении вы смотрите, подходит ли 10 в 25 - гниль.25 - гниль 5 - значит не подходит.

  3. Обновление вызвано.Вращение вашего игрового объекта теперь 42 - вычислите: 42 - гниль равна 22. Вы видите, что она подходит.Теперь посчитайте, сколько раз 10 соответствует 22. Это подходит 2 раза.Поэтому добавьте 2 балла к баллу.Теперь установите гниль равной старому значению гнили плюс 2 раза 10.

...