/ / Flash stop (); Zdá sa, že nefunguje po exportovaní filmového klipu ako SWC - flash, actionscript, swc, flash-cs5.5

Zastavenie blesku (); nezdá sa, že funguje po exportovaní movieclip ako SWC - flash, actionscript, swc, flash-cs5.5

Mám Flash CS 5.5 fla so základnou animáciou časovej osi. na poslednom snímke som dal kľúčovú snímku s jediným kódom

stop();

napriek tomu sa tento filmový klip nezastaví na konci, ale nekonečne sa opakuje.

film sa exportuje ako SWC, ktorý sa potom načíta do iného flash filmu. vo filme to však nenazýva žiadne funkcie ani s ním interaguje, okrem vkladania.

Už som to testoval pomocou ladiacej verzie prehrávača Flash, aby som zistil, či existujú nejaké výnimky, ale nedochádza k žiadnym chybám.

odpovede:

1 pre odpoveď č. 1

Ako spúšťate MovieClip? Ak používate metódu [Embed (src ...)], myslím, že všetky vaše skripty budú odstránené. Rovnaké ako pri vložených SWF. Namiesto toho pridajte SWC do cesty zostavenia.

http://www.airtightinteractive.com/2009/06/better-flash-asset-loading-using-swcs/

package
{
import flash.display.Sprite;

import hud.HealthBar;

public class TestSWCLibrary extends Sprite
{
public function TestSWCLibrary()
{
var health : HealthBar = new HealthBar();
addChild(health);
}
}
}

0 pre odpoveď č. 2

Na stop(); je správne;

domnievam sa, že ste urobili chybu, napríklad ste zastavili () na hlavnej časovej osi, a nie na filmový klip?

Okná výstupu ukazujú nejaké chyby pri kompilácii?


0 pre odpoveď č. 3

Znie to, akoby nejaký skript spôsoboval katastrofu pred spustením systému stop(); je dosiahnuté. Prehrávač Flash Player má tendenciu ticho zlyhať pri niektorých kódoch a zároveň prehrávať časovú os, akoby sa nič nestalo.

Jedným zo spôsobov, ako to odladiť a zistiť, kde sa na vašej časovej osi vyskytne chyba, je pridať ďalšie dočasné stop(); príkazy na časovú os. Pri práci dozadu by ste mali byť schopní určiť, na ktorom rámci sa prehrávač Flash Player prepne do „slepého“ režimu.