forked from: forked from: flash on 2010-1-13
forked from ballの重なりはどうすればよいですか? (diff: 91)
先に配置してあげてから、動かしてあげる。 いろいろ試行錯誤しましたができました。
ActionScript3 source code
/**
* Copyright Tamanegi_kenshi ( http://wonderfl.net/user/Tamanegi_kenshi )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/fG21
*/
//先に配置してあげてから、動かしてあげる。
//いろいろ試行錯誤しましたができました。
//
//
package {
import flash.display.Sprite;
import flash.events.Event;
import flash.geom.Transform;
import flash.text.TextField;
import flash.text.TextFormat;
public class FlashTest extends Sprite {
private var ball:TextField;
private var angle:int=0;
private var radias:int =200;
private var speed:Number =0;
private var _font:Array;
private var balls:Array;
public function FlashTest() {
init();
}
private function init():void{
_font =["波","波","波","波","波","波","波","波","波","波","波","波","波","波","波"];
balls =new Array();
for(var i:int =0; i<_font.length;i++){
ball =new TextField();
var _format:TextFormat =new TextFormat();
_format.size =50;
_format.bold =true;
_format.color =0x0000ff;
ball.defaultTextFormat =_format;
ball.text =_font[i];
ball.x =-i*35+stage.stageWidth;
addChild(ball);
balls.push(ball);
}
addEventListener(Event.ENTER_FRAME,on);
}
//onを使って処理を繰り返し行う
private function on(event:Event):void{
speed =3;
angle +=1;
for(var i:int =0; i<_font.length;i++){
var radiuns:Number = (360/_font.length*-i+angle)*Math.PI/180;
if(balls[i].x >stage.stageWidth){
balls[i].x =-45;
}
balls[i].x +=speed;
balls[i].y =200+Math.sin(radiuns)*100;
}
}
}
}
//Ballのクラスを作る
import flash.display.Sprite;
