Вопрос: Как написать игру камень, ножницы, бумага на Java?

 

Игра камень, ножницы, бумага на языке программирования Python

Видео взято с канала: Евгений Быков


 

«камень, ножницы, бумага» на языке программирования java!

Видео взято с канала: Designer TV


 

СДЕЛАЛ МЕХАНИЧЕСКУЮ ИГРУ «КАМЕНЬ-НОЖНИЦЫ-БУМАГА» ИЗ КАРТОНА

Видео взято с канала: It’s Mamix


 

Как создать на PYTHON игру камень ножницы бумага программирование для детей начинающих уроки с нуля

Видео взято с канала: Ян Пайтон


 

Создание игры «Сапёр» на Java

Видео взято с канала: ITVDN


 

Ren’Py урок Модернизируем мини-игру «Камень-Ножницы-Бумага»

Видео взято с канала: Cyber Craft


 

Игра на Javascript. Камень-ножницы-бумага. Как сделать игру.

Видео взято с канала: LectorWeb. Frontend, создание сайтов


18 комментариев

  • Спасибо, очень доступное объяснение. Скажите а если я хочу сделать игру не бесконечной как у вас, а скажем до 5 побед и выводить победителя и с каким счётом, тогда необходимо цикл создать в функции winner???

  • pack(); всё правильно стоял в начале метода у меня всё работает это раз.
    pack(); должен стоять перед setLocationRelativeTo(null); как минимум ибо если не так то и центроваться окно не будет.
    ок! тема хорошая преподаватель лучший мой лайк и благодарности

  • при вставке картинок вылезает ошибка, хотя делал все точь в точь как на видео
    вот ошибка:
    Exception in thread «AWT-EventQueue-0» java.lang.NullPointerException

    at java.desktop/javax.swing.ImageIcon.(ImageIcon.java:217)

    at JavaSweeper.getimage(JavaSweeper.java:53)

    at JavaSweeper$1.paintComponent(JavaSweeper.java:32)

    at java.desktop/javax.swing.JComponent.paint(JComponent.java:1074)

    at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:907)

    at java.desktop/javax.swing.JComponent.paint(JComponent.java:1083)

    at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:907)

    at java.desktop/javax.swing.JComponent.paint(JComponent.java:1083)

    at java.desktop/javax.swing.JLayeredPane.paint(JLayeredPane.java:590)

    at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:907)

    at java.desktop/javax.swing.JComponent.paintToOffscreen(JComponent.java:5262)

    at java.desktop/javax.swing.BufferStrategyPaintManager.paint(BufferStrategyPaintManager.java:246)

    at java.desktop/javax.swing.RepaintManager.paint(RepaintManager.java:1323)

    at java.desktop/javax.swing.JComponent.paint(JComponent.java:1060)

    at java.desktop/java.awt.GraphicsCallback$PaintCallback.run(GraphicsCallback.java:39)

    at java.desktop/sun.awt.SunGraphicsCallback.runOneComponent(SunGraphicsCallback.java:78)

    at java.desktop/sun.awt.SunGraphicsCallback.runComponents(SunGraphicsCallback.java:115)

    at java.desktop/java.awt.Container.paint(Container.java:2002)

    at java.desktop/java.awt.Window.paint(Window.java:3926)

    at java.desktop/javax.swing.RepaintManager$4.run(RepaintManager.java:876)

    at java.desktop/javax.swing.RepaintManager$4.run(RepaintManager.java:848)

    at java.base/java.security.AccessController.doPrivileged(AccessController.java:389)

    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)

    at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:848)

    at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:823)

    at java.desktop/javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:772)

    at java.desktop/javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1884)

    at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)

    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)

    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)

    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)

    at java.base/java.security.AccessController.doPrivileged(AccessController.java:389)

    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)

    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)

    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)

    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)

    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)

    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)

    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)

    at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

  • Хороший вебинар.
    В следующий раз надеюсь не будет технических накладок с дополнительными материалами.
    Из-за них, несколько раз, трансляция прерывалась, так что невозможно было смотреть в живую.
    Просмотрел в записи. Отдельная благодарность что не бросили и сделали весь вебинар до конца,
    хоть это и было тяжело физически. Все кто повторил весь вебинар и я в том числе получили рабочее приложение
    которое можно изучать как пример объект-ориентированного подхода в программировании. Еще раз большое спасибо.

  • Exception in thread «main» java.lang.NullPointerException

    at java.desktop/javax.swing.ImageIcon.(ImageIcon.java:217)

    at JavaSweeper.getImage(JavaSweeper.java:81)

    at JavaSweeper.setImages(JavaSweeper.java:71)

    at JavaSweeper.
    (JavaSweeper.java:26)

    at JavaSweeper.main(JavaSweeper.java:21)

    ЧТО ЭТО?

  • Евгений, Огромное спасибо! Отличный вебинар! Я вообще новичок в программировании (уровень Java Starter), но и у меня всё получилось, кроме картинки BOMBED:( Она, почему-то, не появляется совсем… вместо неё обычная картинка BOMB. Придётся снова проработать последние 30 минут вашего видео ;))

  • posmotrel za 4 podhoda.
    Ochen horoshee i kachestvenoe video, vidno chto k nemu mnogo gotovilis.
    u menya tolko odno protivorechivoe zamechanie i predlozhenie:
    s odnoi storoni ono ochen dlinoe, slozhno naiti 3 svobodnih chasa chtob proiti razom vse video, s drugoi storoni, ochen hotelos napisat do refaktora, a potom refaktorit vmeste.
    mozhno vistavit srazu playlist, kodit, smotret resultati, refaktorit i snova smotret resultat.
    eshe raz ogromnoe spasibo za eto video!
    pobolshe bi video po java, i esli mozhno web, k primeru po spring-5, bilo bi zamechatelno, tak kak ochen malo kachestvogo kontenta, dazhe na anglo-yazichnih resursah, odin bolee-menee tolkovii eto GURU-Udemy, no tam tozhe vse razmito i ne yaso.

  • Добавлю замечания: плохой код стайл (про final поля, loose coupling, immutability, SOLID и java convention наверное не слышали?); «статичные классы» в ООП не приветствуются…; почему нельзя сделать полностью один фасадный класс игры, который можно было бы использовать в frontend части (swing, fx или тот же web), аля паттерн mvc; PS: надеюсь учтете замечания; ибо по похожим урокам когда то я сам учился)

  • Сценарии, сценарии, сценарии….. У всех сценарии. И таки да, так оно и есть. Только Россия святее Папы римского. Мы не вмешиваемся…… Так вот западники гораздо менее щепетильны. Чего тогда стенать и руки заламывать.

  • Когда просто переписываешь код за учителем, то вроде все так просто и понятно. Но сам бы я застрял еще на начальном этапе. Мне очень понравилась лаконичная рекурсия для открытия пустых клеток. Боюсь представить, сколько бы я кода написал для аналогичной задачи, если бы думал сам)

  • Просьба в своих видео записать процесс натяжки шаблона на CMS Evolution. Я уверен, что это видео будет в первых строках выдачи, так как на WordPress есть много подобных видео а на Эво нет…
    Заранее спасибо!

  • Для начала хочу сказать тебе спасибо что ты этим занимаешься. Но по-братски. Я понимаю что денег ролики по ренпаю много не приносят, но расскажи по больше о более игровых вещах. Пусть даже есть код в свободном источнике. Всё рано когда наглядно то понятней. Покажи как инвентарь лучше сделать. Как сделать карту в которой можно выбирать локации и перемещаться в них. Как сделать смену эмоций на одном спрайте. Анимацию горения свечи, я не знаю. Много чего можно рассказать. Я всё посмотрю

  • Здравствуйте.
    Столкнулся с маленькой проблемой, дело в следующем:
    в screens прописано следующее:
    screen select_pers:

    tag menu

    imagebutton auto «pers1_%s.png» xalign 0 yalign 0.5 focus_mask True action Jump(«pers1_start»)

    imagebutton auto «pers2_%s.png» xalign 0.9 yalign 0.5 focus_mask True action Jump(«pers2_start»)

    в skript следующее:
    label start:

    show screen select_pers
    centered «Выберите персонаж»

    Теперь вопрос, если убрать строку «centered «Выберите персонаж»» то игра сразу возвращается на начальное меню, то есть кнопки показываются и сразу исчезают, как сделать чтобы выбор оставался на экране?

  • Дошел до этапа создания и введения Range. (1:16:40) Программа не запускается. В основном теле ругается на Ranges.setSize, координаты x, y не выделяются фиолетовым. Еще нашел в Ranges.java команда getSize серая и предлагает её удалить. Не могу понять, что не хватает.

  • Не хватает только src где нибудь на github’е. А так очень интересный вебинар положил в закладки. Хорошо проработана логика и за исключением пары мест все более чем понятно, даже с моим около нулевым уровнем знаний.

  • Евгений, спасибо Вам. очень хороший вебинар. все понятно, доходчиво. очень заметна подготовка. смотрел уроки тех кто на «лету» пишет код, очень сложно их понять, т.к. они пишут одно, спустя две минуты все меняют, а спустя еще какое-то время снова все заново и голове бардак. а у вас все по полочкам. только быстро) не успеваю в вашем ритме.но все повторил. с паузами и повторами потратил около 5 часов. и все получилось. однозначно пересмотрю все ваши уроки.

  • Дружище, посмотрев кучу уроков, в том числе и на английском, хочется ещё раз подякуваты тебе за работу. Очень хороший переход от простого к сложному и объяснение хорошее. А такая тема, как создание календаря в ренпае, не планируется?