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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.12.2011, 01:16   #1
revaldo666
Форумчанин
 
Регистрация: 24.06.2010
Сообщений: 251
По умолчанию Игра бомбермэн, радиус взрыва

Всем доброго времени суток,
подскажите как быть
затея такова, когда стоит радиус взрыва бомбы 1 то происходит такой взрыв
Код:
 *
***
 *
однако по задумке радиус должен менятся, немогу придумать как это осуществить.
Вот метод который задаёт дитонацию заложенной бомбы с радиусом 1
Код:
void CBomb::animdetonation(int **f)
{
	
	if(f[y][x+range]==176||f[y][x+range]==32) //делаем проверку если координаты бомбы + радиус равны стене(176) или пустоте(32)
	{
		set[0][0]=y; //в установочный массив передаём первую координату
		set[0][1]=x+range; //вторую координату
		set[0][2]='*'; //и саму бомбу
	} 
	if(f[y][x-range]==176||f[y][x-range]==32)
	{
		set[1][0]=y;
		set[1][1]=x-range;
		set[1][2]='*';
	}
	if(f[y+range][x]==176||f[y+range][x]==32)
	{
		set[2][0]=y+range;
		set[2][1]=x;
		set[2][2]='*';
	}
	if(f[y-range][x]==176||f[y-range][x]==32)
	{
		set[3][0]=y-range;
		set[3][1]=x;
		set[3][2]='*';
	}
	
}
ну и код в функции
Код:
else
					if(bomb.gettimer()==5000)  //если таймер равен 5000
					{
						bomb.animdetonation(field.getField());  //запускаем анимацию взрыва бомбы
						for(int g=0;g<4;g++)
						field.setfield(bomb.getset()[g][0],bomb.getset()[g][1],bomb.getset()[g][2]); //заполняем карту осколками бомбы
						field.field[0][0]='\xDB';
					}
					else
					
					if(bomb.gettimer()==0) //если таймер бомбы равен нулю
					{
						
						stat=false;
						bomb.detonation(field.getField());   //то детанируем бомбу
						for(int g=0;g<4;g++)
						field.setfield(bomb.getset()[g][0],bomb.getset()[g][1],bomb.getset()[g][2]); //заполняем карту пустыми клетками, в радиусе взрыва бомбы
						field.field[0][0]='\xDB';
						bomb.status=true;
						bomb.setCo(-1,-1);
					}

Последний раз редактировалось revaldo666; 27.12.2011 в 01:19.
revaldo666 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Моделирование простейшего взрыва (фейерверков) paVVin Помощь студентам 1 30.11.2011 00:26
Радиус R Orif2011 C# (си шарп) 1 22.09.2011 10:12
25 лет со дня взрыва ЧАЭС ZvEr_HaCkEr Свободное общение 6 27.04.2011 11:19
Радиус Syltan Общие вопросы по Java, Java SE, Kotlin 4 18.06.2010 15:19
Высчитать радиус окружности Anyken Фриланс 4 25.06.2009 10:30