ну ты даешь, такой полезный материал и бесплатно тебе огромное уважение что до сих пор бесплатно выкладываешь все что нужно и без воды и глупостей, желаю удачи и всего доброго, в русскоязычном ютубе ты один из лучших по IT курсам, если не лучший.
если кому-то интересно как реализовать что бы ходил король, то: в классе class King extends Figure ``` canMove(target: Cell): boolean { if(target.figure?.name === FigureNames.KING && target.figure?.color) console.log(target); if(!super.canMove(target)) return false; const isVerticalMove = (target.y === this.cell.y + 1 || target.y === this.cell.y - 1) && target.x === this.cell.x; const isHorizontalMove = (target.x === this.cell.x + 1 || target.x === this.cell.x - 1) && target.y === this.cell.y; const isLeftDiagonal = ( (target.x === this.cell.x + 1 && target.y === this.cell.y + 1) || (target.x === this.cell.x - 1 && target.y === this.cell.y - 1) ) const isRightDiagonal = ( (target.x === this.cell.x + 1 && target.y === this.cell.y - 1) || (target.x === this.cell.x - 1 && target.y === this.cell.y + 1) ) if(isVerticalMove || isHorizontalMove || isLeftDiagonal || isRightDiagonal) return true; return false; } ``` что бы запретить ходить на клетки которые под боем(для короля), то надо надо в class Cell реализовать такой метод: ``` whichCellsIsUnderAttack(target: Cell): any[] { /** * @info * получаем все клетки которые находятся под боем других фигур(противоположного цвета) * и потом когда ходит король, то сделать условие что клетка куда походит король - нету в этом массиве */ console.log(this.board.cells.length); return []; } ``` то есть условие например cellsUnderAttacckEnemy. findIndex(клеткаПодБоемПротивника => клеткаПодБоемПротивника.x === target.y && клеткаПодБоемПротивника.y === this.cell.y + 1) >= 0 (то это условие значит что клетка (target.x, this.cell.y + 1 - то есть на 1ну клетку вверх) если найдет индекс больше 0я или 0 - значит клетка есть в массиве) типо что-то такого к условию: ``` if(isVerticalMove || isHorizontalMove || isLeftDiagonal || isRightDiagonal) return true; ``` было честно лень реализовывать дальше) просто даю подсказку так же добавил координаты для каждой клетки и оси в верстке, так как сложно было ориентироватся, может кому-то поможет, ссылка на репу: гитХабТочкаКом/Shkulipa/ulbitv-oop-chess ссылка вставлять не буду, так как бывали моменты что коммент удалялся если в нем присутствывала ссылка надеюсь кому-то поможет накидайте плз. лайков что бы в топ вывести, и другие могли увидеть как хотя бы короля реализовать, спасибо Автору видео, как всего громаднешое спасибо за контент
Понимаю, что комментарий оставлен уже давно, так что отвечаю просто для всех новопришедших в комментарии) Гораздо более простая реализация движения короля: canMove(target: Cell): boolean { if (!super.canMove(target)) return false; const dx = Math.abs(this.cell.x - target.x); const dy = Math.abs(this.cell.y - target.y); return dx
Ты делаешь очень крутой контент, без лишних движений, очень чистый) Шахматы для меня пока слишком сложно, пойду смотреть прошлые уроки про реакт) спасибо
Сразу лайк, не глядя ставлю)) У тебя отличный контент! Много нового для себя узнаю, когда смотрю твои видео. Еще комменты ниже пролайкал, надеюсь, это поможет продвижению канала. Удачи!
Как же мне повезло начать изучать js одновременно со стартом этого канала. На столько плавного и эффективного обучения у меня в жизни никогда еще не было.
Очень рад, что в роликах стала появляться реклама, наконец хоть какое то денежное вознаграждение за твои труды)) Честно, не встречал ещё таких каналов, где так много годноты и очень полезных и простых в освоении уроков. Ты потрясающий учитель, ютубер и самое главное разработчик! Безумно счастлив, что когда то наткнулся на твой канал, ибо теперь с него вообще не слезаю)))
Спасибо за урок. Переписал проект, немного изменил стили и фигуры. Надо ещё подумать как: - Реализовать проход пешки в ферзи (ладью, слона и коня) - Взятие пешки на проходе (После первого хода на две клетки, пешку может взять вражеская пешка, пройдя за её "спиной" ) - Запрет хода, если ты этим ходом ты ставишь своего короля под удар - Рокировку в длинную и короткую сторону
Спасибо за уроки! Интересно было бы увидеть реализацию CRM-системы, со списками, напоминаниями, автоматическим удалением по истечению определённого времени
Закончил ещё одно прекрасное видео с тобой. Даже не знаю, как благодирить за такую практику. Делал все вместе с тобой, после окончания полез проверять коменты и гит, чтобы найти готовые ответы на оставщийся функционал, но ничего не смог найти, так что пришлось садиться делать все самому. Честно, по началу думал, что ничего не выйдет. По итогу сделал проверки на шах и мат, король научился ходить только на не битые поля и делать ракировку, добавил проверку на пат, а также победу по окончанию времени, также научил пешки превращаться в любую фигуру и добавил модальное окно выбора. Из внешних изменений добавил только мобильную версию, объявление шаха и модальные окна победы, пата и выбора фигуры для пешкию Если кому-то будет нужно, то вы можете взять код у меня в гите StasKobles (буду благодарен за звездочку). Тимур, ещё раз низкий поклон тебе за все, что ты делаешь. Твой канал это кладезь для меня P.S. Обещаю подписаться на твой бусти , как устроюсь на работу)
глянул твой код, реализация некоторых методов конечно оставляет желать лучшего, в плане читаемости, но все равно круто, что сделал сам. Еще интересно узнать, есть ли какие-то успехи спустя два года, например, нашел ли работу?)
Если ты так просишь, то он обязательно тебя возьмёт! Поосторожнее с шаблонными фразами, смысла которых ты недопонимаешь! В некоторых из них есть прямой запрос! А как известно, что просишь - то и получаешь!
Еще толком даже не начал изучать js, ну так, немного понимаю что есть слушатели события, циклы, переменные, ну в целом полнейший новичок :) Понял я примерно процентов 15 из этого ролика, НО! всю суть, и что вообще происходит в коде я как-будто бы понимал, благо объяснение можно сказать на пальцах. Не люблю часовые видео, но это видео просмотрел на одном дыхании. Спасибо, было очень интересно :)
Тимур, привет! Хочется сказать огромное спасибо за курсы, объяснения и идеи. Хотел бы тебя попросить, думаю остальные поддержат, в принципе ни в англоязычном ни в русскоязычном сегменте ютуба, еще не встречал курс, в котором на ванильном JS, пишут SPA-приложение, используя ООП-подход, паттерны, тестирование, архитектура, все в связке. Если бы у тебя вышел такой курс, было бы очень круто пройти его, возможно даже на TypeScript. Не знаю в каком это формате будет, но готов буду задонатить, либо оплатить курс. Кому интересна идея, поддержите комментарий лайком.
@@chupa00 а зачем себя ограничивать? Можно доки почитать, посмотреть видео, послушать подкаст с опытными программистами, почитать книжку. Но самое главное применить на практике)
Было бы интересно увидеть и послушать как ты рассуждаешь за архитектуру, как анализируешь задачу что уже сходу знаешь какую файловую структуру создавать
Спасибо огромное за курс. Попробовал все через styled-component сделать - так еще интереснее (хотя явно чувствуется - что это лишнее). Еще раз огромное спасибо автору! Дай Бог тебе здоровья!!!
Ипать, это очень круто. Очень доступно и интересно. Я долго не хотел смотреть это видео и делать этот проект из-за того, что думаю все устарело, а там вообще с этим никаких проблем. Еще и на ts, что вообще лбве ошибки на нет списывает. Спасибо🎉😮😊
Спасибо большое за данный видос. Давно хотел написать шахматы, а ты ещё тут и столько простора для фантазии, рефакторинга и доработок оставил, что по завершению проекта - джуновский пост точно должен ждать)
Было бы круто увидеть развитие этого проекта до полноценного приложения с сессией на два юзера. Помимо бека, заодно можно будет затронуть и реализацию websockets
ЗА ролик спасибо, НО есть конструктивная критика) Нету ни слова про оптимизацию. Каждый onSelect рендерит дважды каждую ячейку, т.е. 128 раз!!!, что ни есть круто. Т.е. реализация ООП прям норм, но работа с самим Реактом тут скорее антипоказательная. Я подрубил православнй Mobx и React.memo для клеток, ибо самому было лень делать весь функционал, теперь идет перерендер только тех клеток, которые меняют состояние. Если сделаешь продолжение, где средствами только Reacta будет мемоизация - то будет супер респект)
Я разработал свои шахматьі на Angular. Я бьіл удивлен, что мне достаточно бьіло 3-х строчек разметки!) Все DOM манипуляции - изменения CSS классов ячейки.
Спасибо. Мне очень понравилось. Отличный урок по Javascript, class Component, hooks, useState, useEffect, React, OOP, Typescript. Я прошла урок, буду теперь додумывать про короля, про "шах и мат" и прочее. Спасибо 🙂
Ulbi сделай пожалуйста, полный курс для начинающих программистов, то есть от начала и до тех твоих продвинутых видео. Чтобы с домашкой задачами и так далее. Пожалуйста, Ulbi.
Здравствуйте Спасибо большое за видео, очень интересно 39:50 "почему-то, при записи видео, добавили updateBoard. Он здесь не нужен" Как я понял, все же нужен: когда мы кликаем на фигуру, на доске отображаются доступные ячейки для хода. Когда мы передвинули фигуру, маркировка доступных ячеек все еще отображается А вот если делать updateBoard, после хода, вероятно, маркировка сбрасывается и доска снова "чистая"
Это было бы очень кстати если бы шахматы, как проект для изучения SOLID и Clean Architecture, был реализован вами на канале. Бесценнейший опыт. За видео огромное спасибо.
Если у вас такая ошибка Cannot find module '../../assets/black-king.png'., нужно создать файл react-app-env.d.ts в папке src с контентом: declare module "*.png"; declare module "*.svg"; declare module "*.jpeg"; declare module "*.jpg";
у русского фронт енд -кодерского сообщества новый король-мистер Улби) Материалы-мощь
Ждали, ждали! Курс по созданию шахмат на javascript typescript react ооп и еще больше больше слов для продвижения ролика в рекоммендации
Продвигаем видосик в рекомендации!
ну ты даешь, такой полезный материал и бесплатно тебе огромное уважение что до сих пор бесплатно выкладываешь все что нужно и без воды и глупостей, желаю удачи и всего доброго, в русскоязычном ютубе ты один из лучших по IT курсам, если не лучший.
Тимур, ты идешь в историю со своим контентом. Я поражаюсь качеству твоего контента. Он безупречен.
ну меня немного тригернуло генерация id через math.random. А так спасибо за контент.
@@TsArtemi частенько через new Date делают
Наконец то новое видео) Улби лучший! Продвигаем видосик в рекомендации!
Оооо, крутяк, я так хотел чтобы они появились на канале)
Ну тут лайк не глядя. Когда слышу твой голос, понимаю - следующие несколько часов пройдут офигенно
если кому-то интересно как реализовать что бы ходил король, то:
в классе class King extends Figure
```
canMove(target: Cell): boolean {
if(target.figure?.name === FigureNames.KING && target.figure?.color) console.log(target);
if(!super.canMove(target)) return false;
const isVerticalMove = (target.y === this.cell.y + 1 || target.y === this.cell.y - 1) && target.x === this.cell.x;
const isHorizontalMove = (target.x === this.cell.x + 1 || target.x === this.cell.x - 1) && target.y === this.cell.y;
const isLeftDiagonal = (
(target.x === this.cell.x + 1 && target.y === this.cell.y + 1)
|| (target.x === this.cell.x - 1 && target.y === this.cell.y - 1)
)
const isRightDiagonal = (
(target.x === this.cell.x + 1 && target.y === this.cell.y - 1)
|| (target.x === this.cell.x - 1 && target.y === this.cell.y + 1)
)
if(isVerticalMove
|| isHorizontalMove
|| isLeftDiagonal
|| isRightDiagonal) return true;
return false;
}
```
что бы запретить ходить на клетки которые под боем(для короля), то надо надо в class Cell реализовать такой метод:
```
whichCellsIsUnderAttack(target: Cell): any[] {
/**
* @info
* получаем все клетки которые находятся под боем других фигур(противоположного цвета)
* и потом когда ходит король, то сделать условие что клетка куда походит король - нету в этом массиве
*/
console.log(this.board.cells.length);
return [];
}
```
то есть условие например cellsUnderAttacckEnemy. findIndex(клеткаПодБоемПротивника => клеткаПодБоемПротивника.x === target.y && клеткаПодБоемПротивника.y === this.cell.y + 1) >= 0 (то это условие значит что клетка (target.x, this.cell.y + 1 - то есть на 1ну клетку вверх) если найдет индекс больше 0я или 0 - значит клетка есть в массиве) типо что-то такого к условию:
```
if(isVerticalMove
|| isHorizontalMove
|| isLeftDiagonal
|| isRightDiagonal) return true;
```
было честно лень реализовывать дальше) просто даю подсказку
так же добавил координаты для каждой клетки и оси в верстке, так как сложно было ориентироватся, может кому-то поможет, ссылка на репу:
гитХабТочкаКом/Shkulipa/ulbitv-oop-chess
ссылка вставлять не буду, так как бывали моменты что коммент удалялся если в нем присутствывала ссылка
надеюсь кому-то поможет
накидайте плз. лайков что бы в топ вывести, и другие могли увидеть как хотя бы короля реализовать, спасибо
Автору видео, как всего громаднешое спасибо за контент
Спасибо!
Красава
Понимаю, что комментарий оставлен уже давно, так что отвечаю просто для всех новопришедших в комментарии)
Гораздо более простая реализация движения короля:
canMove(target: Cell): boolean {
if (!super.canMove(target)) return false;
const dx = Math.abs(this.cell.x - target.x);
const dy = Math.abs(this.cell.y - target.y);
return dx
Ты делаешь очень крутой контент, без лишних движений, очень чистый)
Шахматы для меня пока слишком сложно, пойду смотреть прошлые уроки про реакт) спасибо
Вот это подгон!) Очень рад новому ролику!
Спасибо, только начал смотреть, но уже понимаю, что всё просто волшебно!
О! Круто, спасибо! Тимур лучший!
Здорово👍🏼 я пока вообще ничего не понимаю, но поддержу канал 💪🏽
Тимур ты вообще отличный парень!))
Сразу лайк, не глядя ставлю)) У тебя отличный контент! Много нового для себя узнаю, когда смотрю твои видео.
Еще комменты ниже пролайкал, надеюсь, это поможет продвижению канала.
Удачи!
Как же мне повезло начать изучать js одновременно со стартом этого канала. На столько плавного и эффективного обучения у меня в жизни никогда еще не было.
Отлично! Обязательно посмотрю!
Лайк не глядя) Потом обязательно посмотрю)
Мощный урок, много подумал, почерпнул ))) Не задумывался никогда о реализации шахмат... оч интересно. Спасибо Тимур!
Очень рад, что в роликах стала появляться реклама, наконец хоть какое то денежное вознаграждение за твои труды))
Честно, не встречал ещё таких каналов, где так много годноты и очень полезных и простых в освоении уроков. Ты потрясающий учитель, ютубер и самое главное разработчик!
Безумно счастлив, что когда то наткнулся на твой канал, ибо теперь с него вообще не слезаю)))
Спасибо за столь теплую поддержку! Ценю!
@@UlbiTV вы гений.
Спасибо, Ульбич)
Спасибо за урок.
Переписал проект, немного изменил стили и фигуры.
Надо ещё подумать как:
- Реализовать проход пешки в ферзи (ладью, слона и коня)
- Взятие пешки на проходе (После первого хода на две клетки, пешку может взять вражеская пешка, пройдя за её "спиной" )
- Запрет хода, если ты этим ходом ты ставишь своего короля под удар
- Рокировку в длинную и короткую сторону
Забыл ещё один пункт: научить компьютер играть в шахматы :)
@@kokoc58 готовые движки есть, надо только подключить как-то
@@ram0973 доски тоже готовые есть) Движки писать очень интересно
Спасибо, будем смотреть)
Как же долго я ждал это видео))
Ооо, молитвы людей учлышаны)
Большое спасибо за курс. Обязательно посмотрю)
Спасибо за уроки! Интересно было бы увидеть реализацию CRM-системы, со списками, напоминаниями, автоматическим удалением по истечению определённого времени
Ура , ждал видео , как всегда годнота
Супер! Спасибо. Ждём ролика по Angular! :)
Закончил ещё одно прекрасное видео с тобой. Даже не знаю, как благодирить за такую практику. Делал все вместе с тобой, после окончания полез проверять коменты и гит, чтобы найти готовые ответы на оставщийся функционал, но ничего не смог найти, так что пришлось садиться делать все самому. Честно, по началу думал, что ничего не выйдет. По итогу сделал проверки на шах и мат, король научился ходить только на не битые поля и делать ракировку, добавил проверку на пат, а также победу по окончанию времени, также научил пешки превращаться в любую фигуру и добавил модальное окно выбора. Из внешних изменений добавил только мобильную версию, объявление шаха и модальные окна победы, пата и выбора фигуры для пешкию Если кому-то будет нужно, то вы можете взять код у меня в гите StasKobles (буду благодарен за звездочку). Тимур, ещё раз низкий поклон тебе за все, что ты делаешь. Твой канал это кладезь для меня
P.S.
Обещаю подписаться на твой бусти , как устроюсь на работу)
Очень круто!!
Вдохновил
глянул твой код, реализация некоторых методов конечно оставляет желать лучшего, в плане читаемости, но все равно круто, что сделал сам. Еще интересно узнать, есть ли какие-то успехи спустя два года, например, нашел ли работу?)
Только начал смотреть, но уже лайк. Красава, контент лучший
Чёрт возьми, мне как раз нужен TypeScript для работы! Обязательно буду смотреть ролик)
Если ты так просишь, то он обязательно тебя возьмёт! Поосторожнее с шаблонными фразами, смысла которых ты недопонимаешь! В некоторых из них есть прямой запрос! А как известно, что просишь - то и получаешь!
Написала шахматы, но вместо дефолтных картинок с фигурками взяла ассеты из Among us. Теперь мои друзья называют их "Амогмуты" ඞ
Еще толком даже не начал изучать js, ну так, немного понимаю что есть слушатели события, циклы, переменные, ну в целом полнейший новичок :) Понял я примерно процентов 15 из этого ролика, НО! всю суть, и что вообще происходит в коде я как-будто бы понимал, благо объяснение можно сказать на пальцах. Не люблю часовые видео, но это видео просмотрел на одном дыхании. Спасибо, было очень интересно :)
Спасибо братан! долго ждали ) ВЕЛИКОЛЕПНО!!!!
Обязательно посмотрю курс )) Спасибо !
Ролик в реки!!!
В этом ролике мы разработаем свои шахматы на React и typescript. Попрактикуем ООП. Шахматы на Javascript. для продвижения
Приветствую. Спасибо за старания и качественный контент! Лайк однозначно
бро спасибо) твои труды бесценны мы очень ценим )
ОЧЕНЬ КРУТО!
Спасибо)
Шахматы на React и TypeScript С НУЛЯ. Практикуем ООП
Воу, огромное спасибо за курс
Супер! Отличное изложение, логика, все понятно, и приходит азарт решить оставшиеся задачи.) Спасибо!
Супер!!! Ждём курс про CRM систеы))
Огромное спасибо за видео, пришла идея отработать ООП на создании какой-нибудь игры)
Тимур, привет! Хочется сказать огромное спасибо за курсы, объяснения и идеи.
Хотел бы тебя попросить, думаю остальные поддержат, в принципе ни в англоязычном ни в русскоязычном сегменте ютуба, еще не встречал курс, в котором
на ванильном JS, пишут SPA-приложение, используя ООП-подход, паттерны, тестирование, архитектура, все в связке.
Если бы у тебя вышел такой курс, было бы очень круто пройти его, возможно даже на TypeScript. Не знаю в каком это формате будет, но готов буду задонатить, либо оплатить курс.
Кому интересна идея, поддержите комментарий лайком.
А зачем в нынешних реалиях писать SPA без фреймворка?
Вот это интересно. Как раз хотел тайпскрипт узнать получше) А тут ещё и реакт с ООП 👍👍👍
Что бы узнать получше, есть доки?)
@@chupa00 а зачем себя ограничивать? Можно доки почитать, посмотреть видео, послушать подкаст с опытными программистами, почитать книжку. Но самое главное применить на практике)
Очередное отличное видео, будем посмотреть! Спасибо тебе!
Все, я полностью просмотрел канал
Просто гигантский труд, Вы выполнили
Большое спасибо!
Респект и спасибо за поддержку!
Смотрю и это очень интересно!!!
Неплохой курс знатно попотел, давно так не кодил, благодарю
Ещё не делал, но уверен что полезно. Спасибо 👍
Мегахорош) Отличное видео, никакой воды. Осталось только доделать игру до конца. Спасибо!!!
Очень хочется посмотреть !!!) но нельзя… посмотрю после того, как сделаю свои шахматы, чтобы не получилось копирование твоих идей)
Было бы интересно увидеть и послушать как ты рассуждаешь за архитектуру, как анализируешь задачу что уже сходу знаешь какую файловую структуру создавать
мужик, спасибо тебе большое 🙌
Крутоооо. Учу реакт. Уже жду когда смогу начать практику)
Этому парню надо памятник ставить при жизни как лучшему преподу
Спасибо огромное за курс. Попробовал все через styled-component сделать - так еще интереснее (хотя явно чувствуется - что это лишнее). Еще раз огромное спасибо автору! Дай Бог тебе здоровья!!!
Ипать, это очень круто. Очень доступно и интересно. Я долго не хотел смотреть это видео и делать этот проект из-за того, что думаю все устарело, а там вообще с этим никаких проблем. Еще и на ts, что вообще лбве ошибки на нет списывает. Спасибо🎉😮😊
Спасибо! Как всегда интересно и познавательно. Так держать и удачи!
Ждала!💥👍
Как любитель шахмат(1300 в рапиде) оч надеялся на подобный выпуск. Спасибо, долждался)
Ура!!! Обожаю шахматы!!!!
спасибо, побольше бы подобных видео с проектами интересными
Ура! Мы ждали
Спасибо большое за данный видос. Давно хотел написать шахматы, а ты ещё тут и столько простора для фантазии, рефакторинга и доработок оставил, что по завершению проекта - джуновский пост точно должен ждать)
Это видео шикарно! ООП подход рулит)
Тимур, потрясный урок!!! Спасибо!
Круто. Лайк поставил. Жду новых видео.
Обещал - сделал! Респектище)
Было бы круто увидеть развитие этого проекта до полноценного приложения с сессией на два юзера. Помимо бека, заодно можно будет затронуть и реализацию websockets
Выявил у себя явные проблемы с математикой :) Все остальное очень понятно, отличная подача материала, спасибо тебе!
Спасибо за контент, продолжай в том же духе
Спасибо! Максимально полезно. Как раз изучил ООП в JS и разобрался с основами TS. Красавчик!
Вот прикол, как раз на прошлой неделе закончился but camp, где мы делали шахматы)))
В твоих видео столько полезных микромоментов. Спасибо за это
УЛБИ ТВ ТОЛЬКО ВПЕРЕД!
Как всегда. Ты - ЛУЧШИЙ
ЗА ролик спасибо, НО есть конструктивная критика) Нету ни слова про оптимизацию. Каждый onSelect рендерит дважды каждую ячейку, т.е. 128 раз!!!, что ни есть круто. Т.е. реализация ООП прям норм, но работа с самим Реактом тут скорее антипоказательная. Я подрубил православнй Mobx и React.memo для клеток, ибо самому было лень делать весь функционал, теперь идет перерендер только тех клеток, которые меняют состояние. Если сделаешь продолжение, где средствами только Reacta будет мемоизация - то будет супер респект)
Круто
Я разработал свои шахматьі на Angular. Я бьіл удивлен, что мне достаточно бьіло 3-х строчек разметки!) Все DOM манипуляции - изменения CSS классов ячейки.
Лучший контент, спасибо тебе!
Поставил лайк не глядя, но просмотр запланировал , больно "вкусная" тема
Очень круто, спасибо!
Было интересно, спасибо 🙏
Спасибо. Мне очень понравилось. Отличный урок по Javascript, class Component, hooks, useState, useEffect, React, OOP, Typescript.
Я прошла урок, буду теперь додумывать про короля, про "шах и мат" и прочее. Спасибо 🙂
Как додумали? Если разобрались и решили задачку буду благодарен за ссылку в репо!!!
Спасибо, очень полезное видео.
Класс, спасибо 🦾
Ulbi сделай пожалуйста, полный курс для начинающих программистов, то есть от начала и до тех твоих продвинутых видео. Чтобы с домашкой задачами и так далее. Пожалуйста, Ulbi.
Безупречный контент.
Мое почтение. 👍
Спасибо за контент! Под пивас быстро время пролетает
Отличный курс от афигенного автора
Здравствуйте
Спасибо большое за видео, очень интересно
39:50 "почему-то, при записи видео, добавили updateBoard. Он здесь не нужен"
Как я понял, все же нужен: когда мы кликаем на фигуру, на доске отображаются доступные ячейки для хода.
Когда мы передвинули фигуру, маркировка доступных ячеек все еще отображается
А вот если делать updateBoard, после хода, вероятно, маркировка сбрасывается и доска снова "чистая"
Это было бы очень кстати если бы шахматы, как проект для изучения SOLID и Clean Architecture, был реализован вами на канале. Бесценнейший опыт. За видео огромное спасибо.
Спасибо за уроки!
Если у вас такая ошибка Cannot find module '../../assets/black-king.png'.,
нужно создать файл react-app-env.d.ts
в папке src с контентом:
declare module "*.png";
declare module "*.svg";
declare module "*.jpeg";
declare module "*.jpg";
Лучший, братишка!)
Спасибо большое, на выходном залип на 6 часов, сейчас послеработы доделал! Очень интересно
Что бы уже совсем игра была законченной, надо еще добавить 00 и 000 (рокировки - длинную и короткую)
Сначала лайк, потом смотреть
Ну тут лайкос не глядя)!!!