65 36 438
24
ADOLF, конкретно с дебугом не разу проблем не было, но ок.
32
А я еще раз объясняю, что нельзя давать макросу имя debug. И возникновение ошибок зависит от того, ставится ли пробел после макроса и перед скобкой, или нет. Давай продолжим разговор, когда Вы переименуете корректно макрос, и в случае возникновения ошибок выложите сюда (прикрепите к сообщению) карту, которая их вызывает.
24
/o\ еще раз говорю, debug допустим, все с работает. Не работает только если добавить FUNCNAME. Что касается кавычек, то да, форум запарывает.
Ну что сказать, написал так:
#define debug(s) = 
{
    #if Debug && LocalDebug
        DebugLog_LogAdd("[" + `FUNCNAME` + "]" + s);
        #if ShowDebugLogInGame
            BJDebugMsg("[" + `FUNCNAME` + "]" + DebugLog_GetCurrentTime() +": " + s);
        #endif 
    #endif
}
Заработало :nate:
38
Нет там никаких криворукостей.
В движке сайта...
xgm.ru/p/wc3/ifdebug-2 вот тут видишь всё ок
32
Во-первых, еще раз объясняю, что слово debug нельзя использовать как имя макроса. Да, это мой косяк, что я не сделал проверку на допустимость имени.
Во-вторых, в cJass предусмотрен стандартный макрос DEBUG, который принимает значение true если установлен флаг в редакторе, и рекомендуется использовать именно его.
В третьих по ссылке я нашел не компилируемый код. Причина - для обрамления строк используется два символа '' место требуемых "". Интересно, это новая фишка от криворуких разработчиков движка сайта? В любом случае, дайте мне карту, которую я просто смогу запустить на отладку.
24
ADOLF, тут не самая свежая версия, но все же там все хорошо продемонстрировано.
24
Господа, вы упороты. Без FUNCNAME все пашет отлично ._.
38
у тебя #if в теле дефайна балда, сколько раз можно говорить, что ты творишь неведомую хурму?)
24
ADOLF, хорошо, как это связанно с тем, что при добавлении в конструкцию: FUNCNAME парсер падает.