Как стать автором
Обновить

Комментарии 7

Это же ужас какой-то, вы же с логическими операциями и их применением вообще не снакомы получается. Вы вместо любой логической операции просто тупо пишите конструкцию с IF-ами.

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

Вы про битовые операторы и битовые маски?

На скриншоте их как раз и используют:

Пожалуйста, укажите проблемное место и предложите своё решение.

Я мимокрокодил, но малость интересуюсь С\C++ и геймдевом.

На скриншоте их как раз и используют:

у меня же ясно написано "конструкции с IF-ами", вы дальше почему постеснялись картинку продемонстрировать? Вы понимаете что хотел получить автор этими IF-ами? -я конечно могу догадаться, проблема в том что если надо догадываться, это значит и сам автор до конца не понимал что он пишет.

Пожалуйста, укажите проблемное место и предложите своё решение.

Я не могу предлагать решение, когда до конца не известны условия задачи.

В общем решение в том что задачу надо четко-однозначно формулировать сначала и только потом пытаться ее решать.

Не вижу проблемы. Автор объявил константу с понятным названием. При чтении кода становится сразу понятно что подразумевает под собой переменная/константа.

Правильно ли понимаю, что Вы предлагаете писать примерно так:

if (buttons & kButtonUp && buttons & kButtonLeft) ...

Вместо

if (upIsPressed && leftIsPressed) ...

AnyArrowIsPressed можно было реализовать через

buttons != 0

вместо этих плясок с миллионом одинаковых проверок. Туда же и дебильный enum для направления, вместо того чтобы просто использовать struct с направлением и записывать всё в него

может он говорит про условие `if (spawnAtTheLeftEdge)`

его можно заменить на

```

sign = spawnAtTheLeftEdge - 1 | 1

```

и в тело добавить умножение на sign, это уберет условие.

Критикуя, предлагают обычно.

Вполне наглядный код как по мне.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации