flash on 2014-11-23
♥0 |
Line 66 |
Modified 2014-11-23 06:04:04 |
MIT License
archived:2017-03-30 11:52:36
ActionScript3 source code
/**
* Copyright mutantleg ( http://wonderfl.net/user/mutantleg )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/A1ZJ
*/
package {
import flash.text.TextField;
import flash.events.Event;
import flash.display.Sprite;
public class FlashTest extends Sprite {
public function FlashTest() {
deb = new TextField();
deb.width = 320;
deb.height =240;
deb.mouseEnabled=false;
addChild(deb);
stage.addEventListener(Event.ENTER_FRAME, onEnter);
}//ctor
public var cx:Number = 120;
public var cy:Number = 230;
public var vx:Number = 0;
public var vy:Number = 0;
public var rad:Number = 32;
public var ang:Number = 0;
public var deb:TextField;
public function onEnter(e:Event):void
{
var wang:Number = 3.1415;
var wx:Number = 230;
var wy:Number = 230;
graphics.clear();
graphics.lineStyle(2, 0);
ang = 0.8;
vx = Math.cos(ang)*17;
vy = Math.sin(ang)*17;
if (cy > 400) {cy=230;}
var d:Number;
d = (cx-wx)*Math.cos(wang) + (cy-wy)*Math.sin(wang);
deb.text = ""+d;
if (d < rad)
{
var dot:Number;
var nx:Number;
var ny:Number;
nx = Math.cos(wang);
ny = Math.sin(wang);
dot = vx*nx + vy*ny;
var px:Number;
var py:Number;
px = nx*dot;
py = ny*dot;
vx -=px;
vy -=py;
if (d-2 < rad)
{
vx += nx;
vy +=ny;
}
}//endif
// if (cx + vx + rad > 230)
// { vx = 0; }
cx += vx;
cy += vy;
graphics.drawCircle(cx,cy, rad);
graphics.moveTo(cx,cy);
graphics.lineTo(cx+Math.cos(ang)*rad,cy+Math.sin(ang)*rad);
// graphics.beginFill(0,0.2);
// graphics.drawRect(230, 0,230,400);
// graphics.endFill();
graphics.moveTo(wx+Math.sin(wang)*-256,wy+Math.cos(wang)*256);
graphics.lineTo(wx+Math.sin(wang)*256,wy+Math.cos(wang)*-256);
graphics.moveTo(wx,wy);
graphics.lineTo(wx+Math.cos(wang)*8,wy+Math.sin(wang)*8);
}//onenter
}//classend
}