2011-08-04 17 views
0

私はダイアログボックスで非常に簡単なアドベンチャーゲームを作っています。AS2 - ダイナミックテキストボックス内のテキストの切り替え

ダイアログボックスは動的なテキストボックスです。 「次へ」ボタンが押されるたびに次のメッセージを表示する必要があります。

これは見た目です。

stop(); 

onEnterFrame = gameProgression(); 

function gameProgression() 
{ 
if (MessageProgress = 1) 
{ 
    MessageText.text = "Blah blah blah."; 
} 
else 
{ 
    if (MessageProgress = 2) 
    { 
     MessageText.text = "More blah."; 
    } 
    else 
    { 
     if (MessageProgress = 3) 
     { 
      MessageText.text = "And again."; 
     } 
     else 
     { 

などなど。 「次へ」ボタンを押すたびに、MessageProgress変数に+1が追加されます。

しかし、これを試してみると、最初のメッセージは完璧に表示されますが、ボタンを何回クリックしても他のメッセージは表示されません。

答えて

1

声明if(MessageProgress = 1)はあなたが条件ならば、他のために同様の式&を評価するために使用if(MessageProgress == 1) 1.

としてMessageprogressを割り当てることを意味します。

とにかく、上記の方法はすべてではありません。なぜ、アレイ内のメッセージを入れていないし、単に


EDIT ...配列[0]、[1]配列のようにそれらを参照してください。

何かのように、

stop(); 

onEnterFrame = gameProgression(); 

myArray = new Array("Blah blah blah.","More Blah.","And Again"); 

function gameProgression() 
{ 
    // Remember to start MessageProgress from 0 and not 1 

    myArray[MessageProgress]; 
} 
+0

Wouldnスイッチは、この場合、他の場合ははしごよりも速く動作しますか?もちろん、 – midhunhk

+0

。だから、私は「行く道ではない」と言ったのです。とにかく、上記の場合、条件付き分岐はほとんど必要ありません。配列で十分です。 – loxxy

+0

私は配列を使うことができません。メッセージに合うようにムービークリップが表示しているフレームも変更する予定です。 私はスイッチケースを使ってみましたが、私はまだそれを更新するように見えません。それはちょうど最後の場合にまっすぐ行く。 – BishyT

関連する問題