|
3 / 3 / 0
Регистрация: 10.02.2009
Сообщений: 38
|
|
Игра морской бой - как расставлять корабли03.05.2009, 20:18. Показов 14053. Ответов 56
Метки нет (Все метки)
Решил написать игру чтоб опыта набраться. Вот возникла проблема: в верху формы расположены 4 кнопки(4вида кораблей) и ниже расположено поле. каким способом можно размещать на таблице корабли?в смысле какой код,чтобы нажав на кнопку можно было переместить стрелочкой корабль на поле?
0
|
|
| 03.05.2009, 20:18 | |
|
Ответы с готовыми решениями:
56
Игра морской бой: никак не придумаю как лучше реализовать корабли в игре
|
|
3 / 3 / 0
Регистрация: 10.02.2009
Сообщений: 38
|
|
| 18.06.2009, 19:23 [ТС] | |
|
0
|
|
|
3 / 3 / 0
Регистрация: 10.02.2009
Сообщений: 38
|
|
| 18.06.2009, 19:47 [ТС] | |
|
Вот тебе моя функция)) попробуй только разобраться.
ЗЫ я там использовал глобальные функции, их в текст не вложил
1
|
|
| 19.06.2009, 16:28 | |
|
И все-таки может кто помочь заставить свою функцию рисовать прямоугольник? или через такие функции можно только числовые значения передавать?
Visual C++ подробнее в предыдущем моем посте alexeev, если время будет, можешь на C# написать функцию, которая принимает 2 координаты, и рисует по ним rectangle именно свою функцию а не pictureBox2_Paint. Возможно такое вообще?)
0
|
|
|
3 / 3 / 0
Регистрация: 10.02.2009
Сообщений: 38
|
||
| 19.06.2009, 16:51 [ТС] | ||
|
при расстановке дружественных кораблей, при авторасстановке вражеских кораблей(тут они рисуются только в случае проигрыша машины, но в массив Rectangle[] заносятся) при стрельбе машиной. какую именно функцию ты не можешь написать?
0
|
||
| 20.06.2009, 17:51 | |
|
создал кнопку "Новая игра" при нажатии на нее:
-создается матрица 10х10, -вызывается функция, расставляет в матрице корабли, получается что-то вроде 2 -1 1 -1 0 0 0 0 0 0 2 -1 -1 -1 0 -1 -1 -1 -1 0 -1 -1 -1 -1 -1 -1 2 2 -1 0 1 -1 2 2 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 -1 3 -1 0 -1 3 3 3 -1 -1 -1 3 -1 0 -1 -1 -1 -1 -1 1 -1 3 -1 0 -1 -1 -1 0 -1 -1 -1 -1 -1 0 -1 1 -1 -1 -1 -1 -1 -1 -1 0 -1 -1 -1 -1 4 4 4 4 -1 дальше хочу сделать функцию которая бы мне нарисовала rectangl'ы на pictureBox'е, соответств. этой матрице . Но не могу на ней оформить правильно DrawRectangle(); вот вроде всё) Добавлено через 13 часов 44 минуты 40 секунд alexeev, напиши пжл функцию, которая будет просто тупо рисовать 1 прямоугольник размером 20 на 20, в координатах 0,0 черным цветом. чето я вообще запутался) Добавлено через 4 часа 11 минут 0 секунд и не при загрузке формы,а допустим при нажатии на кнопку "button1".
0
|
|
|
3 / 3 / 0
Регистрация: 10.02.2009
Сообщений: 38
|
|||||||||||||
| 20.06.2009, 22:07 [ТС] | |||||||||||||
соответственно ты должен в обработчике событий PictureBox1_Handler вызвать
0
|
|||||||||||||
| 20.06.2009, 23:13 | |||||||||||
|
у меня это получится примерно так?
указать
или я чего то не понял? pictureBox1_Handler что -то другое? Добавлено через 29 минут 59 секунд кроме тебя тут похоже никого не осталось больше)
0
|
|||||||||||
|
3 / 3 / 0
Регистрация: 10.02.2009
Сообщений: 38
|
|
| 21.06.2009, 15:43 [ТС] | |
|
Сделай ExtForm глобальной
0
|
|
|
3 / 3 / 0
Регистрация: 10.02.2009
Сообщений: 38
|
|
| 23.06.2009, 16:13 [ТС] | |
|
Подскажите, как использовать задержку? к примеру функция delay(int seconds), которую можно было бы вставлять в любую функцию
0
|
|
|
1923 / 428 / 41
Регистрация: 12.07.2007
Сообщений: 2,062
|
|
| 24.06.2009, 02:42 | |
|
System.Threading.Thread.Sleep(Int32)
1
|
|
| 24.06.2009, 15:55 | |
|
но она немножко странно работает
задерживает не в том месте где поставил
0
|
|
| 24.06.2009, 16:09 | |
|
иногда)
Действительно на C# писать в десятки раз быстрее чем на C++, по крайней мере в данном случае, вот приложил, то что получилось. -Компьютер без интеллекта, стреляет рандомно). -Корабли расставляются рандомно (так по заданию) -Столкнулся с проблемой, думаю над тем как обрисовывать точками подбитые корабли противника, однопалубники, понятно, а как остальные? примерно понял, но получается очень уж объемно, подскажите алгоритм?)
0
|
|
|
3 / 3 / 0
Регистрация: 10.02.2009
Сообщений: 38
|
||
| 24.06.2009, 22:59 [ТС] | ||
|
0
|
||
| 25.06.2009, 03:10 | |
|
немножко не так сделал, сделал проверку матрицы на наличие "5" - подбитых кораблей, если "5". обрисовать вокруг. и там корректировочки небольшие) всё работает) попозже сделаю главное меню и т.п., выложу готовое.
0
|
|
|
3 / 3 / 0
Регистрация: 10.02.2009
Сообщений: 38
|
|
| 28.06.2009, 21:35 [ТС] | |
|
вот какая проблем: попадает комп в мой корабль, рисую на поле попадание(к примеру), далее PictureBox1.Invalidate(), далее Thread.Stop(1000). И вот что получается - сначала выполняется задержка, а уж потом обновляется форма! как выйти из положения?
0
|
|
|
1923 / 428 / 41
Регистрация: 12.07.2007
Сообщений: 2,062
|
|
| 29.06.2009, 02:27 | |
|
Вставте между ними Application.DoEvents()
1
|
|
|
3 / 3 / 0
Регистрация: 10.02.2009
Сообщений: 38
|
|
| 02.07.2009, 09:39 [ТС] | |
|
Выложил новую версию игры в "бета тестировании". Жду ваших отзывов
0
|
|
| 02.07.2009, 09:39 | |
|
Морской бой Морской Бой Морской бой Морской бой Морской бой Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|