код AS2:
MovieClip.prototype.setModel = function(m) { this.model = m; this.drawModel(m); } MovieClip.prototype.drawModel = drawModel;
Я пытался:
package { import flash.display.MovieClip; public class Prototype extends MovieClip { public function Prototype() { super(); } public function setModel(m) { this.model = m; this.drawModel(m); } public function setDrawModel(m) { this.drawModel = m; } } }
, но в MovieClip нет "this.model" или "drawModel (m)".*
Есть идеи?
public class Whatever extends MovieClip { private var _model:DisplayObject; public function set model(m:Object):void { this._model = m; this.drawModel(); } private function drawModel():void { _model.graphics.beginFill(0); //etc... } }
Тогда в другом классе вы можете сделать это
var whatever:Whatever = new Whatever(); whatever.model = new DisplayObject();
У вас есть определение модели и drawModel. Я вижу только setModel и setDrawModel, а не переменные.
Итак, если вы добавите в класс следующее:
модель закрытого типа: тип;
Тогда ваш this.model будет работать.