静岡理工科大学 | 菅沼ホーム | ActionScript 目次 | 索引 |
package { import flash.display.Sprite; import flash.events.Event; import flash.events.MouseEvent; [SWF(backgroundColor="0xeeffee", width="300", height="200", frameRate="30")] public class Event_e extends Sprite { public function Event_e() { init(); } private function init():void { var rect : Sprite = new Sprite(); rect.graphics.beginFill(0xff00ff00); rect.graphics.drawRect(100, 50, 100, 100); rect.graphics.endFill(); rect.name = "rectangle"; rect.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown); addChild(rect); var cir : Sprite = new Sprite(); cir.graphics.beginFill(0xff0000ff); cir.graphics.drawCircle(150, 100, 20); cir.graphics.endFill(); cir.name = "circle"; rect.addChild(cir); } private function onMouseDown(event:MouseEvent):void { trace("target = " + event.target.name); trace("currentTarget = " + event.currentTarget.name); // 外側の四角をクリックしたとき // target = rectangle // currentTarget = rectangle // 内側の円をクリックしたとき // target = circle // currentTarget = rectangle } } }
package { import flash.display.Sprite; import flash.events.Event; import flash.events.MouseEvent; [SWF(backgroundColor="0xeeffee", width="600", height="400", frameRate="30")] public class Ball extends Sprite { private var ball : Sprite; private var g : Number = 9.8; private var v0 : Number = 0; private var v : Number = 0; private var t : Number = 0; private var h0 : Number = stage.stageHeight; private var sw : Number = 1; public function Ball() { init(); } private function init():void { ball = new Sprite(); addChild(ball); ball.graphics.beginFill(0x00ff00); ball.graphics.drawCircle(0, 0, 40); ball.graphics.endFill(); ball.x = 0; ball.y = 0; addEventListener(Event.ENTER_FRAME, onEnterFrame); ball.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown); } private function onEnterFrame(event:Event):void { if (ball.x < stage.stageWidth + 40 && sw > 0) { ball.x += 1.5; t += 0.1; v = -g * t + v0; ball.y = stage.stageHeight - (-0.5 * g * t * t + v0 * t + h0); if (ball.y >= stage.stageHeight - 40 && v < 0) { ball.y = stage.stageHeight - 40; v0 = -0.8 * v; h0 = 40; t = 0; } trace("position", ball.x, ball.y); } } private function onMouseDown(event:MouseEvent):void { if (sw == 0) sw = 1; else sw = 0; } } }
静岡理工科大学 | 菅沼ホーム | ActionScript 目次 | 索引 |