Hej allesammen

Har tit siddet og tænkt på hvordan i andre gør når i har en klasse der subklasser Sprite, min normale måde er jeg har en metode der returnere mit displayobjekt så jeg kan bruge addChild metoden.

Jeg ville høre om i har andre måde?.

Interface

1
2
3
4
5
6
7
8
9
10
11
12
package core
{
  import flash.display.DisplayObject;
  import flash.display.Sprite;
  
  public interface IBall
  {
    function get displayObject():DisplayObject;
    function drawBall():Sprite;
    
  }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package core
{
  import flash.display.DisplayObject;
  import flash.display.Sprite;
 
  public class Ball extends Sprite implements IBall
  {
    public function Ball()
    {
      //no need for constructor.
    }
    
    public function get displayObject():DisplayObject
    {
      return this;
    }
    
    public function drawBall():Sprite
    {
      var ob:Sprite = new Sprite();
      ob.graphics.beginFill(0x000000,1);
      ob.graphics.drawCircle(100,100,20);
      ob.graphics.endFill()
      return ob;
    }
    
  }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
package {
  import core.Ball;
  import core.IBall;
  
  import flash.display.Sprite;
 
  public class Interfaceeksample extends Sprite
  {
    public function Interfaceeksample()
    {
      var blackball:IBall = new Ball();
      blackball.drawBall();
      addChild(blackball.displayObject);
    }
  }
}