0
這是一個腳本,當我點擊一個對象時,它會打開一個帶有頁面翻轉效果的小書。腳本,設置對象不可見
我完成了幾乎所有的事情,但我希望當我點擊後退按鈕時,所有desapears和我回到只看到原始對象。它不工作,因爲它只刪除其中一頁!我嘗試做一個數組,但它也沒有工作,我也不太好陣列。誰能幫忙?
import fl.transitions.Tween;
import fl.transitions.easing.*;
import fl.transitions.TweenEvent;
import flash.display.Sprite;
import flash.display.Loader;
var cont : DisplayObject;
var cont2 : DisplayObject;
var imgLoader : Loader;
//loads pages
for (var i:int=0; i<=4; i++){
imgLoader = new Loader();
imgLoader.contentLoaderInfo.addEventListener(Event.INIT, onLoadJPEG);
imgLoader.load(new URLRequest(""+i+".png"));
}
var imgLoader2 : Loader;
//loads back button
imgLoader2 = new Loader();
imgLoader2.contentLoaderInfo.addEventListener(Event.INIT, onLoadSketch);
imgLoader2.load(new URLRequest("voltaatrassketchbook.png"));
function onLoadJPEG (e : Event) : void {
cont = e.target.loader;
cont.x =250;
cont.y =50;
cont.width = (445-100)/2;
cont.height = (604-100)/2;
addChild(cont);
cont.addEventListener(MouseEvent.MOUSE_UP, FlipPage);
}
function onLoadSketch (e : Event) : void {
cont2 = e.target.loader;
cont2.x =450;
cont2.y =300;
cont2.width = 181/2;
cont2.height = 127/2;
addChild(cont2);
cont2.addEventListener(MouseEvent.MOUSE_UP, volta);
}
function FlipPage(e:MouseEvent):void{
setChildIndex(DisplayObject(e.currentTarget), this.numChildren - 1);
if (e.currentTarget.rotationY == 0) {
var myTween:Tween = new Tween(e.currentTarget, "rotationY",
Regular.easeInOut,0, 180, 1, true);
}
if (e.currentTarget.rotationY == 180) {
var myTween:Tween = new Tween(e.currentTarget, "rotationY",
Regular.easeInOut, 180, 0, 1, true);
}
}
//function to go back
function volta (e: MouseEvent): void {
gotoAndStop(1);
cont.visible=false;
cont2.visible=false;
}
順便說一句你有什麼IDEIA我怎樣可以把頁面空白時,我翻轉?當我翻轉它變白時它顯示我剛翻轉的頁面的反射。 – user2397976
@ user2397976您需要爲包含正面圖像和背面圖像的每個頁面創建一個容器。那麼你需要檢查每一幀的旋轉。如果旋轉大於90且小於270,則將後圖像的子索引設置爲numchildren - 1.如果旋轉大於270或小於90,則將前圖像的子索引設置爲numchildren - 1.如果您需要更多幫助理解,請將此作爲一個單獨問題,我可以給您一個更徹底的例子。 – bwroga