graphics
GreenSock を使用して AS3のオブジェクトのアルファをトゥイーンしようとしていますが、関数が機能していません。2 秒でアルファ 0 から 0.7 にトゥイーンしようとしています。fromTo();
メソッドも機能しません。そうしたくありませんが、代わりにインクリメンタル for ループを使用してこれを行う必要がありますか?—これでは、トゥイーンの時間を制御できないためです。
public function overlayBox():void {
var overlaySquare:Sprite = new Sprite();
overlaySquare.graphics.beginFill(0x00000);
overlaySquare.graphics.drawRect(0, 0, displayRes, displayRes);
overlaySquare.graphics.endFill();
overlaySquare.x = xScreenPos;
overlaySquare.y = yScreenPos;
TweenMax.from(overlaySquare, 2, {autoAlpha:0});
TweenMax.to(overlaySquare, 2, {autoAlpha:0.7});
addChild(overlaySquare);
trace("overlaySquare index: " + getChildIndex(overlaySquare));
}
編集: 上記の TweenMax 関数を次のように置き換えることで、アルファ 0 から 0.7 へのフェードを修正しました。
overlaySquare.alpha = 0;
TweenMax.to(overlaySquare, 5, {alpha:0.7});
ただし、アルファ トゥイーンをプログラムの残りの部分と一緒に実行すると、問題が発生します。トゥイーンは「点滅」し、すぐに 0.7 になります (0 から 0.7 に「ジャンプ」しているように見えます)。問題は、後で呼び出される関数に切り分けられていますoverlayBox();
。プログラムの概要: ローダーを使用してイメージがロードされます。ローダーの中に、 がありmyTimer.start();
ます。これは、イメージがロードされると、残りのプログラムを実行するために使用されます。これoverlayBox();
は、次に続く最初のメソッドであり、正常に実行されます。次のメソッドはtextAnimation();
、それを壊すものであり、その理由はわかりません:
public function textAnimation():void {
//set text format
textFormat.font = "Helvetica Neue Light";
textFormat.size = 28;
textFormat.bold = false;
textFormat.color = 0xFFFFFF;
//textFormat.letterSpacing = 5;
//set text size
var size18bold:TextFormat = new TextFormat();
size18bold.size = 36;
size18bold.bold = true;
// pass text format
textOne.defaultTextFormat = textFormat;
textTwo.defaultTextFormat = textFormat;
var xScreenPosStart:Number = xScreenPos + 440;
var xScreenPosEnd:Number = xScreenPos - 300;
textOne.text = "Blah blah blah";
textOne.autoSize = TextFieldAutoSize.LEFT;
textOne.x = xScreenPosStart;
textOne.y = yScreenPos + 240;
TweenMax.to(textOne, 14, {x:xScreenPosEnd, ease:SlowMo.ease.config(1, 0), repeat:-1});
textTwo.text = "Blah blah blah";
textTwo.autoSize = TextFieldAutoSize.LEFT;
textTwo.x = xScreenPosStart;
textTwo.y = yScreenPos + 140;
TweenMax.to(textTwo, 12, {x:xScreenPosEnd, ease:SlowMo.ease.config(1, 0), repeat:-1, delay:4});
//add to stage
addChild(textOne);
trace("textOne index: " + getChildIndex(textOne));
addChild(textTwo);
trace("textTwo index: " + getChildIndex(textTwo));
textOne.setTextFormat(size18bold);
}