forked from: forked from: 不規則に跳ねる玉
forked from forked from: 不規則に跳ねる玉 (diff: 13)
自由気ままに飛び跳ねる玉達 左右の壁に当たった時もballのY軸の動きを変更(玉の数を減らしてわかり易く)
ActionScript3 source code
/**
* Copyright Evolutor ( http://wonderfl.net/user/Evolutor )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/vm64
*/
// forked from Evolutor's forked from: 不規則に跳ねる玉
// forked from Evolutor's 不規則に跳ねる玉
// forked from Evolutor's forked from: 不規則に跳ねる玉
// forked from Evolutor's 不規則に跳ねる玉
// 自由気ままに飛び跳ねる玉達
// 左右の壁に当たった時もballのY軸の動きを変更(玉の数を減らしてわかり易く)
package{
import flash.display.*;
import flash.events.*;
import flash.geom.*;
public class Main extends Sprite{
public function Main(){
stage.frameRate = 60;
var gravity:Number = 0.5;
var hitTest:Boolean = false;
for (var i:int=0; i<3; i++){
var ball:MovieClip = new MovieClip();
ball.graphics.beginFill(0xffffff*Math.random());
ball.graphics.drawCircle(0, 0, 20);
ball.graphics.endFill();
ball.speedX = Math.random()*20-10;
ball.speedY = Math.random()*-20;
addChild(ball);
ball.addEventListener(Event.ENTER_FRAME, randomBall);
}
function randomBall(evt:Event):void{
var ball:MovieClip=MovieClip(evt.target);
ball.speedY += gravity;
ball.x += ball.speedX;
ball.y += ball.speedY;
if (ball.y>stage.stageHeight-20){
ball.speedX = Math.random()*20-10;
ball.speedY = Math.random()*-20;
}
if(ball.x>stage.stageWidth-20){
ball.speedX *= -1;
ball.speedY = Math.random()*20-10;
}
if(ball.x<0){
ball.speedX *= -1;
ball.speedY = Math.random()*20-10;
}
}
}
}
}
