forked from: MultiStripe (090616)
1本づつ動かしてグライコの出来損ないみたいな感じに。
なんかずーっと動かしてるともったりしてくる。
【注意!!!】ブラウザ落ちるかも、、、
ここから何かできるかな。
/**
* Copyright OneInchPunch ( http://wonderfl.net/user/OneInchPunch )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/AtAO
*/
// forked from OneInchPunch's MultiStripe (090616)
// 1本づつ動かしてグライコの出来損ないみたいな感じに。
// なんかずーっと動かしてるともったりしてくる。
// 【注意!!!】ブラウザ落ちるかも、、、
// ここから何かできるかな。
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import caurina.transitions.Tweener;
//import net.hires.debug.Stats;
[SWF(backgroundColor="#000000", frameRate=60)]
public class MultiStripe extends Sprite {
private var stageW:Number = stage.stageWidth;
private var stageH:Number = stage.stageHeight;
public function MultiStripe() {
init();
//addChild(new Stats());
}
private function init():void {
// コンテナMC
var _container:MovieClip = new MovieClip();
_container.x = 0;
_container.y = 0;
addChild(_container);
// 横分割数
var horizontalNum:int = 4;
// 縦分割数
var verticalNum:int = 200;
for(var i:int = 0; i < horizontalNum; i++) {
// 横縞
var _box:Sprite = new Sprite();
_box.graphics.beginFill(0x000000);
_box.graphics.drawRect(0,
((stageH / horizontalNum) * (i + 1)) - (stageH / horizontalNum),
stageW,
stageH / horizontalNum
);
_box.graphics.endFill();
// 縦縞
for (var n:int = 0; n < verticalNum; n++) {
var _obj:Sprite = new Sprite();
_obj.graphics.beginFill(Math.random() * 0xffffff);
_obj.graphics.drawRect(((stageW / verticalNum) * (n + 1)) - (stageW / verticalNum),
(stageH / horizontalNum) * i,
stageW / verticalNum,
stageH / horizontalNum);
_obj.graphics.endFill();
_obj.blendMode = "add";
// 動かす
xLoop(_obj);
// 横縞に追加
_box.addChild(_obj);
}
// コンテナに追加
_container.addChild(_box);
}
}
private function xLoop(_targetObj:Sprite):void {
// タイマー
var _timer:Timer = new Timer(2500);
_timer.addEventListener(TimerEvent.TIMER, xTween);
_timer.start();
function xTween(e:TimerEvent):void {
// 移動量を200〜-200でランダムに
var _targetY:Number = Math.floor( (Math.random()*400)-200 );
// Tween設定
Tweener.addTween(_targetObj, {
y:_targetY,
time:1.0,
transition:"easeOutElastic",
onComplete:xCallBack,
onCompleteParams:[_targetObj]
});
}
// コールバック関数
function xCallBack(targetObj:Object):void {
Tweener.addTween(targetObj, {
y:0.0,
time:1.0,
transition:"easeOutElastic"
});
}
}
}
}