flash on 2012-11-28

by hemingway
♥0 | Line 104 | Modified 2012-11-28 04:25:12 | MIT License
play

ActionScript3 source code

/**
 * Copyright hemingway ( http://wonderfl.net/user/hemingway )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/dSOB
 */

package
{
    import flash.display.*;
    import flash.events.*;
    import flash.geom.*;
    
    public class ProjectileTests extends Sprite
    {
        public function ProjectileTests()
        {
            addEventListener(Event.ADDED_TO_STAGE, addedToStage);
        }
        
        public function _init() :void
        {
            /*children*/
            
            addChild(new ProjectileGun());
            
            graphics.clear     ();
            graphics.lineStyle (1, 0, 0.75);
            graphics.drawRect  (0, 0, 464, 464);
        }
        
        public function addedToStage($e:Event) :void
        {
            removeEventListener(Event.ADDED_TO_STAGE, addedToStage);
            
            _init();          
        }
    }
}

import flash.display.*;
import flash.events.*;
import flash.geom.*;
import flash.text.*;

class ProjectileGun extends Sprite
{
    protected var _c:Number;
    protected var _a:Number;
    protected var _x:Number;
    protected var _y:Number;
    protected var _w:Number;
    protected var _h:Number;
    
    /*projectile*/
    
    protected var p  :Sprite = new Sprite();
    
    protected var p_c:Number;
    protected var p_a:Number;
    protected var p_x:Number;
    protected var p_y:Number;
    protected var p_r:Number;
    protected var p_v:Number;
    
    public function ProjectileGun($x:Number = 232.5, $y:Number = 232.5, $w:Number = 2, $h:Number = 2, $c:Number = 0, $a:Number = 0.75)
    {
        addEventListener(Event.ADDED_TO_STAGE, addedToStage);
    
        _c = $c;
        _a = $a;
        _x = $x;
        _y = $y;
        _w = $w;
        _h = $h;
        
        p_c = $c;
        p_a = $a;
        p_x = $x;
        p_y = $y;
        p_r = $w;
        p_v = 0;
    }
    
    public function _init() :void
    {
        graphics.clear     ();
        graphics.beginFill (_c, _a);
        graphics.drawRect  (_x, _y, _w, _h);
        graphics.endFill   (); 
    }
    
    public function addedToStage($e:Event) :void
    {
        removeEventListener(Event.ADDED_TO_STAGE, addedToStage);
        
        addChild(p);
        
        _init();
    }
}

class TraceToStage extends Sprite
{
    protected var _s:String;
    protected var _tf:TextField = new TextField();
    
    public function TraceToStage($s:String)
    {
        addEventListener(Event.ADDED_TO_STAGE, addedToStage);
        
        _s = $s;
    }
    
    public function _init() :void
    {
        _tf.text = _s;

        graphics.clear     ();
        graphics.lineStyle (1, 0, 0.75);
        graphics.drawRect  (0, 0, 0, 0);
    }
    
    public function addedToStage($e:Event) :void
    {
        removeEventListener(Event.ADDED_TO_STAGE, addedToStage);
        
        /*properties*/
        _tf.x = 2;
        _tf.y = 2;
        _tf.selectable = false;
        _tf.autoSize = TextFieldAutoSize.LEFT;
        _tf.border = true;
        
        /*children*/
        addChild(_tf);
        
        _init();
    }
    
    public function get text ()          :String { return _s }
    public function set text ($s:String) :void   { _s = $s; _init(); }
}