#c# #unity3d
#c# #unity-game-engine
Вопрос:
я пытаюсь запрограммировать простую игру в кости для мобильных устройств в unity с c # (она называется 10000, может быть, вы это знаете).
В игре у вас есть 6 кубиков, которые вы получаете, когда бросаете например три раза по 6 600 очков, четыре раза по 3 3000 очков и так далее.
Вот почему я должен проверить, есть ли по крайней мере 3 кубика с одинаковым номером, а с Mathf.Approximately
и большим количеством if код был бы действительно уродливым и длинным.
Итак, какой самый простой способ обойти эту проблему?
Комментарии:
1. используйте
int
вместо
Ответ №1:
// cubes values
int[] values = new int[6]
{
3, 4, 3, 6, 1, 3
};
// group values (key => value, value => count key)
var group = values.GroupBy(v => v);
// if there are 3 or more identical cubes
if (group.Any(g => g.Count() >= 3))
{
}