15:22 - проверка if(t_placed) там точно нужна? Всё равно вызов спавна будет однократно при генерации карты.
@DobinSergei11 ай бұрын
10:23 - там можно избавиться от однотипных проверок для каждого знака на карте: ... else if(map[y][x] == 't') mvaddch(y, x, 't'); И т.д. Вместо них можно одной строкой: mvaddch(y, x, map[y][x]);
@aljay85702 жыл бұрын
генерируем разные типы монстров, пожалуйста)))) только не с Джоном Кармаком ............
@MultiMomogo2 жыл бұрын
На первой минуте... Локальная переменная "с" обьявленная в функции game_loop не имеет никакого отношения к переменной "с" в main. Ты пытаешься ее проверять без инициализации. Так что нет ничего забавного и удивительного в том что компайлер выдает предупреждение. В точке проверки "с"может иметь любое произвольное значение, и с большой вероятностью отличное от нуля. Наверное поэтому все работает (кстати непонятно, когда ты ожидаешь что "с" будет равна 0?). Зачем такой замысловатый параметр char(*map)[cols] в определении функции? Что ты хочешь туда передать? Не проще ли написать просто char* map? Короче, не вдаваясь в идею, это только первое, чисто визуальное впечатление, то что бросается в глаза. Похоже предстоит еще большая работа. :))
@webpomosh2 жыл бұрын
чтобы понять о чем речь, нужно-таки вдаваться) иначе ты начинаешь демонстрировать эффект Даннинга-Крюгера. если разберешься в предметной области немного и войдешь в тему - тогда станет понятно, что массив map двумерный и char* map'ом он не передастся. насчет переменной с - посмотри прошлое видео и станет понятно, откуда растут уши и о чем я говорил тут.
@MultiMomogo2 жыл бұрын
@@webpomosh Да, насчет двумерного массива ты абсолютно прав. Это я лоханулся, невнимательно посмотрел. :) Хотя, если очень хочется, можно передать и только пойнтер, у тебя есть ширина массива, и получать доступ к данным можно через простые вычисления или используя макро. Так будет точно работать с любой версией С. Или просто написать параметр в более наглядний форме, типа char map[][cols]. В общем я не собирался тебя подкалывать, если хочешь, можешь все это стереть. Я не обижусь. :))