2012-04-08 14 views
1

ここ フラッシュエラー1084:「構文エラー」

3.0 actionscropt
"Topbar,Layer 'Action Layer',Frame 1,line 12 1084: syntax error: expection semicolon before add. 
"Topbar,Layer 'Action Layer',Frame 1,line 12 1084: syntax error: expection rightbrace before semicolon 

を使用した場合こんにちは、私はFlashで2つのエラーメッセージを取得していますが、私のコードは、誰もが実際に感謝を何が起こっているかにいくつかの洞察力を与えるとの助けることができるです問題の修正を行いました。

clip = Number(random(7)) + 1; 
while (Number(clip) <= 7) 
{ 
    clip = Number(clip) + 1; 
    Scale = Number(random(80)) + 1; 
    setProperty("/star", _x, Number(random(800)) + 10); 
    setProperty("/star", _rotation, Number(random(330)) + 50); 
    setProperty("/star", _xscale, Scale); 
    setProperty("/star", _yscale, Scale); 
    setProperty("/star", _y, Number(random(800)) + 50); 
    n = Number(n) + 1; 
    bn = "star" add n; 
    duplicateMovieClip("star", bn, n); 
    set(bn add ":n", n); 
} // end while 
clip = "0"; 
+0

これはas3またはas2ですか?どちらの方法でも、この行に問題があります: 'bn =" star "add n;'とこの行は 'set(bn add":n "、n);'です。おそらく '' star ''と' 'add''と' n''の間に何らかの演算子が存在するはずですが、 '+' – cmann

+0

と思っています。これは既にAc​​tionScript2が導入された時のレガシーコードです。 +歳。それを書き直す時間です。 – grapefrukt

答えて

2

あなたからこの構文を得たところ、私にはわからない:

bn = "star" add n; 

しかし、私は何を意味するとエラーメッセージが表示され何

bn = "star" + n; 

であると仮定します。

さらに、setPropertyduplicateMovieClipの両方がAS3で廃止されているので、それ以上のエラーメッセージは表示されません。また、アンダースコア(_x、_yなど)で始まるすべてのプロパティの名前が変更されました。

おそらく、ActionScript 3で変更された内容を読み進めてから、続行することをお勧めします。そうしないと、本当に苦労するでしょう。

+0

Macromedia Flash 4(1999、私は信じています)構文:ブラウザ開発にとって非常に古く、Flash Lite 1.1プラグインの基礎として使用されていた数年前まではかなり一般的でした。 – AsTheWormTurns

+0

ええ、私はそれが "equals"などのための 'eq'のような不便なテキストベースの操作のすべての種類を持っていたことを覚えています...痛い。 AS3のチュートリアルに慣れるのではなく、誰もが今日のFlash開発から始める(または再訪する)ために、これを使用するのは少し難解です。 – weltraumpirat

+0

私はその言語であらゆる種類のことをやっている人々を覚えています:-)これはまだそれで済んでいます:http://www.ferryhalim.com/orisinal/ – AsTheWormTurns

0

あなたのコードはAS2にあり、公開設定に行き、あなたのスクリプトをAS2に変更します。以下はあなたのスクリプトの編集です。前述のように

clip = Number(random(7)) + 1; 
while (Number(clip) <= 7) 
{ 
clip = Number(clip) + 1; 
Scale = Number(random(80)) + 1; 
setProperty("/star", _x, Number(random(800)) + 10); 
setProperty("/star", _rotation, Number(random(330)) + 50); 
setProperty("/star", _xscale, Scale); 
setProperty("/star", _yscale, Scale); 
setProperty("/star", _y, Number(random(800)) + 50); 
n = Number(n) + 1; 
bn = "star" + n; 
duplicateMovieClip("star", bn, n); 
set(bn + ":n", n); 
} // end while 
clip = "0"; 

は、私は彼らのコードまたはdirectorlyシンボルとボタンの上に置かれsdcriptsを許可しないなど、多くの変更があり、プロパティ名がaswell変更されている、あなたは後藤アドビドキュメントがAS2/AS3から自分の変化を確認するためにすべきだと思う:例:

_root // can no longer be targeted in this syntax 
_xscale = scaleX // the underscores have been removed 
       // and the property names have been changed 

希望します。

+0

私は既にAc​​tionScript 3.0を別の部分を既に制御しているので、両方とも持っている方法がありますか?どちらかといえば、それをActionScript 3.0に変換する方法はありますか? –

+0

これは可能ですが、同じswf/movieにはありません。だからあなたはswfをもう一方の内部にロードする – joshua