Показать сообщение отдельно
Старый 10.12.2007, 18:16
Chas вне форума Посмотреть профиль Отправить личное сообщение для Chas Посетить домашнюю страницу Chas Найти все сообщения от Chas
  № 4  
Ответить с цитированием
Chas
 
Аватар для Chas

Регистрация: Sep 2002
Адрес: simferopol
Сообщений: 981
Отправить сообщение для Chas с помощью ICQ
ыть. я воспользовался typeof потому что instanceof Floor выдавало неправильный результат. ошибка где-то выше, я даже знаю, где примерно.
вот код:
Код:
var sprite = Core.spritedata[btnPlacing.curSprite].copy();
sprite.test ();
trace ("WTools:cellInvoke. sprite instanceof Floor="+(sprite instanceof Floor)); //false
trace ("WTools:cellInvoke. sprite instanceof Sprite="+(sprite instanceof Sprite)); //true
класс Floor нужен, хотя он пока "пустой"
Код:
import maped.data.sprites.Sprite;
class maped.data.sprites.Floor extends Sprite {
	function Floor (node:XMLNode){
		super (node);
	}
	function copy (){
		var c:Floor= super.copy ();
		return c;
	}
}
класс-родитель:
Код:
class maped.data.sprites.Sprite {
	var frame; var name;
	function Sprite (node:XMLNode){
		frame = Number (node.attributes.frame);
		name=node.attributes.name;
	}
	function copy (){
		var c = new Sprite ();
		c.frame = frame;
		c.name = name;
		return c;
	}
}
ошибка видимо в том, что в Floor:copy я обращаюсь к super.copy (), который возвращает объект Sprite. Ка только это исправить? Не пользоваться родительским copy()?
__________________
~
Never trouble trouble till trouble troubles you!


Последний раз редактировалось iNils; 10.12.2007 в 18:26.