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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 30.10.2012, 12:45
razerw вне форума Посмотреть профиль Отправить личное сообщение для razerw Найти все сообщения от razerw
  № 1  
Ответить с цитированием
razerw

Регистрация: Jun 2012
Адрес: Татарстан
Сообщений: 118
По умолчанию массив возвращает 0

имеется класс в котором существуют такие функции

Код AS3:
package main
{
	//Класс карты проходимости
	//
	import flash.display.DisplayObject;
	import flash.display.Sprite;
	import flash.display.BitmapData;
	import flash.display.Bitmap;
	import flash.geom.Matrix;
	import Framework.cache.*;
 
	public class Map extends Sprite
	{
	public function Map(tidlNumber:int, tidlWidth:int, tidlHeight:int)
		{
 
			clearMapMask();
                        trace(getCellState(1, 1)); //0
	        }
 
	public function getCellState(i:int, j:int):int
		{
			// Проверка на выход за приделы массива
			if (i >= 0 && i < _tidlNumber && j >= 0 && j < _tidlNumber)
			{
				return _mapMask[i][j];
			}
			else
			{
				return STATE_CELL_BUSY;
			}
		}
 
	private function clearMapMask():void
		{
			// Создаем новый массив
			_mapMask = [];
			// Двигаемся по высоте карты
			for (var ay:int = 0; ay < _tidlNumber; ay++)
			{
				// Добавляем новую строку в массив
				_mapMask[ay] = [];
 
				// Двигаемся по ширине карты
				for (var ax:int = 0; ax < _tidlNumber; ax++)
				{
					// Задаем ячеке свободное состояние
					_mapMask[ay][ax] = "tidl_mc";
				}
			 }
 
		 }
 
 
 
 
 
}

почему trace(getCellState(1, 1)); который находится в конструкторе класса, показывает значение 0? хотя в функции clearMapMask() массиву _mapMask я присваиваю значение tidl_mc";, а вот что самое интересно если вместо tidl_mc"; я присвою любую из цифр например 2 то двойку трейс показывает.

Создать новую тему   Часовой пояс GMT +4, время: 10:44.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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