здарова,господа. есть короче проблема с С++(там присутствует библиотека SFML),понимаю, что тут этот тред загнется быстро, но хотя бы спросил). По дипломке тема разработка тетриса, мне бы как то сюда в код запихнуть счетчик очков и Game Over.Буду признателен в помощи Сам код: #include <SFML/Graphics.hpp> #include <time.h> using namespace sf;
const int M = 20; const int N = 10;
int field[M][N] = {0};
struct Point {int x,y; } a[4], b[4];
int figures[7][4] = { 1,3,5,7, // I 2,4,5,7, // Z 3,5,4,6, // S 3,5,4,7, // T 2,3,5,7, // L 3,5,7,6, // J 2,3,4,5, // O };
bool check() { for (int i=0;i<4;i++) if (a.x<0 || a.x>=N || a.y>=M) return 0; else if (field[a.y][a.x]) return 0;
return 1; };
int main() { srand(time(0));
RenderWindow window(VideoMode(320, 480), "The Game!");
int dx=0; bool rotate=0; int colorNum=1; float timer=0,delay=0.3;
Clock clock;
while (window.isOpen()) { float time = clock.getElapsedTime().asSeconds(); clock.restart(); timer+=time;
Event e; while (window.pollEvent(e)) { if (e.type == Event::Closed) window.close();
if (e.type == Event::KeyPressed) if (e.key.code==Keyboard::Up) rotate=true; else if (e.key.code==Keyboard::Left) dx=-1; else if (e.key.code==Keyboard::Right) dx=1; }
if (Keyboard::isKeyPressed(Keyboard::Down)) delay=0.05;
//// <- Move -> /// for (int i=0;i<4;i++) { b=a; a.x+=dx; } if (!check()) for (int i=0;i<4;i++) a=b;
//////Rotate////// if (rotate) { Point p = a[1]; //center of rotation for (int i=0;i<4;i++) { int x = a.y-p.y; int y = a.x-p.x; a.x = p.x - x; a.y = p.y + y; } if (!check()) for (int i=0;i<4;i++) a=b; }
///////Tick////// if (timer>delay) { for (int i=0;i<4;i++) { b=a; a.y+=1; }
if (!check()) { for (int i=0;i<4;i++) field[b.y][b.x]=colorNum;
colorNum=1+rand()%7; int n=rand()%7; for (int i=0;i<4;i++) { a.x = figures[n] % 2; a.y = figures[n] / 2; } }
timer=0; }
///////check lines////////// int k=M-1; for (int i=M-1;i>0;i--) { int count=0; for (int j=0;j<N;j++) { if (field[j]) count++; field[k][j]=field[j]; } if (count<N) k--; }
>>231311751 (OP) Хихи, сколько тебя учили, что ты такой всратый код пишешь? Плюсы - реально способ отличить нормального человека от говнокодера. Да еще и на диплом, пиздец. Я над своим полгода каждый день по пару часов думал.
>>231313161 Я помню за одну бессоную ночь успел написать на sdl 2d игру, типа закати шар в лунку и не обосрись, т.к. двигать назад нельзя шар, только вперед (я хз как называется этот тип игр). Т.к. на эту лабу давали неделю, то у других было даже с всратым но 3d раннеры всякие или кастрированные стратежки, а-ля варик 3 с фиксированной картой и одним героем и 10 врагов., Но мне поставили зачет, знатно я тогда проигрывал над другими, что неделя ебланства и всего 5 часов на кофе дали результат как у их великих "шедевров".
>>231313648 >знатно я тогда проигрывал над другими, что неделя ебланства и всего 5 часов на кофе дали результат как у их великих "шедевров".
А чего ты проигрывал? С того, что люди потратили на изучение темы неделю и получили больше знаний, а ты сколотил хуйню за 5 часов и сдал зачет? Мог бы просто диплом купить в переходе, знатно бы проигрывал, что ебланы по 5 лет тратят)
>>231313825 Чувак, это был второй курс, от нас требовалось написать самому что-то, т.к. препод проводил типа код-ревью, спрашивал почему так реализовал, а не так, что за вотэ та часть кода и зачем, т.е. банально проверить, что ты сам уже пишешь на Си проги, а не копируешь с инета. А одногруппники уверен 90% времени не получали знания, а ебались с проблемами грфических библиотек, пытались освоить узкоспециализированные вещи (типа алгоритм поиска путей, шейдеры, 3d-моделинг и т.д.). Мне это нахуй не всралось, кстати наверно поэтому я сейчас микроконтроллерщик, прошиваю пики для насосного оборудования лол. А дногруппники наверно мобильные игры делают, сука, у меня теперь багор от тебя, пидор.
>>231314058 >>231314085 >>231314103 Да я же просто рыбачу. Делать мне нехуй просто, хочу чтобы он агрился на меня, боевые картинки кидал, тред вайпал. Оп на самом деле красавец, респект таким пацанам.
>>231314441 ну я это знаю, один хуй, мне нужен диплом что бы на вышку вылезть, но диплом по программированию пригодится, мне с++ не нужен, проще на питоне лабать
>>231314703 как вариант,HTML и CSS отлично знаю, потому что со школы учу, сами преподы радовались(помогали вкатиться), когда увидели, что я занимаюсь этим
>>231312592 Не слушай дебила Сам окончил шарагу, теперь разрабатываю говняк за 100к/месяц. Тут скорее вопрос мотивации и целей А английский нахуй не нужен в реалиях России. Максимум только для названия сущностей понадобится, и то можно через переводчик бахнуть
>>231312942 Использовать ООП в проекте одного человека на 130 строк - это как раз показатель зеленого ньюфага, который где-то услышал что ООП полезно, а уточнять где именно оно полезно не стал.
//Переменная для подсчета очков int o4ko = 0; std::ostringstream o4ko_str; // //---------------------------------------------------------- Увеличение очков: Вместо if (count<N) k--; пиши if (count < N) { k--; } else { o4ko++; //Увеличиваем очки o4ko_str.str(""); //Сбрасываем строку o4ko_str << o4ko; //Заносим в строку число } //----------------------------------------------------------- Перед отрисовкой: --window.draw(frame);
//Отрисовка очков o4ko_str << o4ko; text.setString(o4ko_str.str()); window.draw(text);
>>231319767 Схуяли? ОП-а возьмут максимум SEO-блядью, или тестировщиком, это самые дно вакансии в ИТ. Университетобляди троешники как минимум будут php-быдлокодерами, а краснодипломники в яндексе или гугле работать. Так устроена жизнь.
>>231320439 короче дело было так, я с военкомата ехал , и опаздал на пару, зашел в кабинет, препод сразу: а мы тут темы для диплома выбирает(ехидно улыбаясь).Твоя #N и претензии не принимаются
>>231314647 >мне с++ не нужен, проще на питоне лабать Ты думаешь такое питоноговно, без знания базы, где-то нужно? Ты же подключишь 25 библиотек и создашь 200 потоков, а потом будешь не понимать, схуя нихуя не пашет, ведь не сидел на лекциях по низкоуровневому устройству современных процессоров, не писал хоть и hello world на ассемблере, и не решал дилемму брадобрея из тома Таненбаумама.
>>231320887 насчет дилемму брадобрея из тома Таненбаумама.(и в правду не решал),hello world на ассемблере не написать-это кем надо быть:? о процессорах как они устроены, я думаю и школотроны знают
>>231321082 Когда идет запись в разделяемую память которая доступна двум ядрам процессора в момент выполнения многопоточного кода, кэш первого уровня сбрасывается в оперативную память или в кэш второго уровня?
>>231321561 Ну, подумаешь, не угадал. Я ведь даже не знаю, чем л1 от л2 отличается а ведь нам наверняка об этом рассказывали, надо было слушать Респект за вопрос с подвохом, люблю такое
>>231321774 Наш препод обожал такие хуйни выдумывать, при чем стоит поменять "двум ядрам процессора" на "двум ядрам процессоров" и уже межпроцессорное взаимодействие начинается, а значит кеш-линии помечаются по другому, идет обмен актуальности данных в них и совсем другой ответ. Поэтому вопрос по 10 раз приходилось перечитывать.
>>231322089 И как, считаешь себя достаточно подготовленным специалистом? Ну или считал на тот момент, если выпустился давно. Я то учусь еще, буду, похоже, 1С ставить.
>>231322180 Подготовленным в чем? В разработке многопоточных приложений? Нихуя не подготовлен, просто помню основы с универа, как и все одногруппники. Понимаешь, сфера ИТ - это быть вечным студентом. Нельзя один раз выучить ЯП и успокоиться. Это никому не нужно. Если хочешь делать игры, даже на мобилы, дрочишь линукс, андроид, джаву, с++, опенгл, шейдеры и т.д. Если хочешь работать в стартапе по распознаванию ебал из вконтактика, то вот как раз дрочишь архитектуру компов, низкоуровневое программирование, популярные библиотеки распарралеливания от всяких IBM, а потом еще и на видюхах можно парралелить, там тоже ньюансы ебовые. Понимаешь? Я работаю байтоёбом, втискивая максимум функционала с минимумом энергопотребления в микрочипы, меня устраивает, но все равно учиться надо, выходят новые чипы, щас уже на stm-ки все переходят, там новый датащиты надо чекать, новые подводные камни в их библиотеках обнаруживать и справляться с ними. Вечно идет обучение, никогда нет состояния "я бох и некуда расти".
>>231322516 Да, мне следовало уточнить, в чем именно. По поводу вечного обучения - спасибо, учту. Я что-то такое подозревал, видя то огромное количество новых фреймворков, но не подозревал масштабов. Байтоебство, кстати, ненавижу и боюсь, а от того безмерно уважаю. Спасибо и спокойной ночи <3
>>231322180 Не так прочел, лол. Когда выпустился, я php-макакой джунил 2 года, лол. Потом уже AS3 кодером был года 4 (флеш померший), а потом ушел в микроконтроллеры. Поэтому ничего страшного, стаить 1С пару лет пока зеленый, главное параллельно повышать скилл в чем-то другом.