Гоша, пожалуйста, по больше уроков, по созданию игр. Здоровья тебе :)
@ivanovserg87952 жыл бұрын
Хороший урок, есть чуток замечаний: 1) Код загроможден переменной bох, надо оставит её только для отрисовки в пикселах, а все сравнения и расчеты по координатам вести в количестве самих ячеек, а не в пикселах; 2) Есть объект food, тогда и картинку еды перенести надо в этот объект 3) Есть объект snake, тогда и направление dir перенести в этот объект 4) Есть голова змеи head, snakeX и snakeY - тогда их тоже вложить в объект snake P.S. По коду "размазаны" переменные, которые через 2 недели не вспомнишь что они делают - их надо логически вкладывать в объекты
@НикитаКудрявцев-х3е Жыл бұрын
код не работает
@timagoldm Жыл бұрын
что тебе всё не нравится?! по твоему надо писать место бокс везде 32? умник, нашелся! я не хуже тебя в программировании разбираюсь!
@ivanovserg8795 Жыл бұрын
@@timagoldm Внимательно перечитай мой пункт 1. Переменная box (а еще лучше сделать её const) нужна только внутри функции отрисовки drawGame(). Вот и всё.
@timagoldm Жыл бұрын
😒
@reallygood75804 жыл бұрын
3:37 - Я сразу понял, что наконец-то нашёл того, кто хотябы ЗНАЕТ о ES6!
@mooves32493 жыл бұрын
Я тоже сколько не смотрел видосов, все переменные создают через var про который я уже даже забыл
@irinax53924 жыл бұрын
Привет, в canvas остаются следы предыдущего местоположения змейки и кажется что ты рисуешь ею на поле. Такой же баг повторяется и с score. Цифра не обновляется а накладывается на предыдущее т.е. на 0 рисуется единичка и тд. Решила проблему добавив ctx.clearRect(0, 0, 609, 609); в самое начало функции drawGame(). Может кому понадобится.
@kostyaryazanov96852 жыл бұрын
В процессе создания столкнулся с такой-же проблемой. Оказалось, что я написал pop, вместо pop(). Поэтому элементы массива не удалялись, а оставались на месте, что и кажется, как закрашивание
@11-april5 жыл бұрын
Не хочу выпендриваться, я новичок в этом деле, но я бы создал функцию, которая каждый рандомно генерирует еду, типа function createfood() {тут прописать рандомное появление еды} А переменную food просто объявить, затем вызвать эту функцию и каждый раз вызывать функция, когда змея проглатывает пищу) Спасибо за урок)
@evgeniiAn3 жыл бұрын
зачем плодить новые сущности если все решается в пару строк кода? и да, не выпендривайся)
@Hande_hoch3 жыл бұрын
один из очень немногих, на кого я езьже отдущи подписался, отдущи поставил лайк, отдущи оставляю коммент!
@lyonya70255 жыл бұрын
Чувак, ты самый лучший! Спсибо тебе за все твои уроки! Желаю как можно больше успехов в творчестве!!
@kukusikibabasikitv4 жыл бұрын
Жалко, что у вас так мало видео про игры на джаваскрипт. Спасибо !!
@kulagintimofei76893 жыл бұрын
Да
@СергейЧерный-б8п5 жыл бұрын
поражаюсь твоему трудолюбию
@dashkin-dima4 жыл бұрын
Да капец как сложно брать материал с запада
@Evoleo4 жыл бұрын
Он просто украл видео у зарубежного ютубера kzbin.info/www/bejne/b4XGhmV5ZqZ0edk
@zahaietskyi5 жыл бұрын
Годнота!!!💪💪💪
@VIJana794 жыл бұрын
А почему Гошу критикуют на других каналах? Хорошо он рассказывает, всё понятно. Конечно для понимания база какая-то нужна, без неё никуда. А так всё норм, всё подробно, чего писать, куда вставлять, почему такое действие.
@timagoldm Жыл бұрын
всем у кого что-то не получаятся или не работает: пересмотрите видео, вы что-то сделали неправильно. p.s. залайкайте чтобы все увидели
@ege81274 жыл бұрын
Спасибо огромное!!! От души!!!
@progi99 Жыл бұрын
спасибо за урок, было бы интересно как еще регулировать скорость змейки
@MrSam-mh7ec5 жыл бұрын
Гоша ты лучший. Удачи тебе
@atsuko_shittl.j4 жыл бұрын
Спасибо за видео, я теперь знаю как запустить свои файлы на сервер) И узнала многое что о программировании)
@ganjackal3 жыл бұрын
Супер🤝🏆слушай топчик еще бы game over по соли экрана это реально не подскажешь как🤔😆 Короч я решил заняться плотно веб разработкой и тут столкнулся с js пока не платно занимаюсь ! Есть советик !? С чего лучше начинать html и css знаю не так хорошо но знаю но говорят в наше время js всем глава без него ни куда ! Что скажешь!?
@lackevil37304 жыл бұрын
Больше JavaScript плизз
@ЕкатеринаВасильева-ш5э2 жыл бұрын
Спасибо!
@арманбахтияров2 жыл бұрын
Крассава бро)
@РусланОчеретяний-о8ф3 жыл бұрын
Очень круто!
@ЧиловикЧиловиков-р8э2 жыл бұрын
Всё прекрасно! Получилось! Но есть один вопрос - зачем исползовать переменную let, если можно использовать переменную var? тоже и с const?(Я не причисляю твои дествия к ошибке, а лишь спрашиваю)
@jilka32322 жыл бұрын
Переменная var устарела, а переменная let более современная
@ЧиловикЧиловиков-р8э2 жыл бұрын
@@jilka3232 Спасибо, теперь попробую чаще использовать переменную let 😄
@ДаниилХлебников-м2е2 жыл бұрын
@@ЧиловикЧиловиков-р8э в области видимости дело. если сначала вызвать переменную заданную при помощи var а потом определить ее,то оно даст это сделать и ты получишь undefined. С let такая шняга работать не будет. тебе покажет ошибку. Как то так. Поэтому желательно использовать let. А если уверен что изменять переменную не будешь то делай const. Я обычно const для стрелочных функций использую.
@NeedForHeavyMetal3 жыл бұрын
спасибо!) наглядно)
@thedragon13283 жыл бұрын
Спасибо за видео!
@daffeboy5 жыл бұрын
Спасибо, всё робит!
@alex577675 жыл бұрын
Для полного счастья стоит дописать, чтобы координаты спауна новой еды не могли совпасть с одной из координат самой змейки
@光荣归于习近平同志4 жыл бұрын
Как это сделать?
@RestPRODev4 жыл бұрын
@@光荣归于习近平同志 Изи
@Evoleo4 жыл бұрын
@@光荣归于习近平同志 просто заспавнить заново если координаты внутри змейки и так пока не заспавнится нормально
@АлександрБулдаков-к5е Жыл бұрын
Что делать если не воспринимает ctx.drawImege(ground, 0, 0)
@НаталіяГоловачко-в1г5 жыл бұрын
Игра на JavaScript удалась! Спасибо!
@durkaRealLol3 жыл бұрын
что делать, ошибка game.js:48 Uncaught DOMException: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The HTMLImageElement provided is in the 'broken' state. at drawGame (
@savelpetoyan98535 жыл бұрын
Круто
@iAmSvyat5 жыл бұрын
Подскажите насчет ошибки. При выполнении интервала на 11:11 в консоли выдает "Uncaught TypeError: Cannot read property 'drawImage' of null at drawGame"
@daniyarkayir5 жыл бұрын
вы может быть написали const ctx вместе из за этого и ошибка примерно вот так вот constctx = canvas.getContext("2d");
@maxedits70644 жыл бұрын
Лайк, всё круто и понятно, я пошёл делать игру)) Единственное чего мне не понятно и хотелось бы понять: за что отвечают meta у тебя в html? их там три
@chelobas143 жыл бұрын
Это стандартная разметка, её создаёт сама прога при создании файла. Она не нужна
@innagencer87312 жыл бұрын
класс!!! спасибо!!! вопрос к знающим, как уменьшить скорость движения змейки?
@ivanovserg87952 жыл бұрын
В строке let game = SetInterval ( drawGame, 100 ); надо увеличить интервал с 100, например до 200 (т.е. заменить 100 на 200). Если надо еще медленнее - то ставим 300 вместо 100
Очень долго делал, но всё таки переписал эту же игру на Python в Tk+Canvas) Проблема была в зацикливании движения змейки. root.after(150, func) помогло.
@kain57312 жыл бұрын
Привет, хочу спросить у тебя если не сложно) я хочу научиться фронтент разработке и немного бэкенда, для этого нужен ПК или ноутбук, хотел бы узнать что из этого лучше ? И на сколько мощными они должны быть?
@VVINVEST-k3q2 жыл бұрын
@@kain5731 если хочешь учиться то тебе хватит самого обычного пк или ноутбука что удобнее тебе будет, мощностью не имеет значения, даже на самом простом пк можно открыть редактор кода и видео по которым будешь учиться
@KonamiMaster3 жыл бұрын
Спасибо за инфу
@vilgo39273 жыл бұрын
из за блочной видемости dir должен выдавать undefined, обьясните как это работает
@megavanya1234 жыл бұрын
что делать если сайт не показывает поле это с чем связано я посмотрел в консоли нету ошибок подскажите
@mercals4 жыл бұрын
у меня такая-же хрень
@попуск-л1щ4 жыл бұрын
Вызывать функцию нужно, может файл неправильно подключён
@bogdanstrel92124 жыл бұрын
У меня так же было, я поместил файл html в папку js ошибочно. Файл html должен быть в главной папке (в этом случае WWW).
@tuavtorru30414 жыл бұрын
Если не помогает напиши внутрь тега канвас какой-то текст и если он выводиться то значит у тебя слишком старая версия браузера.
@ZipOfficial4 жыл бұрын
@@tuavtorru3041 у меня не вываодит текст значит сбраузером у меня всё нормально?
@dlazder3937 Жыл бұрын
Пытался разобраться как работает змейка, но даже я полный новичок вижу что код написан как попало. Куча лишних переменных, объектов непонятно для чего они нужны... Вот в чем проблема например сделать объект и с направлениями змейки и позицией? не понятно...
@ЮрийСимаков-о2р5 жыл бұрын
Неплохо
@fffttt39352 жыл бұрын
Not allowed to load local resource. Как испавить, подскажите пожалуйста
@joefast5055 жыл бұрын
Не до смотрел но все равно ТОП! Спасибо за видео :D
@gennadius9095 жыл бұрын
Спасибо за урок
@angrycoder185 жыл бұрын
в смысле переменные же в javascript объявляются через var или из-за canvas через let?или это просто не 'use strict'
@ЯрославИванов-ю9р5 жыл бұрын
Это относительно новый стандарт, var уже не используется
@azabum12ee5 жыл бұрын
Это Es6. Теперь let это стандарт
@TtTalkUA5 жыл бұрын
погугли различия между var let и const
@iGespo5 жыл бұрын
Почитай разницу между var и let learn.javascript.ru/let-const
@slava_tfdf2 жыл бұрын
Приветствую, насколько сильно нужно будет допилить игру, чтобы была возможность у пользователя сохранить фи и почту, чтобы сохранить/вывести таблицу с результатами?
@mr_pilka2 жыл бұрын
очень сильно
@николайтомин-ю5д3 ай бұрын
У меня рисуется ЕДА , СЧЁТ, ЗМЕЙКА. Еда перемещается. Но змейка не двигается. консоль всё время выдаёт ошибки, хотя всё сделано по Гоше. Кажется, перепробовал всё. Выдаваемые консолью ошибки, на первый взгляд, выглядят необоснованными. Что делать не знаю.
@karaxesss5 жыл бұрын
Гоша, твои уроки по JavaScript еще актуальны?
@jabka13565 жыл бұрын
Чувак скинь свой вк я тоже начинаю обучение джва скрипт . И да его уроки актуальны
@volkovgst5 жыл бұрын
Очень даже
@hahatoon54434 жыл бұрын
@@jabka1356 хах, давай я с вами
@RestPRODev4 жыл бұрын
Зашёл тупо посмотреть как создать игру ради прикола В итоге узнал для себя что то новое по Js
@GANGST1ER4 жыл бұрын
Что-то не могу понять с рандомом. Если он генерирует от 0 до 1, то как получаются координаты больше 1 и меньше 17 при умножении?
@GANGST1ER4 жыл бұрын
Понял. Дело в том что random генерирует дробные числа в пределах от 0 до 1.
@Black_cat35493 жыл бұрын
Гоша пожалуста ответь уменя не прорисовуеца поле что мне делать?
@ВладГущин-ж4п4 жыл бұрын
Всем привет, на 30 минуте я запускаю змейку и квадрат просто исчезает, и следовательно не двигается const canvas = document.getElementById("game"); const ctx = canvas.getContext("2d"); const ground = new Image(); ground.src = 'img/ground.png'; const foodImg = new Image(); foodImg.src = 'img/food.png'; let box = 32; let score = 0; let food = { x: Math.floor(Math.random() * 17 + 1) * box, y: Math.floor(Math.random() * 15 + 3) * box, }; let snake = []; snake[0] = { x: 9 * box, y: 10 * box, } document.addEventListener("keydown", direction); let dir; function direction(event) { if(event. keyCode == 37 && dir != 'right') dir = "left"; else if(event.keyCode == 38 && dir != 'down') dir = "up"; else if(event.keyCode == 39 && dir != 'left') dir = "right"; else if(event.keyCode == 40 && dir != 'up') dir = "down"; } function drawGame() { ctx.drawImage(ground, 0, 0); ctx.drawImage(foodImg, food.x, food.y); for(let i = 0; i < snake.length; i++) { ctx.fillStyle = "green"; ctx.fillRect(snake[i].x, snake[i].y, box, box); } ctx.fillStyle = "white"; ctx.font = "50px Arial"; ctx.fillText(score, box * 2.5, box * 1.7); let snakeX = [0].x; let snakeY = [0].y; snake.pop(); if(dir == 'left') snakeX -= box; if(dir == 'right') snakeX += box; if(dir == 'up') snakeY -= box; if(dir == 'down') snakeY += box; let newHead = { x: snakeX, y: snakeY, }; snake.unshift(newHead); } let game = setInterval(drawGame, 100);
@cryptoline1304 Жыл бұрын
Спустя 2 года, думаю, неактуально, но вместо: let snakeX = [0].x; let snakeY = [0].y; должно быть: let snakeX = snake[0].x; let snakeY = snake[0].y;
@georgbruzgaloff41273 жыл бұрын
Жорик, привееееет! Почему про игры перестал выкладывать уроки?
@АнтонАнтонов-ж1к2 жыл бұрын
А ты можешь показать как создать игру Got of war на javascript ?
@iwenttobed54172 жыл бұрын
Кринж
@АлексейФедоров-ю3л5 жыл бұрын
Подскажите, вообще ни чего не отображает в браузере, белая пустота, уже для пробы полностью копировал всё и папки и код...
@GooseDL13375 жыл бұрын
@Schellenberg у вас файл js работает раньше чем html. Объявите тег после того как закрывается тег
@АлексейФедоров-ю3л5 жыл бұрын
@@GooseDL1337 попробую, благодарю за ответ.
@yingwai86685 жыл бұрын
@@GooseDL1337 не работает... ничего не работает.. я уже заебался с этим
@olexandr56494 жыл бұрын
@@yingwai8668 ты все food заменил на foodImg? проверь правильность написания кода и указаных путей к картинкам. У меня файлы расположены в таких же папках как у него, но чобы получить картинку я прописал такой путь: foodImg.src = "../img/food.png"; после чего все заработало
@ss888dd4 жыл бұрын
@@GooseDL1337 тег в самом видео объявляется позже канваса.
@mrak30595 жыл бұрын
ты лучший)
@vladnotvlad12285 жыл бұрын
Бро, где ты был раньше?)
@hovsepbabayan832910 ай бұрын
У меня есть вопрос: Когда змея есть еду, он не удлиняется. Почему?
@ZipOfficial4 жыл бұрын
почему у меня не выводит картинку поля, я БУКВАЛЬНО сделал всё точно так же как видео, всё равно картинку не выводит, помогите пожалуйста
@yanayukhymenko30172 жыл бұрын
Я хотел сделать несколько еды, но когда змея проглатывает одну ту пропадает сразу несколько и больше не появляеться. Можно это как-то исправить?
@Egor_top5182 жыл бұрын
Привет вот в картинке для поле змейки я всё правильно прописал обновлял страницу и картинка не появляется что делать?
@js_games_for_dummies Жыл бұрын
29:43 Переписала 12 раз -- хвост не убирается, snake.pop() не работает: Snake Game body{ background: linear-gradient(rgba(0, 0, 0, 0.4), transparent 1px), linear-gradient(90deg, rgba(0, 0, 0, 0.4), transparent 1px); background-size: 32px 32px; } canvas{ display: block; width: 608px; height: 608px; border: 1px solid black; margin: 32px 23px; } const cvs = document.getElementById("snake"); const ctx = cvs.getContext("2d"); const box = 32; ctx.fillStyle = 'black'; ctx.fillRect(0, 94, 608, 1); let snake = []; snake[0] = {x : 9 * box, y : 10 * box }; let food = { x : Math.floor(Math.random() * 17 + 1 ) * box, y : Math.floor(Math.random() * 15 + 3 ) * box }; let score = 0; let dir; document.addEventListener('keydown', direction); function direction(event){ if(event.keyCode == 37 && dir != 'right') {dir = 'left'; } if(event.keyCode == 38 && dir != 'down') {dir = 'up'; } if(event.keyCode == 39 && dir != 'left') {dir = 'right'; } if(event.keyCode == 40 && dir != 'up') {dir = 'down'; } } function drawGame(){ for(let i = 0; i < snake.length; i++){ ctx.fillStyle = 'green'; ctx.fillRect(snake[i].x, snake[i].y, box, box); } ctx.fillStyle = 'red'; ctx.fillRect(food.x, food.y, box, box); let snakeX = snake[0].x; let snakeY = snake[0].y; if(dir == 'left') snakeX -= box; if(dir == 'up') snakeY -= box; if(dir == 'right') snakeX += box; if(dir == 'down') snakeY += box; let newHead = { x : snakeX, y : snakeY }; snake.unshift(newHead); snake.pop(); } let game = setInterval(drawGame, 1000);
@Gp-iv1ey2 жыл бұрын
у меня фрукты иконки только от 48 пикселей есть. Что делать?
@человек-г3з4ц Жыл бұрын
я один сделал эту змейку в блокноте😂?
@myshkin8324 жыл бұрын
*А какая разница между var, let, const?*
@intbyte4 жыл бұрын
const - неизменяемая переменная(константа) var - старый способ создания переменной let - новый способ создания переменной, с некоторыми незначительными преимуществами перед var
@myshkin8324 жыл бұрын
@@intbyte спасибо 🙂
@rbk95824 жыл бұрын
@@intbyte если создать let переменную в функции то она будет только в её пределах, если не ошибаюсь.
@ЧиловикЧиловиков-р8э2 жыл бұрын
Если вы хотите что-бы когда голова врезалась в стенку голова не пролетала ещё клетку, то просто вставте этот код после кода с созданием переменной newHead!
@foxyboy50598 ай бұрын
где ты ссылку для картинки написал 🥺
@play_gamespg6446 Жыл бұрын
А что делать если змейка не отображается сделал всё точь в точь, и всё равно не появляется
@igixprffikiberg26363 жыл бұрын
Привет Георгий я писал игру я смотрел все твои уроки по Js и я решил посмотреть это видео в коде у меня показывает что все правильно но когда я зашел в консоль у меня выдало ошибку почему?
@layon54135 жыл бұрын
Гоша, я твой старый подписчик. У меня есть очень интересный вопрос. Он немного не по теме программирования, а больше по теме 3D и создания игр. Но я не знаю кому ещё задать. Если прочитал это напиши хоть . и я распишу вопрос. Надеюсь прочитаешь.
@ЖеняПетровский-р6т5 жыл бұрын
А какой вопрос?
@ЖеняПетровский-р6т5 жыл бұрын
Какой движок ? Где моделировать ?
@layon54135 жыл бұрын
@@ЖеняПетровский-р6т как бы вопрос не по моделям. Я видел на ютубе англ видео о дешёвой лицевой анимации. Люди обмазывали лицо зелёнкой и делали так лицевую анимацию. Могу скинуть. Очень интересная тема, и на рутубе никто не делал. Автор делал в блендера. (но я люблю синьку и подобных видео не было).
@ЖеняПетровский-р6т5 жыл бұрын
@@layon5413 это не зелёнка )) это что-то типо присосок . И это могут позволить только богатые дяди и тети (очень дорого)
@layon54135 жыл бұрын
@@ЖеняПетровский-р6т ты очень плохо читал. Это бесплатно, в этом и прикол. Они как то настраивают и делают анимацию. Случайно на ролик наткнулся, оказалось по подобному запросу есть ещё. И там реал похоже на зеленку.) А студийная анимация стоит десятки тысяч долларов.
@zxcblood14894 жыл бұрын
А я прям на телефоне кодил и получилось
@s1lentgrave5 жыл бұрын
и ещё такой момент, если змейка внезапно остановилась при развороте, но сама ещё прямая, значит она развернулась не изменив координаты и сама себя съела
@s1lentgrave5 жыл бұрын
@Mad Doctor Это нужно изменить в другом месте, не там где коды указываются, а if(dir == "left") snake -= box; ... Тут проверь, все ли минусы и плюсы правильно написал, и порядок (left, right, up, down)
@s1lentgrave5 жыл бұрын
@Mad Doctor Скинь скриншот
@utlookworld57843 жыл бұрын
Игра - класс! А как сделать несколько уровней?
@argus22985 жыл бұрын
Сделай видео про "крестики и нолики".
@ЖеняПетровский-р6т5 жыл бұрын
Могу скинуть файл через Гугл диск
@DanilSolodkov5 жыл бұрын
это жызнь давай
@ЖеняПетровский-р6т5 жыл бұрын
@@DanilSolodkov не суди за комментарии ( там их только 2) я его написал года два назад
@DanilSolodkov5 жыл бұрын
это жызнь чего?коменту неделя
@Evoleo4 жыл бұрын
Как только выйдет западный ролик с такой тематикой - он сделает
@neyankk2 жыл бұрын
Почему змейка не появляется?
@baxtibeksaidov9841 Жыл бұрын
какой у тебя шрифт, покажи мне я тоже такой хочу 😁😁
@dvnnymvnrv8091 Жыл бұрын
Ребята скиньте пожалуйста несколько строк кода чтобы еда НЕ спавнилась под змейкой
@nailfah5 жыл бұрын
Почему картинку загрузили через setInterval? Да ещё со значением 100. Она же по логике должна как раз мелькать...
@ЕленаШумченко-ь2ф4 жыл бұрын
А скажите пожалуйста от этого значения может не отображать половину поля?
@sanjar58624 жыл бұрын
Нашел 1 баг но не получается поправить . Когда змейка движется в лево при нажатии вниз и вправо одновременно змейка направляется на право( и тож самое при движении вправо ) как пофиксить это ?
@cryptoline1304 Жыл бұрын
Спустя 3 года скорее всего неактуально, но один из простых способов - создать переменную, назовем ее drawUpdated, которая будет являться флагом проверки перерисовки. Далее: // где-нибудь в начале game.js файла let drawUpdated = false; function direction(event){ if(event.keyCode == 37 && dir != "right" && !drawUpdated) // разрешаем одно изменение направления в рамках перерисовки dir = "left"; else if(event.keyCode == 38 && dir != "down" && !drawUpdated) // разрешаем одно изменение направления в рамках перерисовки dir = "up"; else if(event.keyCode == 39 && dir != "left" && !drawUpdated) // разрешаем одно изменение направления в рамках перерисовки dir = "right"; else if(event.keyCode == 40 && dir != "up" && !drawUpdated) // разрешаем одно изменение направления в рамках перерисовки dir = "down"; /*Пишем, что перерисовка произошла, чтобы при повторном нажатии кнопок wasd в рамках текущей перерисовки змейка не изменила направление и не возникло ситуации, когда, например, змейка двигалась налево и до перерисовки она изменила направление вниз и потом направо из-за чего может показаться, что она сразу пошла слева направо. */ drawUpdated = true; } function drawGame(){ ... drawUpdated = false; // после перерисовки сбрасываем флаг, чтобы снова установить новое направление в direction(event). } P.S. Вероятнее всего можно сделать более лаконично и красиво, т.к. опыта на js особо не было, но способ рабочий.
@Сашка-г4ц5 жыл бұрын
Можно на бесплатный github pages выгрузить
@zeitoros Жыл бұрын
Полностью переписал код не получается вообще бесконечная ошибка. P.S. там где ctx.drawImage(ground, 0, 0);
@88woda Жыл бұрын
так же, исправил?
@faded_boy92773 жыл бұрын
Я не могу найти такоеже поле оно мне очень понравилось можете кинуть ссилку на него ИЛИ как то передать
@taaron80434 жыл бұрын
почему когда пишешь например document.get... не высвечивается подсказка getElementById
@Aituar_3 жыл бұрын
Зависит от редактора кода,
@mator73593 жыл бұрын
useful
@ybamaster3 жыл бұрын
А АБЕЗАТЕЛЬНО ПИСАТЬ CONST И LET просто я мало знаю о es6
@drino955jug33 жыл бұрын
так прочитай про это
@Кирилл-у7б6т2 жыл бұрын
Я бы изображение в CSS сделал
@firesword29125 жыл бұрын
а если я хочу добавить еще цветов к змеи?
@levveremchuk14754 жыл бұрын
помогите пожалуйста код аналогичный ошибок в консоле нет но змейка не растет кде я сделал чтото не так????
@bakumjesus71434 жыл бұрын
Перед кнопками left , right удали pop
@yosa94635 жыл бұрын
сделай видео урок по Meteor js
@ЖеняПетровский-р6т5 жыл бұрын
?
@ЖеняПетровский-р6т5 жыл бұрын
Это библиотека?
@yosa94635 жыл бұрын
@@ЖеняПетровский-р6т +
@kertaw38534 жыл бұрын
Скажи рандомное английское слово и с вероятностью 99% это библиотека для JavaScript
@iGotton5 жыл бұрын
Обязательно канвас использовать?
@ЖеняПетровский-р6т5 жыл бұрын
Да
@iGotton5 жыл бұрын
@@ЖеняПетровский-р6т получается это уже не чистый js.
@ЖеняПетровский-р6т5 жыл бұрын
@@iGotton почему?
@ЕкатеринаСтолярова-л6ы4 жыл бұрын
Ну так в названии видео и не написано один лишь чистый js, а чистый js и html
@Evoleo4 жыл бұрын
@@ЖеняПетровский-р6т потому что canvas - это html тэг
@DENGEO19954 жыл бұрын
Белый экран а в консоли пишет : Failed to load resource: net::ERR_FILE_NOT_FOUND ss/style.css:1 game.js:43 Uncaught SyntaxError: Identifier 'i' has already been declared game.js:43
@ogg44704 жыл бұрын
перекинь style.css:1 и game.js:43 в папку где index.html и измени путь на а game.js на должно сработать
@catto883 жыл бұрын
замени const на let на строке 43
@alibekyusupov3224 жыл бұрын
А за сколько примерно можно научиться писать такие коды от нуля? Учу уже неделю, понял почти всё но сам писать сначало не смогу
@МаксимФединов4 жыл бұрын
Пиши сперва все по видео, будешь со временем своим мозгом осознавать код, функции будут запоминается и в будущем сможешь писать код без сторонней помощи, но до этого ещё долгая практика таких сценариев. На своём опыте говорю, не помогли учебники, помогло списывание с туториалов.
@МаксимФединов4 жыл бұрын
И да, неделя для js - мало, месяц как минимум. Хотя в js нету прям заумных функций(
@mlpyavamystical_yt3 жыл бұрын
У меня моментами еда не появляется. Что делать?
@УланИмарбеков2 жыл бұрын
Что делать если змейка не увеличивается...
@СашаК-щ6э5 жыл бұрын
А сможешь сделать видео как создавать меню для игр (старт, настройки и т. д)
@ЖеняПетровский-р6т5 жыл бұрын
Там легко . Сначала делаешь меню дизайн и кнопки и помещяеш всё кто в функцию , далее делаешь саму игру и помещяеш это в другую функцию . Далее в меню при нажатии на кнопку старт ты вызываешь функцию с самой игрой а при нажатии на кнопку меню (в игре) прерываешь цыкл игры и вызываешь функцию с меню Это в теории а на практике не знаю как будет
@DanilSolodkov5 жыл бұрын
Делаеш отдельную страницу,и сайт делаеш там на html там старт кнопки и тд
@ЖеняПетровский-р6т5 жыл бұрын
@@DanilSolodkov и зачем для игры делать двадцать сайтов ? (Я так понял что для каждого окна отдельный сайт)
@DanilSolodkov5 жыл бұрын
это жызнь ты куку?страницу отдельную
@ЖеняПетровский-р6т5 жыл бұрын
Грузится будет дольше
@ЕленаШумченко-ь2ф4 жыл бұрын
Гоша помоги пожалуйста у меня вот это поле половину отображает половину нет все проверил и все ровно
@Aituar_3 жыл бұрын
Может вы задали ширину и высоту через СИэсЭС?
@ArtSolist4 жыл бұрын
Полчаса искал ошибку... оказалось в строке: const ctx = canvas.getContext("2d"); Написал 2d написал с большой буквой, то есть 2D. А в консоль писало: "Uncaught TypeError: Cannot read property 'drawImage' of null at drawGame" 😁
@николайтомин-ю5д3 жыл бұрын
У меня змейка движется, удлиняясь с каждым квадратиком. Не могу сделать, чтобы змейка двигалась одним квадратиком. Кажется, всё делаю по Гоше. Помогите, кто может!
@andreyteryaev49802 жыл бұрын
Решили проблему? Если да, то подскажите пожалуйста.
@СоциальнаяНакипь3 жыл бұрын
for(let i = 0; i < snake.length; i++) { ctx.drawImage(snakeh, snake[0].x-16, snake[0].y-16) ; if (i!= 0) { ctx.drawImage(snakeb, snake[i].x-8, snake[i].y-8);} } чтобы змейка была из ваших картинок snakeh - голова snakeb - тело
@СоциальнаяНакипь3 жыл бұрын
если, конечно, кому-то нужно, то я могу скинуть слегка улучшенную версию этой змейки
@freik37653 жыл бұрын
@@СоциальнаяНакипь Брат помоги
@freik37653 жыл бұрын
@@СоциальнаяНакипь У меня не получается вставить картинку
@СоциальнаяНакипь3 жыл бұрын
@@freik3765 что не так?
@H336-p1v5 жыл бұрын
3:43 Это необязательно, у меня работает просто обращение по id (т.е. переменная "game", которой нет в коде, возвращает canvas).
@MaximMoPeR4 жыл бұрын
@H 336 Что ты тут делаешь? Лол я твой подписчик =)