0

2 人のキャラクターの対話を示すインタラクティブなコミックを作成しています。このチュートリアル: http://frameentered.com/content/typing-effect-flash-as2を使用して、タイピング テキスト アニメーションを作成しました。Flash Pro CS6 で AS2 を使用しています。

文字列内の 2 つの文字が入れ替わることがあることを除けば、うまく機能します。たとえば、ダイアログの一部は、「to say」ではなく「tos ay」(コードにあるように) を出力したり、「まあ」ではなく「まあ、l」を出力したりします。

テキストを再生成すると (次のフレームをクリックしてから元に戻す)、通常は修正されます。しかし、これは多くの異なるフレームでかなり頻繁に発生します。理由はわかりません.

また、テキストが終了した後にのみ有効にするタイマーの次/前のボタンを使用して、次/前のフレームとの文字化けを防ぎます(すべて同じ動的テキストフィールドを使用します)。それはチュートリアルにあったものに私が追加した部分なので、何かを台無しにしたのかもしれません。

これまでの SWF はこちら: http://sta.sh/0owl7iiqx5o

私のコードは次のとおりです。

_root.nextbtn.enabled = false;
_root.prevbtn.enabled = false;

//speed of typing (ms)
var speed:Number = 30;

//what shall be typed
var msg1:String = "Easy for you to say.";

//where it shall be typed
typeText(msg1,tf1);


//makes the typing happen
function typeText(msg:String, tf:TextField)
{
    for (i = 0; i < msg.length; i++)
    {
        setTimeout(addChar,speed * i,msg.charAt(i),tf);
    }
}

//button timer: must load AFTER setTimeout(addChar)^
var btnTimer:Number = setTimeout(enBTN, speed * i);

//adds letters
function addChar(char:String, tf:TextField)
{
    tf.text += char;
}
//enables buttons
function enBTN()
{
    _root.nextbtn.enabled = true;
    _root.prevbtn.enabled = true;
}

どうもありがとう!

4

0 に答える 0