Ох уж эти доморощенные оптимизаторы, которые гоняться за скоростью там, где совершенно не нужно.
Вы знаете какое различие в скорости обработки машиной тернарных условий и логических? Десятые, а то и сотые доли микросекунд. Много от такого "прироста" толку будет в коде, который будет вызываться раз в несколько минут? При этом вам этот код ещё читать через неделю-месяц-год. И потратите вы на его разбор явно больше, чем на разбор обычных логических условий. И ошибок в написании наделаете гораздо больше (тех самых, что уже делаете).
Действительно ли те доли микросекунд, которые просто затеряются в интервалах вызова кода, стоит того времени, которое вы будете тратить на чтение и исправление ошибок? Сейчас вы занимаетесь чистейшим извращением и пессимизацией. Подобное уместно будет только в случае, когда код вызывается очень часто и постоянно. Например, в OnPlayerUpdate или же каком-нибудь секундном таймере с БОЛЬШИМИ и СЛОЖНЫМИ вычислениями. А какой толк от того, что какая-нибудь команда, которую игроки вызывают раз в 10 минут, будет срабатывать на 0.002 микросекунды быстрее?
В общем, прирост к скорости настолько мал, что тут решается больше вопрос скорости программиста: прочитать, понять, исправить или доработать код, - чем производительности процесса.
И да, вы совсем не поняли предназначения тернарного оператора. Он создан для упрощения простых условий, а-ля
PHP код:
if(Optimization == 1) Optimize = true;
else Optimize = false;
и
PHP код:
Optimize = (Optimization ? true : false);
Тут действительно и читаемость не теряется, и код выглядит более красиво. В вашем же случае это полное извращение над теми, кто будет работать с вашим кодом в дальнейшем (в том числе и над собой вы издеваетесь). Не занимайтесь ерундой.