as3实现翻牌效果
代码如下:
注意,元件Card10必须对称,且中心放置在注册点上(代码来源于flash游戏编程大学):
/* This code is from "ActionScript 3.0 Game Programming University" by Gary RosenzweigCopyright 2007http://flashgameu.comSee the book or site for more information */package {import flash.display.*;import flash.events.*;public dynamic class Card10 extends MovieClip {private var flipStep:uint;private var isFlipping:Boolean = false;private var flipToFrame:uint;// begin the flip, remember which frame to jump topublic function startFlip(flipToWhichFrame:uint) {isFlipping = true;flipStep = 10;flipToFrame = flipToWhichFrame;this.addEventListener(Event.ENTER_FRAME, flip);}// take 10 steps to flippublic function flip(event:Event) {flipStep--; // next stepif (flipStep > 5) { // first half of flipthis.scaleX = .20*(flipStep-6);} else { // second half of flipthis.scaleX = .20*(5-flipStep);}// when it is the middle of the flip, go to new frameif (flipStep == 5) {gotoAndStop(flipToFrame);}// at the end of the flip, stop the animationif (flipStep == 0) {this.removeEventListener(Event.ENTER_FRAME, flip);}}}}