我有一個.swf,我在互聯網上下載它是一個動畫,我非常想將它放在我的.swf中,但是,當我加載並嘗試控制.swf我得到一個錯誤代碼。 TypeError:錯誤#1034:類型強制失敗:無法將flash.display :: AVM1Movie @ 10d52701轉換爲flash.display.MovieClip。將as1/2代碼轉換爲as3
我搜索了網絡的這個錯誤,這是因爲.swf編譯爲as1/2,因此我無法得到它的「對象」,並控制它。
我也反編譯了.swf並讀取了代碼,但代碼大部分是在as1/2中完成的,我不知道它的作用,因爲我剛開始學習as3,並且從未觸及過1/2。
任何人都有什麼想法我可以做什麼?下面是代碼反編譯,從我瞭解它是用來「移動」的動畫部分。這是一個「魚」的身體部分,以創建一個非常流暢的游泳動作。我曾嘗試將其轉換爲as3代碼,但我得到錯誤,它無法找到變量。
function corps(objet)
{
i = 0;
for (;;)
{
if (i >= 8)
{
return;
}
tourne = Math.cos(i + getTimer()/(400 - m)) * 9;
objet["p" + i]._rotation = (0 - tourne)/2;
objet.p5["p" + i]._rotation = 0 - tourne;
objet.p5.p4["p" + i]._rotation = 0 - tourne;
objet.p5.p4.p3["p" + i]._rotation = 0 - tourne;
objet.p5.p4.p3.p2["p" + i]._rotation = 0 - tourne;
objet.p5.p4.p3.p2.p1["p" + i]._rotation = (0 - tourne)/2;
++i;
}
}
function fish(objeti)
{
if (objeti._x && objeti._y)
{
corps(objeti);
}
}
var j = Math.random(20) * 7 - 5;
var m = Math.random(50) * 2;
j = 4;
m = 4;
k = 0;
u = 0;
v = 1;
this.poisson.s = 1;
this.poisson.vari = this.poisson._width/10 + this.poisson._height/10;
this.onEnterFrame = function()
{
fish(this.poisson);
}
;
反編譯代碼...您可以隨時聯繫原始(法語區)程序員:-) – 2011-07-15 10:16:42
是的,我做了,但我認爲他的英語不是很好,我無法理解他輸入的內容。 – sutoL
如果您能夠理解您是否可以反編譯並重用它? –