Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 25.11.2012, 23:35
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 21  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Вам вроде объяснили. У Вас нет элемента [n][27] и элемента [20][n]. Их нет. 27-й элемент имеет индекс 26. Соответственно все написанные условия приводят к ошибке — Вы обращаетесь к элементу, которого нет. Какими еще словами это объяснять, я не знаю. Предлагаю поспать и перечитать топик.

Я вообще не понял зачем Вам этот огород. Все эти вопросы только для того, чтобы выяснить, есть ли там элемент с индексом, который хочется проверить на живучесть. Вуаля.
Код AS3:
			var arr:Array = new Array(9);
			trace(arr[9] == null); // true
Так что вместо того, чтобы пытать значения итераторов, достаточно просто спросить, есть там кто? А уже потом — живой ли он?
Другими словами:
Код AS3:
if(mama[j - 1][j2 - 1]	is enemy && mama[j - 1][j2 - 1].alive)	liver_a ++;
if(mama[j - 1][j2]		is enemy && mama[j - 1][j2].alive)		liver_a ++;
if(mama[j - 1][j2 + 1]	is enemy && mama[j - 1][j2 + 1].alive)	liver_a ++;
if(mama[j + 1][j2 - 1]	is enemy && mama[j + 1][j2 - 1].alive)	liver_a ++;
if(mama[j + 1][j2]		is enemy && mama[j + 1][j2].alive)		liver_a ++;
if(mama[j + 1][j2 + 1]	is enemy && mama[j + 1][j2 + 1].alive)	liver_a ++;
if(mama[j][j2 + 1]		is enemy && mama[j][j2 + 1].alive)		liver_a ++;
if(mama[j][j2 - 1]		is enemy && mama[j][j2 - 1].alive)		liver_a ++;
Кроме того, можно просмотр этого квадрата 3х3 запихать в свой двойной циклик, дабы не строчить ритмичным стихом. Сможете?

Понять бы еще, чего считает этот счетчик печенок по всему полю)))
__________________
Reality.getBounds(this);

Старый 26.11.2012, 09:41
PasserBy вне форума Посмотреть профиль Найти все сообщения от PasserBy
  № 22  
Ответить с цитированием
PasserBy
Banned

Регистрация: Nov 2012
Сообщений: 43
Цитата:
Сообщение от Wolsh Посмотреть сообщение
Вам вроде объяснили. У Вас нет элемента [n][27] и элемента [20][n]. Их нет. 27-й элемент имеет индекс 26. Соответственно все написанные условия приводят к ошибке — Вы обращаетесь к элементу, которого нет. Какими еще словами это объяснять, я не знаю. Предлагаю поспать и перечитать топик.

Я вообще не понял зачем Вам этот огород. Все эти вопросы только для того, чтобы выяснить, есть ли там элемент с индексом, который хочется проверить на живучесть. Вуаля.
Код AS3:
			var arr:Array = new Array(9);
			trace(arr[9] == null); // true
Так что вместо того, чтобы пытать значения итераторов, достаточно просто спросить, есть там кто? А уже потом — живой ли он?
Другими словами:
Код AS3:
if(mama[j - 1][j2 - 1]	is enemy && mama[j - 1][j2 - 1].alive)	liver_a ++;
if(mama[j - 1][j2]		is enemy && mama[j - 1][j2].alive)		liver_a ++;
if(mama[j - 1][j2 + 1]	is enemy && mama[j - 1][j2 + 1].alive)	liver_a ++;
if(mama[j + 1][j2 - 1]	is enemy && mama[j + 1][j2 - 1].alive)	liver_a ++;
if(mama[j + 1][j2]		is enemy && mama[j + 1][j2].alive)		liver_a ++;
if(mama[j + 1][j2 + 1]	is enemy && mama[j + 1][j2 + 1].alive)	liver_a ++;
if(mama[j][j2 + 1]		is enemy && mama[j][j2 + 1].alive)		liver_a ++;
if(mama[j][j2 - 1]		is enemy && mama[j][j2 - 1].alive)		liver_a ++;
Кроме того, можно просмотр этого квадрата 3х3 запихать в свой двойной циклик, дабы не строчить ритмичным стихом. Сможете?

Понять бы еще, чего считает этот счетчик печенок по всему полю)))
Достойное объяснение, выгодная альтернатива, спасибо!
Мне таки было непонятно с массивами..(п)
так в начале программы я создавал массивы с границами -
Код AS3:
private var mama:Array = new Array(20);  //То есть тут будут 20 элементов с индексами от 0 до 19
 
		public function LiveGame() {
			//Build Massive
			for(var j:int = 0; j < 21; j++){
				mama[j] = new Array(29);//То есть тут будут 29 элементов с индексами от 0 до 28
			} etc.
Но ведь в цикле с проверкой я не выходил за эти рамки =\
Код AS3:
for(var j:int = 0; j < 20; j++){
				for(var j2:int = 0; j2 < 27; j2++){ etc.
Делаю проверку я вот для чего .. Математическая игра жизнь
Из за погрешности в коде массивов и проверки
Код AS3:
if(mama[u][u2].alive == true){
						if(liver_a > 3 || liver_a < 2){
							mama[u][u2].alive = false;
						} else if(liver_a == 2 || liver_a == 3){
							mama[u][u2].alive = true;
						}
					} else if(mama[u][u2].alive == false){
						if(liver_a == 3){
							mama[u][u2].alive = true;
						}
					}
					liver_a = 0;
ход игры идет не так =(


Последний раз редактировалось PasserBy; 26.11.2012 в 10:36.
Старый 26.11.2012, 10:53
maxkar вне форума Посмотреть профиль Отправить личное сообщение для maxkar Найти все сообщения от maxkar
  № 23  
Ответить с цитированием
maxkar

Регистрация: Nov 2010
Сообщений: 497
Цитата:
Сообщение от PasserBy Посмотреть сообщение
Достойное объяснение, выгодная альтернатива, спасибо!
так в начале программы я создавал массивы с границами -
Код AS3:
private var mama:Array = new Array(20);  //То есть тут будут 20 элементов с индексами от 0 до 19
			for(var j:int = 0; j < 21; j++){} etc.
Это не массив с границами. Был создан массив с двадцатью null'ами. Прочитайте документацию на то, что делает конструктор, и примеры рядом. Затем в массив положили двадцать один элемент (не двадцать!).

Цитата:
Но ведь в цикле с проверкой я не выходил за эти рамки =\
Код AS3:
for(var j:int = 0; j < 20; j++){
				for(var j2:int = 0; j2 < 27; j2++){ etc.
За рамки не выходили. Но и не инициализировали ничего на границах. Вы заполнили массив с индексами [0..19]. Затем пошли по тому же циклу и делаете следующее:
Код AS3:
if(j < 20 && j2 > 0){
  if(mama[j + 1][j2 - 1].alive == true){ liver_a ++; }
}
При j = 19 вы обращаетесь к mama[20], который содержит в себе массив с null'ами. Соответственно, после доступа по (j2-1) вы получите из него только null, у которого нет свойства alive.

Цитата:
Из за погрешности в коде массивов и проверки
Нет там погрешностей. Это вы с массивами не разобрались. Нужно аккуратно разобраться с индексами. Заодно разобраться с канонической формой итерации (for (var i = start; i < end; i++)) - вам нужно понять, по каким именно значениям выполняется итерация, что такое start и end в таком цикле.

Добавлено через 2 минуты
Цитата:
ход игры идет не так =(
Ход игры у вас не так идет еще и из-за того, что у вас новое поколение рождается не одновременно. Сначала проверяется одна клетка, при необходимости - обновляется. Затем с учетом уже нового состояния проверяется соседняя с ней и т.д.

Старый 26.11.2012, 12:04
PasserBy вне форума Посмотреть профиль Найти все сообщения от PasserBy
  № 24  
Ответить с цитированием
PasserBy
Banned

Регистрация: Nov 2012
Сообщений: 43
Цитата:
Сообщение от maxkar Посмотреть сообщение
Это не массив с границами. Был создан массив с двадцатью null'ами. Прочитайте документацию на то, что делает конструктор, и примеры рядом. Затем в массив положили двадцать один элемент (не двадцать!).

За рамки не выходили. Но и не инициализировали ничего на границах. Вы заполнили массив с индексами [0..19]. Затем пошли по тому же циклу и делаете следующее:
Код AS3:
if(j < 20 && j2 > 0){
  if(mama[j + 1][j2 - 1].alive == true){ liver_a ++; }
}
При j = 19 вы обращаетесь к mama[20], который содержит в себе массив с null'ами. Соответственно, после доступа по (j2-1) вы получите из него только null, у которого нет свойства alive.


Нет там погрешностей. Это вы с массивами не разобрались. Нужно аккуратно разобраться с индексами. Заодно разобраться с канонической формой итерации (for (var i = start; i < end; i++)) - вам нужно понять, по каким именно значениям выполняется итерация, что такое start и end в таком цикле.

Добавлено через 2 минуты

Ход игры у вас не так идет еще и из-за того, что у вас новое поколение рождается не одновременно. Сначала проверяется одна клетка, при необходимости - обновляется. Затем с учетом уже нового состояния проверяется соседняя с ней и т.д.
Исправил, внесение изменений в массив, ..
Код AS3:
..
private var mama:Array = new Array(21); ////21 элементов массива, c инд. от 0 до 20
..
//Build Massive
	for(var j:int = 0; j < 21; j++){ //21 элементов массива, каждый из которых (с инд. от 0 до 20)
		mama[j] = new Array(27); //Приобретает значение нового массива из 27 элементов с инд. от 0 до 26
	}

Код AS3:
for(var i:int = 0; i < 21; i++){              //Чекаем по циклам в том же стиле, 
	for(var i2:int = 0; i2 < 27; i2++){ //что и создавали сие массивы (см.выше)
		var perem:Number = Math.random(); //Код ниже не имеет значения
		var some:Enemy = new Enemy();
		if(perem > 0.8){
		some.alive = true;
		} else {
		some.alive = false;
		}
 
		some.x = (i2 + 1) * 20 - 10;
		some.y = (i + 1) * 20 - 10;
 
		mama[i][i2] = some; //!!!!
		trace(i  + " " + i2 + " " + mama[i][i2]); //Show me massive
		addChild(some);
		}
	} etc.
Код AS3:
//Код вне конструктора
trace("Generation: " + e.target.currentCount);
			//Check LIve here
			var liver_a:int = 0;
			for(var u:int = 0; u < 20; u++){//ОБРАТИТЕ ВНИМАНИЕ, используем те же параметры, что при
				for(var u2:int = 0; u2 < 27; u2++){ // "населении" массива
 
					//CHECK LIVE AROUND
					//--
					if(u > 0 && u2 > 0){//Не позволяет выходить за границы [0-20,0-26]
						if(mama[u - 1][u2 - 1].alive == true){ liver_a ++; }
					}
					//0-
					if(u2 > 0){              //Не позволяет выходить за границы [0-20,0-26]
						if(mama[u][u2 - 1].alive == true){ liver_a ++; }
					}
					//+-
					if(u < 20 && u2 > 0){//Не позволяет выходить за границы [0-20,0-26]
						if(mama[u + 1][u2 - 1].alive == true){ liver_a ++; }
					}
					//-0
					if(u > 0){                //Не позволяет выходить за границы [0-20,0-26]
						if(mama[u - 1][u2].alive == true){ liver_a ++; }
					}
					//+0
					if(u < 20){              //Не позволяет выходить за границы [0-20,0-26]
						if(mama[u + 1][u2].alive == true){ liver_a ++; }
					}
					//-+
					if(u > 0 && u2 < 27){//Не позволяет выходить за границы [0-20,0-26]
						if(mama[u - 1][u2 + 1].alive == true){ liver_a ++; }
					}
					//0+
					if(u2 < 27){            //Не позволяет выходить за границы [0-20,0-26]
						if(mama[u][u2 + 1].alive == true){ liver_a ++; }
					}
					//++
					if(u < 20 && u2 < 27){//Не позволяет выходить за границы [0-20,0-26]
						if(mama[u + 1][u2 + 1].alive == true){ liver_a ++; }
					}
					/*
					==========================
					> 3 = dead
					3 = new live
					2 - 3 = alive
					< 2 = dead
					==========================
					*/
					if(mama[u][u2].alive == true){
						if(liver_a > 3 || liver_a < 2){
							mama[u][u2].alive = false;
						} else if(liver_a == 2 || liver_a == 3){
							mama[u][u2].alive = true;
						}
					} else if(mama[u][u2].alive == false){
						if(liver_a == 3){
							mama[u][u2].alive = true;
						}
					}
					liver_a = 0;
				}		
			}
			redrawFunction();
И что в итоге? В итоге ламповый привет от ..
Код:
TypeError: Error #1010: Термин не определен и не имеет свойств.
	at LiveGame/checker()
	at flash.utils::Timer/_timerDispatch()
	at flash.utils::Timer/tick()

Старый 26.11.2012, 12:14
maxkar вне форума Посмотреть профиль Отправить личное сообщение для maxkar Найти все сообщения от maxkar
  № 25  
Ответить с цитированием
maxkar

Регистрация: Nov 2010
Сообщений: 497
Цитата:
Код AS3:
					if(u > 0 && u2 < 27){//Не позволяет выходить за границы [0-20,0-26]
						if(mama[u - 1][u2 + 1].alive == true){ liver_a ++; }
					}
u2 + 1 == 27. А там объекта нет.
И включите отладочную информацию. Вам станет видно, в какой строке проблема.

Старый 26.11.2012, 12:38
PasserBy вне форума Посмотреть профиль Найти все сообщения от PasserBy
  № 26  
Ответить с цитированием
PasserBy
Banned

Регистрация: Nov 2012
Сообщений: 43
Цитата:
Сообщение от maxkar Посмотреть сообщение
u2 + 1 == 27. А там объекта нет.
И включите отладочную информацию. Вам станет видно, в какой строке проблема.
Код AS3:
for(var u:int = 0; u < 20; u++){
				for(var u2:int = 0; u2 < 27; u2++){  //ТУТ ОСТАВИТЬ
..
 
if(u > 0 && u2 < 26){//А ЗДЕСЬ НЕОБХОДИМО ИЗМЕНИТЬ ДИАПАЗОН?
						if(mama[u - 1][u2 + 1].alive == true){ liver_a ++; }
					}
..
Хм, работает, и вроде бы чекает все позиции.

Что касается "отладочной информации", пока не умею. Спасибо.

Старый 26.11.2012, 12:49
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 27  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Код AS3:
for(var q:uint = u-1; q < u+1; q++)
{
	for(var p:uint = u2-1; p < u2+1; p++)
	{
		var cellEnemy:enemy = mama[q][p] as enemy;
		if(cellEnemy != null && cellEnemy.alive) liver_a++;
	}
}
if(mama[u][u2].alive) liver_a--;
А Вам вообще надо для трупов считать врагов вокруг? А то может просто продолжать цикл, если mama[u][u2] уже труп и врагами не интересуется, чтобы не гонять циклы зазря.
__________________
Reality.getBounds(this);


Последний раз редактировалось Wolsh; 26.11.2012 в 13:08.
Старый 26.11.2012, 15:54
PasserBy вне форума Посмотреть профиль Найти все сообщения от PasserBy
  № 28  
Ответить с цитированием
PasserBy
Banned

Регистрация: Nov 2012
Сообщений: 43
Цитата:
Сообщение от Wolsh Посмотреть сообщение
Код AS3:
for(var q:uint = u-1; q < u+1; q++)
{
	for(var p:uint = u2-1; p < u2+1; p++)
	{
		var cellEnemy:enemy = mama[q][p] as enemy;
		if(cellEnemy != null && cellEnemy.alive) liver_a++;
	}
}
if(mama[u][u2].alive) liver_a--;
А Вам вообще надо для трупов считать врагов вокруг? А то может просто продолжать цикл, если mama[u][u2] уже труп и врагами не интересуется, чтобы не гонять циклы зазря.

Правила игры ЖИзнь
Код:
Правила

Место действия этой игры — «вселенная» — это размеченная на клетки поверхность или плоскость — безграничная, ограниченная, или замкнутая (в пределе — бесконечная плоскость).

Каждая клетка на этой поверхности может находиться в двух состояниях: быть «живой» или быть «мёртвой» (пустой). Клетка имеет восемь соседей (окружающих клеток).

Распределение живых клеток в начале игры называется первым поколением. Каждое следующее поколение рассчитывается на основе предыдущего по таким правилам:

в пустой (мёртвой) клетке, рядом с которой ровно три живые клетки, зарождается жизнь;

если у живой клетки есть две или три живые соседки, то эта клетка продолжает жить; 
в противном случае (если соседей меньше двух или больше трёх) клетка умирает («от одиночества» или «от перенаселённости»).

Игра прекращается, если на поле не останется ни одной «живой» клетки, если при очередном шаге ни одна из клеток не меняет своего состояния (складывается стабильная конфигурация) или если конфигурация на очередном шаге в точности (без сдвигов и поворотов) повторит себя же на одном из более ранних шагов (складывается периодическая конфигурация).

Старый 27.11.2012, 18:23
PasserBy вне форума Посмотреть профиль Найти все сообщения от PasserBy
  № 29  
Ответить с цитированием
PasserBy
Banned

Регистрация: Nov 2012
Сообщений: 43
По умолчанию Новые проблемы

Столкнулся с новой проблемой, а именно с механикой самой игры. Может кто помочь?
Нужно изменить код, ибо "клетки" ведут себя нелогично

main
Код AS3:
package  {
	import flash.display.*;
	import flash.events.*;
	import flash.ui.*;
	import flash.utils.Timer;
	//@author I'm
	public class Main extends MovieClip{
	private var CellSize:int = 10; //DEFAULT CELL SIZE
	private var CellPad:int = 40;  //DEFAULT CELL PAD
	private var _max:int; 		   //FOR MASSIVE SIZE
	private var mamaDefault:Array = new Array(); //DEFAULT MASSIVE
	private var mamaLoad:Array = new Array();	 //FOR LOAD FUNCTION MASSIVE
 
	private var timeM:Timer;
 
		public function Main() {
			// constructor code
			var _grid:Grid = new Grid(CellSize, CellPad); //ADD GRID
			addChild(_grid);
 
			_max = CellPad - 1;
			creatLive();
 
			timeM = new Timer( 200 );
			timeM.addEventListener(TimerEvent.TIMER, timerListener);
			timeM.start();
		}
 
		//CREAT MASSIVES & ADD CELL's
		private function creatLive():void{
			var i:int;
			var j:int;
			for(i = 0; i < _max; i++){
				mamaDefault[i] = new Array();
				mamaLoad[i] = new Array();
 
				for(j = 0; j < _max; j++){
					var decisive:Number = Math.random();
					var _cell:Cell = new Cell(CellSize);
					_cell.x = i * CellSize;						//TAKE CELL POSITION
					_cell.y = j * CellSize;
					if( decisive > 0.9 ){
						Cell(_cell).setState(1);
					} else {
						Cell(_cell).setState(0);
					}
					mamaDefault[i][j] = _cell;
					mamaLoad[i][j] = Cell(_cell).getState();
					addChild(_cell);
				}
			}
		}
 
		//TIME SHIFT MANAGER
		private function timerListener(e:TimerEvent):void{
			checkLiveAround();
		}
 
		//CHECK AROUND STATUS AND WRITE IT ON MASSIVE 2 (mamaLoad)
		private function checkLiveAround():void{
			var i1:int;
			var i2:int;
			var bros:int = 0;									//POINT OF LIVE AROUND
			var _min:int = _max - 1;							//NUMBER, FOR CHECK BORDER
			//trace(CellPad, _max, _min);
			//START CHECK MASSIVE
			for(i1 = 0; i1 < _max; i1++){
				for(i2 = 0; i2 < _max; i2++){
					// North
					if ( i2 > 0 )
						if ( mamaDefault[i1][i2-1]._state > 0.4 ) bros++;
 
					// North East
					if ( i1 < _min && i2 > 0 )
						if ( mamaDefault[i1+1][i2-1]._state > 0.4 ) bros++;
 
					// North West
					if ( i1 > 0 && i2 > 0 )
						if ( mamaDefault[i1-1][i2-1]._state > 0.4 ) bros++;
 
					// South
					if ( i2 < _min )
						if ( mamaDefault[i1][i2+1]._state > 0.4 ) bros++;
 
					// South East
					if ( i1 < _min && i2 < _min )
						if ( mamaDefault[i1+1][i2+1]._state > 0.4 ) bros++;
 
					// South West
					if ( i1 > 0 && i2 < _min )
						if ( mamaDefault[i1-1][i2+1]._state > 0.4 ) bros++;
 
					// East
					if ( i1 < _min )
						if ( mamaDefault[i1+1][i2]._state > 0.4 ) bros++;
 
					// West
					if ( i1 > 0 )
						if ( mamaDefault[i1-1][i2]._state > 0.4 ) bros++;
 
					/*
					DO NEW MASSIVE WITH PARAMETERS OF NEW LIVE
					==========================================
					2 or 3 = alive
					> 3 or < 2 = dead
					==========================================
					*/
					if( bros == 3 || bros == 2){
						mamaLoad[i1][i2] = 1;
					} else if( bros > 3 || bros < 2){
						mamaLoad[i1][i2] = 0;
					}
					if( mamaDefault[i1][i2]._state > 0.4 && bros == 3 ){
						mamaLoad[i1][i2] = 0.5;
					}
					bros = 0;
				}
			}
			unWriteMassive1();
			//END CHECK MASSIVE
		}
 
		//FUNCTION TO UNWRITE FIRST MASSIVE (mamaDefault)
		private function unWriteMassive1():void{
			var i1:int;
			var i2:int;
			for(i1 = 0; i1 < _max; i1++){
				for(i2 = 0; i2 < _max; i2++){
					Cell(mamaDefault[i1][i2]).setState(mamaLoad[i1][i2]);
				}
			}
			//trace("Complete rewrite");
		}
 
	}
 
}
Cell
Код AS3:
package  {
	import flash.display.*;
	import flash.events.*;
	import flash.ui.*;
 
	public class Cell extends Sprite{
	private var _size:int = 10;
	public var _state:Number = 1; //THIS ALPHA
	public var ok:Boolean = false; //Alive STATUS
	private var gra:Shape = new Shape();
 
		public function Cell(size:int) {
			// constructor code
			_size = size;
			gra.graphics.beginFill(0x000000,1);
			gra.graphics.drawRect( 0, 0, _size, _size);
			gra.graphics.endFill();
			gra.addEventListener(Event.ENTER_FRAME, checkState);
			addChild(gra);
		}
		//LISTENER OF GRA
		private function checkState(e:Event):void{
			this.alpha = _state;
		}
		//TAKE STATE
		public function setState(stateHere:Number):void{
			_state = stateHere;
		}
		//GET STATE
		public function getState():Number{
			return _state;
		}
	}
}
Нелогичное движение ии в приложенных файлах (.swf)


Последний раз редактировалось Котяра; 29.12.2012 в 21:12.
Старый 27.11.2012, 18:55
PasserBy вне форума Посмотреть профиль Найти все сообщения от PasserBy
  № 30  
Ответить с цитированием
PasserBy
Banned

Регистрация: Nov 2012
Сообщений: 43
Ах!!!!!....Проблема Решена!!! эйфория, кайф ))))
Решение:

Код который был(вырезка)
Код AS3:
if( bros == 3 || bros == 2){
						mamaLoad[i1][i2] = 1;
					} else if( bros > 3 || bros < 2){
						mamaLoad[i1][i2] = 0;
					}
					if( mamaDefault[i1][i2]._state > 0.4 && bros == 3 ){
						mamaLoad[i1][i2] = 0.5;
					}
					bros = 0;
Измененный код(вырезка):
Код AS3:
if(Cell(mamaDefault[i1][i2])._state > 0.4){
						if( bros == 3 || bros == 2){
							mamaLoad[i1][i2] = 1;
						} else if( bros > 3 || bros < 2){
							mamaLoad[i1][i2] = 0;
						}
					}
					if( bros == 3 ){
						mamaLoad[i1][i2] = 0.5;
					}
					bros = 0;
Вот..В приложенных файлах няшная рабочая версия. всем спасибо!


Последний раз редактировалось Котяра; 29.12.2012 в 21:12.
Создать новую тему Ответ Часовой пояс GMT +4, время: 12:49.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 12:49.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.