Курсы по программированию

Формула программиста
основатель — Волосатов Евгений Витольдович

Морской Бой / Последний Бой!

  • На этом уроке мы закончим создание Морского боя.
    Сделаем отображение выстрелов пользователя.
    Подключим класс Mission и сделаем ход компьютера.
    Ходы будут выполняться в порядке очереди.
    Нам потребуется таймер для постепенного
    отображения серии ходов компьютера.
  • Дата отправки отчёта: 20 ноября 2015 г.
  • Задание выполнено: за 1 час. 20 мин.
  • Чему научился: Играть с ИИ в "Морской бой")
  • Что было сложным: В принципе ничего сложного, весь функционал написан, оставалось только все подключить и отладить, чтобы корректно все работало.
  • Комментарии: Вот и все, закончился, к сожалению, этот видеокурс. Но зато была написана замечательная программа "Морской бой", да еще не простая, а с реализацией искусственного интеллекта. Причем последний не такой уж и простой, а весьма смышленый и обыграть его порой не так-то уж и легко. Но, мы-то знаем, как он работает, так что будем действовать его методами плюс подключим интуицию) Что хочу сказать, конечно можно еще улучшать и улучшать дизайн программы. К примеру, добавить статистику. Я вот только смог сделать отображение хода, то есть выводить чья очередь сейчас ходить. А с "секретной кнопкой" так и ничего не получилось сделать. Секретная кнопка должна была показывать нам, при ее нажатии, корабли противника, в данном случае компьютера. Мы же используем делегаты для отображения состояния поля да еще в методе ShowCompShip передается координата точки и номер корабля. Как все это "прикрутить", чтобы все работало, не придумал, к сожалению. Видать, знаний мало. Отображение статистики я, честно признаюсь, делать не стал, навряд ли получится. Так что, направление дальнейшего движения задано, буду читать книжки, разбираться. Глядишь, потом как-нибудь (очень хочется надеяться) открою этот проект и реализую все то, что хотел сделать. Огромное спасибо за видеокурс! Он очень полезен начинающим программистам, которые хотят лучше разобраться в языке C# и "прокачать" свои навыки. Тем более игра эта знакома всем с детства и попробовать ее "сделать" своими руками - это значит вдвойне осознать, что ты можешь осуществить свою задумку!
    p.s. Конец последнего предложения получился не очень, вдохновение закончилось. Но, думаю, Вы меня поняли)
  • Оценка видео-уроку:
Отчёт от 2773 за Морской Бой / Последний Бой!


Отчёт от 2773 за Морской Бой / Последний Бой!




Оцени работу

 
Сохранить страницу:

2773. Никита
Никита
ответить
→  Иван  # Морской Бой / ПОСЛЕДНИЙ БОЙ / 2015-11-21 23:42

Спасибо, Иван! Порой бывает, что я на правильном пути, а не хватает толчка, чтобы чуть-чуть подсобили, и тогда все получится. А то я думаю, так или не так я делаю, а может именно так надо, а потом делаю все по-своему и получается уже не то.


2773. Никита
Никита
ответить
→  Lik_Kirill  # Морской Бой / ПОСЛЕДНИЙ БОЙ / 2015-11-21 23:41

Спасибо большое, я на это надеюсь))


2773. Никита
Никита
ответить
→  Neverwinter 2  # Морской Бой / ПОСЛЕДНИЙ БОЙ / 2015-11-21 23:40

Спасибо, Кирилл!


2773. Никита
Никита
ответить
→  Евгений Витольдович  # Морской Бой / ПОСЛЕДНИЙ БОЙ / 2015-11-21 23:39

Спасибо большое, Евгений Витольдович! Ваши слова придают мне надежду, что еще не все потеряно, и я смогу добиться успехов))


1. Евгений Витольдович
Евгений Витольдович
ответить
→  Никита  # Морской Бой / ПОСЛЕДНИЙ БОЙ / 2015-11-21 07:28

Никита, ты молодец, я помню твои предние отчеты, не могу не заметить - у тебя значительный прорыв. Как сделать отображение кораблей компьютера - я тоже так сразу не сказал бы, можно просто создать метод, который виклассе Моря перевызывает рисование каждой клетки, используя делегат. Да, главное не останавливаться. У тебя сейчас шаткое состояние - ты многое узнал и нсли это не подкрепить практикой, то многое может вылетить из головы, так что, продолжай!


1901. Neverwinter 2
Neverwinter 2
ответить
→  Никита  # Морской Бой / ПОСЛЕДНИЙ БОЙ / 2015-11-21 07:15

Отлично! Молодец! Супер! Всегда приятно заканчивать большой проект, сразу чувствуешь, что знаний то добавилось! Главное не лениться, и правильно мотивировать себя, тогда обязательно вернёшься и доделаешь, что хочешь + потренируешься))


6452. Lik_Kirill
Lik_Kirill
ответить
→  Никита  # Морской Бой / ПОСЛЕДНИЙ БОЙ / 2015-11-21 05:15

Конечно поняли, Никита! Ты главное не бросай думать об этом и идеи будут валиться на тебя, потом возникнет желание самому что-нить добавить, потом ещё и ещё! Так и будешь ещё больше улучшать свои знания в языке программирования!


2146. Иван
Иван
ответить
→  Никита  # Морской Бой / ПОСЛЕДНИЙ БОЙ / 2015-11-20 23:26

здорово все получилось! И нововведение хорошее получилось.


  • Отчёт оценивали:
    8014Denis0   2146Иван+1   7573Павел+1   1710Степан+1   7795Вадим+1   429Максим Базуев+1   6391Владимир+1   6452Lik_Kirill+1   7645Александр Львович+1   1901Neverwinter 2+1   1Евгений Витольдович+1   6987MichGar+1   4004Елена+1   6458Илья+1   459Сергей Сергеевич+1   7440homerSimpson+1   3747Сергей+1   2912Игорь+1   4182Farid+1   5265Дмитрий Мерцалов+1   7276Ильшат+1  

Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Научился: Самое главное - подключать другие классы к готовой программе.
Трудности: В некоторых случаях обыграть компьютер!))
Ура! Свершилось!) Игра заработала, да ещё и серьёзным соперником оказалась!!!
Научился: использовать методы классов, созданных отдельно от основного проекта. Осуществлять стрельбу компьютера по таймеру.
Трудности: сделать доработку от себя, чтобы при добивании корабля со стороны человека, на поле компьютера закрашивались все ячейки, куда уже точно не надо стрелять. Так делается и при обычной игре, это не чит)
Очень хороший курс, много алгоритмики и есть ооп, а также сильная логическая составляющая в виде создания ИИ. Немного не хватает прилизанности, т.к. он создавался с большим временным промежутком, и как бы собран из разных кусков, но тем не менее все работает. Спасибо!