Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.05.2013, 16:30   #1
GHOST32
Пользователь
 
Регистрация: 03.05.2013
Сообщений: 16
По умолчанию Курсовая работа, Xonix.

Доброго времени суток. Пишу игру Xonix на Cи. В общем есть поле размера 15*15 клеток, соответственно есть двумерный массив такого же размера.
Застрял на вырезание выделенного участка поля.

Вот пример:

Массив
00000000
00000000
00000000
00000000

Пользователь выделяет участок поля (выделено единичкой)
00000000
00001111
00001000
00001000

Нужно чтобы выделенный участок превратился в 2ки
00000000
00002222
00002222
00002222

Объясните, пожалуйста, алгоритм вырезания участка.
GHOST32 вне форума Ответить с цитированием
Старый 04.05.2013, 17:26   #2
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

С двух сторон от конца (начала) линии пускается заливка.
Отрезанным считается тот "кусок", который имеет меньшую площадь.
s-andriano вне форума Ответить с цитированием
Старый 05.05.2013, 00:02   #3
GHOST32
Пользователь
 
Регистрация: 03.05.2013
Сообщений: 16
По умолчанию

Цитата:
Сообщение от s-andriano Посмотреть сообщение
С двух сторон от конца (начала) линии пускается заливка.
Отрезанным считается тот "кусок", который имеет меньшую площадь.
Все равно не понятно по какому принципу пускается заливка.
GHOST32 вне форума Ответить с цитированием
Старый 05.05.2013, 00:58   #4
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

Пускается или осуществляется.
Если пускается - я уже написал - по обе стороны от "дорожки" последнего перемещения зоникса.
Если осуществляется, то в данном случае проще всего сделать через очередь, в которую запихиваются соседние пустые клетки.
s-andriano вне форума Ответить с цитированием
Старый 11.05.2013, 14:56   #5
GHOST32
Пользователь
 
Регистрация: 03.05.2013
Сообщений: 16
По умолчанию

Игрок должен избегать столкновения с врагами, двигающиеся под углом и отскакивающими от стен или закрашенных клеток. Как сделать так, чтобы враги отскакивали от границ обрезанного участка, состоящего из закрашенных клеток?
GHOST32 вне форума Ответить с цитированием
Старый 12.05.2013, 20:02   #6
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

При столкновении с границей нормальная составляющая меняет знак.
s-andriano вне форума Ответить с цитированием
Старый 12.05.2013, 22:23   #7
GHOST32
Пользователь
 
Регистрация: 03.05.2013
Сообщений: 16
По умолчанию

Цитата:
Сообщение от s-andriano Посмотреть сообщение
При столкновении с границей нормальная составляющая меняет знак.
Это понятно. Я наверное не совсем корректно выразился. Когда вырезается кусок поля, то граница тоже меняется. Нужно, чтобы противники отскакивали не от старой границы, а от новой. Поле состоит из клеток.
GHOST32 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Курсовая работа по БД Suslik963 Фриланс 6 23.05.2013 11:55
курсовая работа по с# сишарп Фриланс 1 05.06.2012 23:15
КУРСОВАЯ РАБОТА ПО ОС mazzn Фриланс 0 24.12.2010 11:46
Курсовая работа deadh5n1 Помощь студентам 3 05.11.2008 20:05