Имам персонализиран клас, който е разширен от MovieClip. Класът основно създава бутон, който използва етикети на рамка във MovieClip, за да се движи между състоянията на бутоните, докато се изпращат събития с мишката. Всяко състояние (всеки с дължина около 20 кадъра) се прекратява с времева линия stop()
.
Този клас е бил използван в много други проекти, но след определен момент в моето текущо приложение всички бутони, създадени като разширение на моя клас бутони, спират да изпълняват кода на времевата линия и просто се възпроизвеждат в цикъл. Това включва всички следи, поставени във времевата линия, но целият код в класа все още се изпълнява правилно, дори извикванията gotoAndPlay, когато състоянието на бутона се промени.
Най-странната част е, че не се хвърля грешка от нито един от неправилно работещите бутони на сцената.
Това, от което се нуждая, са предложения за това какво може да попречи на всеки обект, който разширява определен клас, да изпълни код на времевата линия, без да изведе грешка.
Благодаря!
АКТУАЛИЗАЦИЯ: Това все още ме стъписва. Нашите проекти обикновено се състоят от три части: лек предварително зареждане, езикова и възрастова врата, след което основното приложение. Всеки се зарежда в предишния, като всеки път се използва текущият домейн на приложението. След като основното приложение бъде заредено, всеки персонализиран обект на показване, който разширява MovieClip (директно или косвено), ще игнорира всеки скрипт за действие директно на своята времева линия. Възпроизвеждащата глава обаче все още може да се контролира от класа.
АКТУАЛИЗАЦИЯ 2: Това е кодът в класа на тестов бутон, който направих. Забележете как в него няма нищо.
package com.test
{
import flash.display.MovieClip;
public class TestLabelButton extends MovieClip
{
public function TestLabelButton():void
{
}
}
}
Актуализация 3: Така че го стесних, но е странно. Изглежда, че мога да заредя своя езиков порт в програмата за предварително зареждане съвсем добре, като езиковият портал е swf с персонализиран клас на документа, който разширява MovieClip. След това обаче, ако заредя още SWF файлове, които съдържат персонализиран doc клас, разширяващ MovieClip, все едно всички впоследствие създадени MovieClips на техните разширения губят целия код на техните времеви линии.
stop()
. - person shanethehat   schedule 12.04.2011