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

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

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

Регистрация: Jan 2011
Сообщений: 247
Attention Error #1006: doMovement не является функцией.

Смотрел в поиски подобные темы, ну они не очень подходят мне.
Нужна помощь )


Код AS3:
	private var cps:Array   = new Array();
private function Name(e:Event):void
                {
                 for (var i:int = 0; i < cps.length; i++)
			{
				cps[i].doMovement();
			}
                }
 
private function doMovement():void
		{
                 //code
                }
 
//Outpute:
//[Fault] exception, information=TypeError: Error #1006: doMovement не является функцией.

Старый 16.07.2011, 22:34
СлаваRa вне форума Посмотреть профиль Отправить личное сообщение для СлаваRa Найти все сообщения от СлаваRa
  № 2  
Ответить с цитированием
СлаваRa
 
Аватар для СлаваRa

блогер
Регистрация: Feb 2008
Адрес: http://playtika.com
Сообщений: 1,119
Записей в блоге: 5
Отправить сообщение для СлаваRa с помощью ICQ Отправить сообщение для СлаваRa с помощью Skype™
Из вашего кода не понятно, что такое cps[i] и откуда у него doMovement
__________________
местонахождение

Старый 16.07.2011, 22:39
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 3  
Ответить с цитированием
goodguy
Banned

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
Надо полагать в массив уже попадают экземпляры того же класса, в котором находится массив. Инача к private свойству у них доступа не будет. И, да, совершенно непонятно что вообще находится в массиве и как туда попадает. Здесь видно только создание пустого массива, свойство length которого вообще равно 0 и цикл даже не должен выполняться

Старый 16.07.2011, 23:18
GrafMine вне форума Посмотреть профиль Отправить личное сообщение для GrafMine Найти все сообщения от GrafMine
  № 4  
Ответить с цитированием
GrafMine
 
Аватар для GrafMine

Регистрация: Jan 2011
Сообщений: 247
Код AS3:
//таким образом заполняется cps массив
private function createNextCreep():void
		{
                        points: Array = [[0,7], [1,7]];
			var s_p:Array = points[0];		
			cps.push(s_p);
		}
А вообще я это делаю чтоб некий объект двигался с 0,7 по 1,7.

Старый 16.07.2011, 23:25
Bgg вне форума Посмотреть профиль Отправить личное сообщение для Bgg Найти все сообщения от Bgg
  № 5  
Ответить с цитированием
Bgg
 
Аватар для Bgg

Регистрация: Jan 2009
Адрес: Петерсбург
Сообщений: 1,882
Цитата:
Сообщение от GrafMine Посмотреть сообщение
Код AS3:
//таким образом заполняется cps массив
private function createNextCreep():void
		{
                        points: Array = [[0,7], [1,7]];
			var s_p:Array = points[0];		
			cps.push(s_p);
		}
А вообще я это делаю чтоб некий объект двигался с 0,7 по 1,7.
И где вы у массива увидели метод doMovement?

Старый 16.07.2011, 23:22
СлаваRa вне форума Посмотреть профиль Отправить личное сообщение для СлаваRa Найти все сообщения от СлаваRa
  № 6  
Ответить с цитированием
СлаваRa
 
Аватар для СлаваRa

блогер
Регистрация: Feb 2008
Адрес: http://playtika.com
Сообщений: 1,119
Записей в блоге: 5
Отправить сообщение для СлаваRa с помощью ICQ Отправить сообщение для СлаваRa с помощью Skype™
2GrafMine, а Вы не могли бы показать код всего класса? Иначе невозможно понять, что Вы хотите сделать, и как пытаетесь.
__________________
местонахождение

Старый 17.07.2011, 01:21
GrafMine вне форума Посмотреть профиль Отправить личное сообщение для GrafMine Найти все сообщения от GrafMine
  № 7  
Ответить с цитированием
GrafMine
 
Аватар для GrafMine

Регистрация: Jan 2011
Сообщений: 247
Wave.as
Код AS3:
package  {
	import flash.display.*;
	import flash.ui.*;
	import flash.events.*;
	import flash.utils.Timer;
 
	public class Wave extends Sprite
	{
		private var total_creeps:Number = 10;
		private var creeps_sent:Number  = 0;
		private var creeps:Array   = new Array();
		private var creepMC:Sprite = new Sprite();
		private var points:Array = new Array();
		private var spacing:Number = 16;
		private var ticker:Number  = 0;
		private var sending:Boolean = true;
		private var myTD:Main;
 
		public function Wave(pts:Array, t:Main):void
		{
			points = pts;
			myTD = t;
 
			addEventListener(Event.ENTER_FRAME, handleEnterFrame);
			addChild(creepMC);
		}
 
		private function handleEnterFrame(e:Event):void
		{
			if ( creeps_sent < total_creeps)
			{
				++ticker;
				if (ticker >= spacing)
				{
					createNextCreep();
					ticker = 0;
				}
			}
 
			for (var i:int = 0; i < creeps.length; i++)
			{
				creeps[i].doMovement(); // обращается в паблик функию  в след файле
			}
		}
 
		private function createNextCreep():void
		{
			var c:Sprite = new Creep(points, myTD);
			creeps.push(c);
			creepMC.addChild(c);
			++creeps_sent;
		}
	}
}
Creep.as
Код AS3:
package  {
	import flash.display.*;
	import flash.events.*;
 
	public class Creep extends Sprite
	{
		private var points:Array = new Array();
		private var next_point:Number = 1;
		private var myTD:Main;
 
		public function Creep(pts:Array, t:Main):void
		{
			points = pts;
			myTD = t;
 
			var starting_point:Array = points[0];		
			x = calculateGridPoint(starting_point[0]);
			y = calculateGridPoint(starting_point[1]);
		}
 
		public function doMovement():void
		{
                  // code
		}
 
	           // more code
	}
}
весь прикол в том что они в разных .as а когда я их совмещаю получается этот еррор, если все оставить как есть такой ошибки не выскакивает.

Старый 17.07.2011, 01:24
i.o. вне форума Посмотреть профиль Отправить личное сообщение для i.o. Найти все сообщения от i.o.
  № 8  
Ответить с цитированием
i.o.
 
Аватар для i.o.

Регистрация: Apr 2010
Адрес: Earth
Сообщений: 1,897
Код AS3:
public class Wave extends Creep
как вариант..

Старый 17.07.2011, 02:00
GrafMine вне форума Посмотреть профиль Отправить личное сообщение для GrafMine Найти все сообщения от GrafMine
  № 9  
Ответить с цитированием
GrafMine
 
Аватар для GrafMine

Регистрация: Jan 2011
Сообщений: 247
Цитата:
Сообщение от i.o. Посмотреть сообщение
Код AS3:
public class Wave extends Creep
как вариант..
я их обоя переписую в класс Main.as

Старый 17.07.2011, 02:02
Bgg вне форума Посмотреть профиль Отправить личное сообщение для Bgg Найти все сообщения от Bgg
  № 10  
Ответить с цитированием
Bgg
 
Аватар для Bgg

Регистрация: Jan 2009
Адрес: Петерсбург
Сообщений: 1,882
Цитата:
Сообщение от GrafMine Посмотреть сообщение
я их обоя переписую в класс Main.as
Чо-чо?

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

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

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


 


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


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