Показать сообщение отдельно
  #7 (permalink)  
Старый 26.01.2013, 17:05
Профессор
Отправить личное сообщение для bpystep Посмотреть профиль Найти все сообщения от bpystep
 
Регистрация: 06.08.2010
Сообщений: 161

Сделал, но корявым образом. Очень печально что на этом форуме мало кто имеет желание помогать.
//Создание заграждения 1
	createBar: function() {
		//создаем координату игрик
		var rand = Math.floor(Math.random()*(2 + 1))+1;
		if (rand == 1) race.bary0 = race.bary = 1;
		else if (rand == 2) race.bary0 = race.bary = 4;
			 else race.bary0 = race.bary = 7;
		race.line = rand;
		race.barx0 = race.barx = -3; //задаем координату икс
		//рандомим заграждение
		rand = Math.floor(Math.random()*(7 - 1 + 1))+1;
		race.curBar = race.barricades[rand];
		for (var i=0; i<4; i++) {
			for (var j=0; j<3; j++) {
				if (race.curBar[i][j]) race.cells[race.barx0+i][race.bary0+j].css('backgroundImage', race.colors[1]);
			}
		}
	},
	//Создание заграждения 2
	createBar2: function() {
		var rand = Math.floor(Math.random()*(2 + 1))+1;
		if (rand == 1) race.bary0_2 = race.bary_2 = 1;
		else if (rand == 2) race.bary0_2 = race.bary_2 = 4;
			 else race.bary0_2 = race.bary_2 = 7;
		race.line_2 = rand;
		race.barx0_2 = race.barx_2 = -3;
		rand = Math.floor(Math.random()*(7 - 1 + 1))+1;
		race.curBar_2 = race.barricades[rand];
		for (var i=0; i<4; i++) {
			for (var j=0; j<3; j++) {
				if (race.curBar_2[i][j]) race.cells[race.barx0_2+i][race.bary0_2+j].css('backgroundImage', race.colors[1]);
			}
		}
	},
	//Создание заграждения 3
	createBar3: function() {
		//здесь тоже самое, что и в race.createBar3();
	},
	//Обновление поля (для заграждения 1)
	refreshBar: function() {
		race.draw(race.curBar, race.barx0, race.bary0, race.colors[0]);
		race.draw(race.curBar, race.barx, race.bary, race.colors[1]);
		race.barx0 = race.barx;
		race.bary0 = race.bary;
	},
	//Обновление поля (для заграждения 2)
	refreshBar2: function() {
		race.draw(race.curBar_2, race.barx0_2, race.bary0_2, race.colors[0]);
		race.draw(race.curBar_2, race.barx_2, race.bary_2, race.colors[1]);
		race.barx0_2 = race.barx_2;
		race.bary0_2 = race.bary_2;
	},
	//Обновление поля (для заграждения 3)
	refreshBar3: function() {
		//здесь тоже самое что и в race.refreshBar2(); 
	},
moveDown: function() {
		if (race.curBar_2) {
			//обновление заграждения 2
			if (race.canGo(race.curBar_2, race.barx_2+1, race.bary_2)) {
				++race.barx_2;
				race.refreshBar2();
			}
			else race.gameOver();
		}
		if (race.curBar_3) {
			//обновление заграждения 3
			if (race.canGo(race.curBar_3, race.barx_3+1, race.bary_3)) {
				++race.barx_3;
				race.refreshBar3();
			}
			else race.gameOver();
		}
		//обновление заграждения 1
		if (race.canGo(race.curBar, race.barx+1, race.bary)) {
			if (race.barx == 5) race.createBar2(); //создание заграждения 2
			if (race.barx == 10) race.createBar3(); //создание заграждения 3
			++race.barx;
			race.refreshBar();
		}
		else {
			if (race.barx == 19) { //если заграждение достигло низа экрана
				//2 заграждение теперь 1
				race.curBar = race.curBar_2; race.line = race.line_2;
				race.barx0 = race.barx0_2; race.bary0 = race.bary0_2;
				race.barx = race.barx_2; race.bary = race.bary_2;
				//3 заграждение теперь 2
				race.curBar_2 = race.curBar_3; race.line_2 = race.line_3;
				race.barx0_2 = race.barx0_3; race.bary0_2 = race.bary0_3;
				race.barx_2 = race.barx_3; race.bary_2 = race.bary_3;
				race.createBar3(); // создание нового заграждения
			}
			else race.gameOver(); //иначе смерть xD (конец игры)
		}
	},
Ответить с цитированием