Как мне правильно написать код

Всем привет. Нужна помощь от владеющих C#.

77

Наверно повторюсь во многом, но вот что приходит лично мне в голову.
Ты упомянул, что данный код - лишь часть программы, поэтому исходя из того, что ты привел:

Во-первых, у тебя логика перемешана с данными, так лучше не делать. Вынеси и храни перки где-то в другом месте, лучше вообще в каком-нибудь json, который можно поменять без необходимости собирать программу заново.

Да, нет необходимости гонять циклы, просто бери элемент по рандомному индексу. Я бы добавил приватный метод. который принимает на вход массив и возвращает\выводит рандомный элемент из него.

Не очень понятно, где применяется haveInfluence, ты говоришь, что должен браться всегда один перк, который имеет влияние и остальные без.

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

Нужна ли тебе группировка по цвету вовсе - тоже тяжело сказать.

По поводу Dictionary, ты можешь использовать для ассоциации цвет => перки, но мне кажется это меньшая из проблем.

2
Ответить