├── license.txt ├── bin ├── Fanvas.swf ├── demo │ ├── img1.png │ ├── 礼物.swf │ ├── img59.png │ ├── img62.png │ ├── img66.png │ ├── img69.png │ ├── img71.png │ ├── img73.png │ └── Test.html ├── 二次开发或批处理 │ ├── 批处理 │ │ ├── 批处理说明.txt │ │ └── FanvasService.swf │ ├── FanvasParserLib.swc │ └── FanvasParserLib说明.txt └── flashplayer_14_sa_debug.exe ├── exporter_src ├── readme.txt ├── lib │ ├── flash.swc │ ├── fzip.swc │ ├── skin.fla │ └── skin.swc └── src │ ├── com │ └── codeazur │ │ └── as3swf │ │ ├── tags │ │ ├── IDisplayListTag.as │ │ ├── IDefinitionTag.as │ │ ├── Tag.as │ │ ├── ITag.as │ │ ├── etc │ │ │ ├── TagSWFEncryptActions.as │ │ │ └── TagSWFEncryptSignature.as │ │ ├── TagDefineShape2.as │ │ ├── TagDefineShape3.as │ │ ├── TagEnd.as │ │ ├── TagShowFrame.as │ │ ├── TagUnknown.as │ │ ├── TagDefineFont3.as │ │ ├── TagRemoveObject2.as │ │ ├── TagDefineText2.as │ │ ├── TagSetTabIndex.as │ │ ├── TagRemoveObject.as │ │ ├── TagDefineFontInfo2.as │ │ ├── TagProtect.as │ │ ├── TagScriptLimits.as │ │ ├── TagEnableDebugger.as │ │ ├── TagMetadata.as │ │ ├── TagSoundStreamBlock.as │ │ ├── TagJPEGTables.as │ │ ├── TagSoundStreamHead2.as │ │ ├── TagStartSound.as │ │ ├── TagDefineBitsLossless2.as │ │ ├── TagSetBackgroundColor.as │ │ ├── TagStartSound2.as │ │ ├── TagEnableTelemetry.as │ │ ├── TagDefineFontName.as │ │ ├── TagImportAssets2.as │ │ ├── TagFrameLabel.as │ │ ├── TagVideoFrame.as │ │ ├── TagDoABCDeprecated.as │ │ ├── TagEnableDebugger2.as │ │ ├── TagDefineScalingGrid.as │ │ ├── TagCSMTextSettings.as │ │ ├── TagDebugID.as │ │ ├── TagDefineButtonCxform.as │ │ ├── TagExportAssets.as │ │ ├── TagSymbolClass.as │ │ ├── TagPlaceObject4.as │ │ ├── TagFileAttributes.as │ │ └── TagImportAssets.as │ │ ├── factories │ │ ├── ISWFTagFactory.as │ │ └── SWFFilterFactory.as │ │ ├── data │ │ ├── etc │ │ │ ├── IEdge.as │ │ │ ├── CurvedEdge.as │ │ │ └── StraightEdge.as │ │ ├── actions │ │ │ ├── IActionBranch.as │ │ │ ├── ActionUnknown.as │ │ │ ├── IAction.as │ │ │ ├── swf4 │ │ │ │ ├── ActionOr.as │ │ │ │ ├── ActionAdd.as │ │ │ │ ├── ActionAnd.as │ │ │ │ ├── ActionNot.as │ │ │ │ ├── ActionPop.as │ │ │ │ ├── ActionCall.as │ │ │ │ ├── ActionLess.as │ │ │ │ ├── ActionTrace.as │ │ │ │ ├── ActionDivide.as │ │ │ │ ├── ActionEquals.as │ │ │ │ ├── ActionEndDrag.as │ │ │ │ ├── ActionGetTime.as │ │ │ │ ├── ActionMultiply.as │ │ │ │ ├── ActionSubtract.as │ │ │ │ ├── ActionStartDrag.as │ │ │ │ ├── ActionStringAdd.as │ │ │ │ ├── ActionToInteger.as │ │ │ │ ├── ActionSetTarget2.as │ │ │ │ ├── ActionStringLess.as │ │ │ │ ├── ActionAsciiToChar.as │ │ │ │ ├── ActionCharToAscii.as │ │ │ │ ├── ActionCloneSprite.as │ │ │ │ ├── ActionGetProperty.as │ │ │ │ ├── ActionGetVariable.as │ │ │ │ ├── ActionSetProperty.as │ │ │ │ ├── ActionSetVariable.as │ │ │ │ ├── ActionRandomNumber.as │ │ │ │ ├── ActionRemoveSprite.as │ │ │ │ ├── ActionStringEquals.as │ │ │ │ ├── ActionStringLength.as │ │ │ │ ├── ActionMBAsciiToChar.as │ │ │ │ ├── ActionMBCharToAscii.as │ │ │ │ ├── ActionStringExtract.as │ │ │ │ ├── ActionMBStringLength.as │ │ │ │ ├── ActionMBStringExtract.as │ │ │ │ ├── ActionWaitForFrame2.as │ │ │ │ └── ActionPush.as │ │ │ ├── swf3 │ │ │ │ ├── ActionStop.as │ │ │ │ ├── ActionStopSounds.as │ │ │ │ ├── ActionPlay.as │ │ │ │ ├── ActionPreviousFrame.as │ │ │ │ ├── ActionToggleQuality.as │ │ │ │ ├── ActionNextFrame.as │ │ │ │ ├── ActionGotoFrame.as │ │ │ │ ├── ActionGotoLabel.as │ │ │ │ ├── ActionSetTarget.as │ │ │ │ ├── ActionWaitForFrame.as │ │ │ │ └── ActionGetURL.as │ │ │ ├── swf5 │ │ │ │ ├── ActionAdd2.as │ │ │ │ ├── ActionBitOr.as │ │ │ │ ├── ActionLess2.as │ │ │ │ ├── ActionBitAnd.as │ │ │ │ ├── ActionBitXor.as │ │ │ │ ├── ActionDelete.as │ │ │ │ ├── ActionModulo.as │ │ │ │ ├── ActionReturn.as │ │ │ │ ├── ActionTypeOf.as │ │ │ │ ├── ActionDelete2.as │ │ │ │ ├── ActionEquals2.as │ │ │ │ ├── ActionToNumber.as │ │ │ │ ├── ActionToString.as │ │ │ │ ├── ActionBitLShift.as │ │ │ │ ├── ActionBitRShift.as │ │ │ │ ├── ActionDecrement.as │ │ │ │ ├── ActionEnumerate.as │ │ │ │ ├── ActionGetMember.as │ │ │ │ ├── ActionIncrement.as │ │ │ │ ├── ActionInitArray.as │ │ │ │ ├── ActionNewMethod.as │ │ │ │ ├── ActionNewObject.as │ │ │ │ ├── ActionSetMember.as │ │ │ │ ├── ActionStackSwap.as │ │ │ │ ├── ActionBitURShift.as │ │ │ │ ├── ActionCallMethod.as │ │ │ │ ├── ActionInitObject.as │ │ │ │ ├── ActionTargetPath.as │ │ │ │ ├── ActionDefineLocal.as │ │ │ │ ├── ActionCallFunction.as │ │ │ │ ├── ActionDefineLocal2.as │ │ │ │ ├── ActionPushDuplicate.as │ │ │ │ └── ActionStoreRegister.as │ │ │ ├── swf7 │ │ │ │ ├── ActionThrow.as │ │ │ │ ├── ActionCastOp.as │ │ │ │ ├── ActionExtends.as │ │ │ │ └── ActionImplementsOp.as │ │ │ ├── swf6 │ │ │ │ ├── ActionGreater.as │ │ │ │ ├── ActionEnumerate2.as │ │ │ │ ├── ActionInstanceOf.as │ │ │ │ ├── ActionStrictEquals.as │ │ │ │ └── ActionStringGreater.as │ │ │ └── ActionExecutionContext.as │ │ ├── SWFScene.as │ │ ├── consts │ │ │ ├── SoundSize.as │ │ │ ├── SoundType.as │ │ │ ├── BitmapType.as │ │ │ ├── CSMTableHint.as │ │ │ ├── BitmapFormat.as │ │ │ ├── LineCapsStyle.as │ │ │ ├── LineJointStyle.as │ │ │ ├── GradientInterpolationMode.as │ │ │ ├── SoundRate.as │ │ │ ├── GradientSpreadMode.as │ │ │ ├── VideoCodecID.as │ │ │ ├── VideoDeblockingType.as │ │ │ ├── SoundCompression.as │ │ │ ├── ActionValueType.as │ │ │ └── BlendMode.as │ │ ├── filters │ │ │ ├── IFilter.as │ │ │ ├── Filter.as │ │ │ └── FilterBlur.as │ │ ├── SWFFrameLabel.as │ │ ├── SWFShapeRecordEnd.as │ │ ├── SWFRecordHeader.as │ │ ├── SWFRegisterParam.as │ │ ├── SWFFocalGradient.as │ │ ├── SWFZoneData.as │ │ ├── SWFRawTag.as │ │ ├── SWFSymbol.as │ │ ├── SWFKerningRecord.as │ │ ├── SWFShapeRecord.as │ │ ├── SWFSoundEnvelope.as │ │ ├── SWFGlyphEntry.as │ │ ├── SWFMorphFocalGradient.as │ │ ├── SWFGradientRecord.as │ │ ├── SWFMorphGradientRecord.as │ │ ├── SWFZoneRecord.as │ │ └── SWFClipActions.as │ │ ├── utils │ │ ├── NumberUtils.as │ │ ├── ObjCUtils.as │ │ ├── MatrixUtils.as │ │ └── ColorUtils.as │ │ ├── timeline │ │ ├── Scene.as │ │ ├── SoundStream.as │ │ └── LayerStrip.as │ │ ├── events │ │ ├── SWFErrorEvent.as │ │ ├── SWFWarningEvent.as │ │ ├── SWFProgressEvent.as │ │ └── SWFEventDispatcher.as │ │ └── exporters │ │ └── core │ │ ├── IShapeExporter.as │ │ └── DefaultShapeExporter.as │ ├── exporters │ └── IExporter.as │ ├── model │ ├── ImageData.as │ ├── ShapeData.as │ ├── frameAction │ │ ├── BaseFrameAction.as │ │ ├── RemoveElementAction.as │ │ ├── PlaceElementAction.as │ │ └── TweenAction.as │ ├── DisplayObjectData.as │ ├── SWFData.as │ ├── MovieClipData.as │ └── InstanceData.as │ └── parsers │ └── ShapeParser.as ├── copyright.txt └── README.md /license.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TencentOpen/Fanvas/HEAD/license.txt -------------------------------------------------------------------------------- /bin/Fanvas.swf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TencentOpen/Fanvas/HEAD/bin/Fanvas.swf -------------------------------------------------------------------------------- /bin/demo/img1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TencentOpen/Fanvas/HEAD/bin/demo/img1.png -------------------------------------------------------------------------------- /bin/demo/礼物.swf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TencentOpen/Fanvas/HEAD/bin/demo/礼物.swf -------------------------------------------------------------------------------- /bin/demo/img59.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TencentOpen/Fanvas/HEAD/bin/demo/img59.png -------------------------------------------------------------------------------- /bin/demo/img62.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TencentOpen/Fanvas/HEAD/bin/demo/img62.png -------------------------------------------------------------------------------- /bin/demo/img66.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TencentOpen/Fanvas/HEAD/bin/demo/img66.png -------------------------------------------------------------------------------- /bin/demo/img69.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TencentOpen/Fanvas/HEAD/bin/demo/img69.png -------------------------------------------------------------------------------- /bin/demo/img71.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TencentOpen/Fanvas/HEAD/bin/demo/img71.png -------------------------------------------------------------------------------- /bin/demo/img73.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TencentOpen/Fanvas/HEAD/bin/demo/img73.png -------------------------------------------------------------------------------- /exporter_src/readme.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TencentOpen/Fanvas/HEAD/exporter_src/readme.txt -------------------------------------------------------------------------------- /bin/二次开发或批处理/批处理/批处理说明.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TencentOpen/Fanvas/HEAD/bin/二次开发或批处理/批处理/批处理说明.txt -------------------------------------------------------------------------------- /exporter_src/lib/flash.swc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TencentOpen/Fanvas/HEAD/exporter_src/lib/flash.swc -------------------------------------------------------------------------------- /exporter_src/lib/fzip.swc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TencentOpen/Fanvas/HEAD/exporter_src/lib/fzip.swc -------------------------------------------------------------------------------- /exporter_src/lib/skin.fla: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TencentOpen/Fanvas/HEAD/exporter_src/lib/skin.fla -------------------------------------------------------------------------------- /exporter_src/lib/skin.swc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TencentOpen/Fanvas/HEAD/exporter_src/lib/skin.swc -------------------------------------------------------------------------------- /bin/flashplayer_14_sa_debug.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TencentOpen/Fanvas/HEAD/bin/flashplayer_14_sa_debug.exe -------------------------------------------------------------------------------- /bin/二次开发或批处理/FanvasParserLib.swc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TencentOpen/Fanvas/HEAD/bin/二次开发或批处理/FanvasParserLib.swc -------------------------------------------------------------------------------- /bin/二次开发或批处理/批处理/FanvasService.swf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TencentOpen/Fanvas/HEAD/bin/二次开发或批处理/批处理/FanvasService.swf -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/tags/IDisplayListTag.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.tags 2 | { 3 | public interface IDisplayListTag extends ITag 4 | { 5 | } 6 | } -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/factories/ISWFTagFactory.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.factories 2 | { 3 | import com.codeazur.as3swf.tags.ITag; 4 | 5 | public interface ISWFTagFactory 6 | { 7 | function create(type:uint):ITag; 8 | } 9 | } -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/tags/IDefinitionTag.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.tags 2 | { 3 | public interface IDefinitionTag extends ITag 4 | { 5 | function get characterId():uint; 6 | function set characterId(value:uint):void; 7 | 8 | function clone():IDefinitionTag; 9 | } 10 | } -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/tags/Tag.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.tags 2 | { 3 | import com.codeazur.utils.StringUtils; 4 | 5 | public class Tag 6 | { 7 | public static function toStringCommon(type:uint, name:String, indent:uint = 0):String { 8 | return StringUtils.repeat(indent) + "[" + StringUtils.printf("%02d", type) + ":" + name + "] "; 9 | } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/etc/IEdge.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.etc 2 | { 3 | import flash.geom.Point; 4 | 5 | public interface IEdge 6 | { 7 | function get from():Point; 8 | function get to():Point; 9 | function get lineStyleIdx():uint; 10 | function get fillStyleIdx():uint; 11 | 12 | function reverseWithNewFillStyle(newFillStyleIdx:uint):IEdge; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/utils/NumberUtils.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.utils 2 | { 3 | public class NumberUtils 4 | { 5 | public static function roundPixels20(pixels:Number):Number { 6 | return Math.round(pixels * 100) / 100; 7 | } 8 | 9 | public static function roundPixels400(pixels:Number):Number { 10 | return Math.round(pixels * 10000) / 10000; 11 | } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/utils/ObjCUtils.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.utils 2 | { 3 | public class ObjCUtils 4 | { 5 | public static function num2str(n:Number, twips:Boolean = false):String { 6 | if(twips) { n = Math.round(n * 100) / 100; } 7 | var s:String = n.toString(); 8 | if (s.indexOf(".") == -1) { 9 | s += ".0"; 10 | } 11 | return s + "f"; 12 | } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/IActionBranch.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions 2 | { 3 | import com.codeazur.as3swf.SWFData; 4 | 5 | public interface IActionBranch extends IAction 6 | { 7 | function get branchOffset():int; 8 | function set branchOffset(value:int):void; 9 | 10 | function get branchIndex():int; 11 | function set branchIndex(value:int):void; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/SWFScene.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data 2 | { 3 | public class SWFScene 4 | { 5 | public var offset:uint; 6 | public var name:String; 7 | 8 | // TODO: parse() method? 9 | public function SWFScene(offset:uint, name:String) 10 | { 11 | this.offset = offset; 12 | this.name = name; 13 | } 14 | 15 | public function toString():String { 16 | return "Frame: " + offset + ", Name: " + name; 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/consts/SoundSize.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.consts 2 | { 3 | public class SoundSize 4 | { 5 | public static const BIT_8:uint = 0; 6 | public static const BIT_16:uint = 1; 7 | 8 | public static function toString(soundSize:uint):String { 9 | switch(soundSize) { 10 | case BIT_8: return "8bit"; break; 11 | case BIT_16: return "16bit"; break; 12 | default: return "unknown"; break; 13 | } 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/consts/SoundType.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.consts 2 | { 3 | public class SoundType 4 | { 5 | public static const MONO:uint = 0; 6 | public static const STEREO:uint = 1; 7 | 8 | public static function toString(soundType:uint):String { 9 | switch(soundType) { 10 | case MONO: return "mono"; break; 11 | case STEREO: return "stereo"; break; 12 | default: return "unknown"; break; 13 | } 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/filters/IFilter.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.filters 2 | { 3 | import com.codeazur.as3swf.SWFData; 4 | 5 | import flash.filters.BitmapFilter; 6 | 7 | public interface IFilter 8 | { 9 | function get id():uint; 10 | function get filter():BitmapFilter; 11 | 12 | function parse(data:SWFData):void; 13 | function publish(data:SWFData):void; 14 | function clone():IFilter; 15 | function toString(indent:uint = 0):String; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/SWFFrameLabel.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data 2 | { 3 | public class SWFFrameLabel 4 | { 5 | public var frameNumber:uint; 6 | public var name:String; 7 | 8 | // TODO: parse() method? 9 | public function SWFFrameLabel(frameNumber:uint, name:String) 10 | { 11 | this.frameNumber = frameNumber; 12 | this.name = name; 13 | } 14 | 15 | public function toString():String { 16 | return "Frame: " + frameNumber + ", Name: " + name; 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/SWFShapeRecordEnd.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data 2 | { 3 | public class SWFShapeRecordEnd extends SWFShapeRecord 4 | { 5 | public function SWFShapeRecordEnd() {} 6 | 7 | override public function clone():SWFShapeRecord { return new SWFShapeRecordEnd(); } 8 | 9 | override public function get type():uint { return SWFShapeRecord.TYPE_END; } 10 | 11 | override public function toString(indent:uint = 0):String { 12 | return "[SWFShapeRecordEnd]"; 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/tags/ITag.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.tags 2 | { 3 | import com.codeazur.as3swf.SWFData; 4 | 5 | public interface ITag 6 | { 7 | function get type():uint; 8 | function get name():String; 9 | function get version():uint; 10 | function get level():uint; 11 | 12 | function parse(data:SWFData, length:uint, version:uint, async:Boolean = false):void; 13 | function publish(data:SWFData, version:uint):void; 14 | function toString(indent:uint = 0, flags:uint = 0):String; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/tags/etc/TagSWFEncryptActions.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.tags.etc 2 | { 3 | import com.codeazur.as3swf.tags.ITag; 4 | import com.codeazur.as3swf.tags.TagUnknown; 5 | 6 | public class TagSWFEncryptActions extends TagUnknown implements ITag 7 | { 8 | public static const TYPE:uint = 253; 9 | 10 | public function TagSWFEncryptActions(type:uint = 0) {} 11 | 12 | override public function get type():uint { return TYPE; } 13 | override public function get name():String { return "SWFEncryptActions"; } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/consts/BitmapType.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.consts 2 | { 3 | public class BitmapType 4 | { 5 | public static const JPEG:uint = 1; 6 | public static const GIF89A:uint = 2; 7 | public static const PNG:uint = 3; 8 | 9 | public static function toString(bitmapFormat:uint):String { 10 | switch(bitmapFormat) { 11 | case JPEG: return "JPEG"; break; 12 | case GIF89A: return "GIF89a"; break; 13 | case PNG: return "PNG"; break; 14 | default: return "unknown"; break; 15 | } 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/tags/etc/TagSWFEncryptSignature.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.tags.etc 2 | { 3 | import com.codeazur.as3swf.tags.ITag; 4 | import com.codeazur.as3swf.tags.TagUnknown; 5 | 6 | public class TagSWFEncryptSignature extends TagUnknown implements ITag 7 | { 8 | public static const TYPE:uint = 255; 9 | 10 | public function TagSWFEncryptSignature(type:uint = 0) {} 11 | 12 | override public function get type():uint { return TYPE; } 13 | override public function get name():String { return "SWFEncryptSignature"; } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/consts/CSMTableHint.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.consts 2 | { 3 | public class CSMTableHint 4 | { 5 | public static const THIN:uint = 0; 6 | public static const MEDIUM:uint = 1; 7 | public static const THICK:uint = 2; 8 | 9 | public static function toString(csmTableHint:uint):String { 10 | switch(csmTableHint) { 11 | case THIN: return "thin"; break; 12 | case MEDIUM: return "medium"; break; 13 | case THICK: return "thick"; break; 14 | default: return "unknown"; break; 15 | } 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/consts/BitmapFormat.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.consts 2 | { 3 | public class BitmapFormat 4 | { 5 | public static const BIT_8:uint = 3; 6 | public static const BIT_15:uint = 4; 7 | public static const BIT_24:uint = 5; 8 | 9 | public static function toString(bitmapFormat:uint):String { 10 | switch(bitmapFormat) { 11 | case BIT_8: return "8 BPP"; break; 12 | case BIT_15: return "15 BPP"; break; 13 | case BIT_24: return "24 BPP"; break; 14 | default: return "unknown"; break; 15 | } 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/timeline/Scene.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.timeline 2 | { 3 | import com.codeazur.utils.StringUtils; 4 | 5 | public class Scene 6 | { 7 | public var frameNumber:uint = 0; 8 | public var name:String; 9 | 10 | public function Scene(frameNumber:uint, name:String) 11 | { 12 | this.frameNumber = frameNumber; 13 | this.name = name; 14 | } 15 | 16 | public function toString(indent:uint = 0):String { 17 | return StringUtils.repeat(indent) + 18 | "Name: " + name + ", " + 19 | "Frame: " + frameNumber; 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/consts/LineCapsStyle.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.consts 2 | { 3 | import flash.display.CapsStyle; 4 | 5 | public class LineCapsStyle 6 | { 7 | public static const ROUND:uint = 0; 8 | public static const NO:uint = 1; 9 | public static const SQUARE:uint = 2; 10 | 11 | public static function toString(lineCapsStyle:uint):String { 12 | switch(lineCapsStyle) { 13 | case ROUND: return CapsStyle.ROUND; 14 | case NO: return CapsStyle.NONE; 15 | case SQUARE: return CapsStyle.SQUARE; 16 | default: return "unknown"; 17 | } 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/consts/LineJointStyle.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.consts 2 | { 3 | import flash.display.JointStyle; 4 | 5 | public class LineJointStyle 6 | { 7 | public static const ROUND:uint = 0; 8 | public static const BEVEL:uint = 1; 9 | public static const MITER:uint = 2; 10 | 11 | public static function toString(lineJointStyle:uint):String { 12 | switch(lineJointStyle) { 13 | case ROUND: return JointStyle.ROUND; 14 | case BEVEL: return JointStyle.BEVEL; 15 | case MITER: return JointStyle.MITER; 16 | default: return "null"; 17 | } 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/consts/GradientInterpolationMode.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.consts 2 | { 3 | import flash.display.InterpolationMethod; 4 | 5 | public class GradientInterpolationMode 6 | { 7 | public static const NORMAL:uint = 0; 8 | public static const LINEAR:uint = 1; 9 | 10 | public static function toString(interpolationMode:uint):String { 11 | switch(interpolationMode) { 12 | case NORMAL: return InterpolationMethod.RGB; break; 13 | case LINEAR: return InterpolationMethod.LINEAR_RGB; break; 14 | default: return InterpolationMethod.RGB; break; 15 | } 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/consts/SoundRate.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.consts 2 | { 3 | public class SoundRate 4 | { 5 | public static const KHZ_5:uint = 0; 6 | public static const KHZ_11:uint = 1; 7 | public static const KHZ_22:uint = 2; 8 | public static const KHZ_44:uint = 3; 9 | 10 | public static function toString(soundRate:uint):String { 11 | switch(soundRate) { 12 | case KHZ_5: return "5.5kHz"; break; 13 | case KHZ_11: return "11kHz"; break; 14 | case KHZ_22: return "22kHz"; break; 15 | case KHZ_44: return "44kHz"; break; 16 | default: return "unknown"; break; 17 | } 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/ActionUnknown.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions 2 | { 3 | import com.codeazur.as3swf.SWFData; 4 | 5 | public class ActionUnknown extends Action implements IAction 6 | { 7 | public function ActionUnknown(code:uint, length:uint, pos:uint) { 8 | super(code, length, pos); 9 | } 10 | 11 | override public function parse(data:SWFData):void { 12 | if (_length > 0) { 13 | data.skipBytes(_length); 14 | } 15 | } 16 | 17 | override public function toString(indent:uint = 0):String { 18 | return "[????] Code: " + _code.toString(16) + ", Length: " + _length; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/consts/GradientSpreadMode.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.consts 2 | { 3 | import flash.display.SpreadMethod; 4 | 5 | public class GradientSpreadMode 6 | { 7 | public static const PAD:uint = 0; 8 | public static const REFLECT:uint = 1; 9 | public static const REPEAT:uint = 2; 10 | 11 | public static function toString(spreadMode:uint):String { 12 | switch(spreadMode) { 13 | case PAD: return SpreadMethod.PAD; break; 14 | case REFLECT: return SpreadMethod.REFLECT; break; 15 | case REPEAT: return SpreadMethod.REPEAT; break; 16 | default: return "unknown"; break; 17 | } 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/IAction.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions 2 | { 3 | import com.codeazur.as3swf.SWFData; 4 | 5 | public interface IAction 6 | { 7 | function get code():uint; 8 | function get length():uint; 9 | function get lengthWithHeader():uint; 10 | function get pos():uint; 11 | 12 | function get lbl():String; 13 | function set lbl(value:String):void; 14 | 15 | function parse(data:SWFData):void; 16 | function publish(data:SWFData):void; 17 | function clone():IAction; 18 | function toString(indent:uint = 0):String; 19 | function toBytecode(indent:uint, context:ActionExecutionContext):String; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionOr.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionOr extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x11; 8 | 9 | public function ActionOr(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionOr]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "or"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionAdd.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionAdd extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x0a; 8 | 9 | public function ActionAdd(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionAdd]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "add"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionAnd.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionAnd extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x10; 8 | 9 | public function ActionAnd(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionAnd]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "and"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionNot.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionNot extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x12; 8 | 9 | public function ActionNot(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionNot]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "not"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionPop.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionPop extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x17; 8 | 9 | public function ActionPop(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionPop]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "pop"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf3/ActionStop.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf3 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionStop extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x07; 8 | 9 | public function ActionStop(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionStop]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "stop"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionCall.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionCall extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x9e; 8 | 9 | public function ActionCall(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionCall]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "call"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionLess.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionLess extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x0f; 8 | 9 | public function ActionLess(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionLess]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "less"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionAdd2.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionAdd2 extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x47; 8 | 9 | public function ActionAdd2(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionAdd2]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "add2"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionTrace.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionTrace extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x26; 8 | 9 | public function ActionTrace(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionTrace]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "trace"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionBitOr.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionBitOr extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x61; 8 | 9 | public function ActionBitOr(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionBitOr]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "bitOr"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionLess2.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionLess2 extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x48; 8 | 9 | public function ActionLess2(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionLess2]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "less2"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf7/ActionThrow.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf7 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionThrow extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x2a; 8 | 9 | public function ActionThrow(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionThrow]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "throw"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionDivide.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionDivide extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x0d; 8 | 9 | public function ActionDivide(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionDivide]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "divide"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionEquals.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionEquals extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x0e; 8 | 9 | public function ActionEquals(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionEquals]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "equals"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionBitAnd.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionBitAnd extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x60; 8 | 9 | public function ActionBitAnd(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionBitAnd]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "bitAnd"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionBitXor.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionBitXor extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x62; 8 | 9 | public function ActionBitXor(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionBitXor]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "bitXor"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionDelete.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionDelete extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x3a; 8 | 9 | public function ActionDelete(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionDelete]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "delete"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionModulo.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionModulo extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x3f; 8 | 9 | public function ActionModulo(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionModulo]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "modulo"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionReturn.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionReturn extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x3e; 8 | 9 | public function ActionReturn(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionReturn]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "return"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionTypeOf.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionTypeOf extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x44; 8 | 9 | public function ActionTypeOf(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionTypeOf]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "typeOf"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf7/ActionCastOp.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf7 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionCastOp extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x2b; 8 | 9 | public function ActionCastOp(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionCastOp]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "castOp"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionEndDrag.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionEndDrag extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x28; 8 | 9 | public function ActionEndDrag(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionEndDrag]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "endDrag"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionGetTime.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionGetTime extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x34; 8 | 9 | public function ActionGetTime(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionGetTime]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "getTime"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionDelete2.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionDelete2 extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x3b; 8 | 9 | public function ActionDelete2(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionDelete2]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "delete2"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionEquals2.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionEquals2 extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x49; 8 | 9 | public function ActionEquals2(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionEquals2]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "equals2"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf6/ActionGreater.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf6 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionGreater extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x67; 8 | 9 | public function ActionGreater(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionGreater]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "greater"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf7/ActionExtends.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf7 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionExtends extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x69; 8 | 9 | public function ActionExtends(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionExtends]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "extends"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionMultiply.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionMultiply extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x0c; 8 | 9 | public function ActionMultiply(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionMultiply]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "multiply"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionSubtract.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionSubtract extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x0b; 8 | 9 | public function ActionSubtract(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionSubtract]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "subtract"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionToNumber.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionToNumber extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x4a; 8 | 9 | public function ActionToNumber(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionToNumber]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "toNumber"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionToString.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionToString extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x4b; 8 | 9 | public function ActionToString(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionToString]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "toString"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionStartDrag.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionStartDrag extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x27; 8 | 9 | public function ActionStartDrag(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionStartDrag]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "startDrag"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionStringAdd.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionStringAdd extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x21; 8 | 9 | public function ActionStringAdd(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionStringAdd]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "stringAdd"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionToInteger.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionToInteger extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x18; 8 | 9 | public function ActionToInteger(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionToInteger]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "toInteger"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionBitLShift.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionBitLShift extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x63; 8 | 9 | public function ActionBitLShift(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionBitLShift]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "bitLShift"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionBitRShift.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionBitRShift extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x64; 8 | 9 | public function ActionBitRShift(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionBitRShift]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "bitRShift"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionDecrement.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionDecrement extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x51; 8 | 9 | public function ActionDecrement(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionDecrement]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "decrement"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionEnumerate.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionEnumerate extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x46; 8 | 9 | public function ActionEnumerate(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionEnumerate]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "enumerate"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionGetMember.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionGetMember extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x4e; 8 | 9 | public function ActionGetMember(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionGetMember]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "getMember"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionIncrement.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionIncrement extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x50; 8 | 9 | public function ActionIncrement(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionIncrement]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "increment"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionInitArray.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionInitArray extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x42; 8 | 9 | public function ActionInitArray(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionInitArray]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "initArray"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionNewMethod.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionNewMethod extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x53; 8 | 9 | public function ActionNewMethod(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionNewMethod]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "newMethod"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionNewObject.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionNewObject extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x40; 8 | 9 | public function ActionNewObject(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionNewObject]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "newObject"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionSetMember.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionSetMember extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x4f; 8 | 9 | public function ActionSetMember(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionSetMember]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "setMember"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionStackSwap.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionStackSwap extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x4d; 8 | 9 | public function ActionStackSwap(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionStackSwap]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "stackSwap"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf3/ActionStopSounds.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf3 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionStopSounds extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x09; 8 | 9 | public function ActionStopSounds(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionStopSounds]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "stopSounds"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionSetTarget2.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionSetTarget2 extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x20; 8 | 9 | public function ActionSetTarget2(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionSetTarget2]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "setTarget2"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionStringLess.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionStringLess extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x29; 8 | 9 | public function ActionStringLess(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionStringLess]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "stringLess"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionBitURShift.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionBitURShift extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x65; 8 | 9 | public function ActionBitURShift(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionBitURShift]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "bitURShift"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionCallMethod.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionCallMethod extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x52; 8 | 9 | public function ActionCallMethod(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionCallMethod]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "callMethod"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionInitObject.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionInitObject extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x43; 8 | 9 | public function ActionInitObject(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionInitObject]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "initObject"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionTargetPath.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionTargetPath extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x45; 8 | 9 | public function ActionTargetPath(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionTargetPath]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "targetPath"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf6/ActionEnumerate2.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf6 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionEnumerate2 extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x55; 8 | 9 | public function ActionEnumerate2(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionEnumerate2]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "enumerate2"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf6/ActionInstanceOf.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf6 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionInstanceOf extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x54; 8 | 9 | public function ActionInstanceOf(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionInstanceOf]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "instanceOf"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionAsciiToChar.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionAsciiToChar extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x33; 8 | 9 | public function ActionAsciiToChar(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionAsciiToChar]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "asciiToChar"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionCharToAscii.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionCharToAscii extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x32; 8 | 9 | public function ActionCharToAscii(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionCharToAscii]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "charToAscii"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionCloneSprite.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionCloneSprite extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x24; 8 | 9 | public function ActionCloneSprite(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionCloneSprite]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "cloneSprite"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionGetProperty.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionGetProperty extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x22; 8 | 9 | public function ActionGetProperty(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionGetProperty]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "getProperty"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionGetVariable.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionGetVariable extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x1c; 8 | 9 | public function ActionGetVariable(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionGetVariable]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "getVariable"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionSetProperty.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionSetProperty extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x23; 8 | 9 | public function ActionSetProperty(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionSetProperty]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "setProperty"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionSetVariable.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionSetVariable extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x1d; 8 | 9 | public function ActionSetVariable(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionSetVariable]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "setVariable"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionDefineLocal.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionDefineLocal extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x3c; 8 | 9 | public function ActionDefineLocal(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionDefineLocal]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "defineLocal"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf3/ActionPlay.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf3 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | import com.codeazur.as3swf.SWFData; 5 | 6 | public class ActionPlay extends Action implements IAction 7 | { 8 | public static const CODE:uint = 0x06; 9 | 10 | public function ActionPlay(code:uint, length:uint, pos:uint) { 11 | super(code, length, pos); 12 | } 13 | 14 | override public function toString(indent:uint = 0):String { 15 | return "[ActionPlay]"; 16 | } 17 | 18 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 19 | return toBytecodeLabel(indent) + "play"; 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionRandomNumber.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionRandomNumber extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x30; 8 | 9 | public function ActionRandomNumber(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionRandomNumber]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "randomNumber"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionRemoveSprite.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionRemoveSprite extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x25; 8 | 9 | public function ActionRemoveSprite(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionRemoveSprite]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "removeSprite"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionStringEquals.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionStringEquals extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x13; 8 | 9 | public function ActionStringEquals(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionStringEquals]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "stringEquals"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionStringLength.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionStringLength extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x14; 8 | 9 | public function ActionStringLength(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionStringLength]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "stringLength"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionCallFunction.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionCallFunction extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x3d; 8 | 9 | public function ActionCallFunction(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionCallFunction]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "callFunction"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionDefineLocal2.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionDefineLocal2 extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x41; 8 | 9 | public function ActionDefineLocal2(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionDefineLocal2]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "defineLocal2"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf6/ActionStrictEquals.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf6 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionStrictEquals extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x66; 8 | 9 | public function ActionStrictEquals(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionStrictEquals]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "strictEquals"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf7/ActionImplementsOp.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf7 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionImplementsOp extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x2c; 8 | 9 | public function ActionImplementsOp(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionImplementsOp]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "implementsOp"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf3/ActionPreviousFrame.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf3 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionPreviousFrame extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x05; 8 | 9 | public function ActionPreviousFrame(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionPreviousFrame]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "previousFrame"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf3/ActionToggleQuality.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf3 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionToggleQuality extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x08; 8 | 9 | public function ActionToggleQuality(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionToggleQuality]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "toggleQuality"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionMBAsciiToChar.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionMBAsciiToChar extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x37; 8 | 9 | public function ActionMBAsciiToChar(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionMBAsciiToChar]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "mbAsciiToChar"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionMBCharToAscii.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionMBCharToAscii extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x36; 8 | 9 | public function ActionMBCharToAscii(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionMBCharToAscii]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "mbCharToAscii"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionStringExtract.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionStringExtract extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x15; 8 | 9 | public function ActionStringExtract(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionStringExtract]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "stringExtract"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf5/ActionPushDuplicate.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf5 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionPushDuplicate extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x4c; 8 | 9 | public function ActionPushDuplicate(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionPushDuplicate]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "pushDuplicate"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf6/ActionStringGreater.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf6 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionStringGreater extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x68; 8 | 9 | public function ActionStringGreater(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionStringGreater]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "stringGreater"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /bin/二次开发或批处理/FanvasParserLib说明.txt: -------------------------------------------------------------------------------- 1 | 这里把Fanvas Parser部分封装成swc,方便使用者二次开发 2 | 使用方法: 3 | stage.addEventListener(MouseEvent.CLICK, function(e:MouseEvent):void 4 | { 5 | var file:FileReference = new FileReference(); 6 | file.browse([new FileFilter("swf", "*.swf")]); 7 | file.addEventListener(Event.SELECT, function(e:Event):void 8 | { 9 | file.load(); 10 | file.addEventListener(Event.COMPLETE, function(e1:Event):void 11 | { 12 | //API其实只有这一句 13 | FanvasParser.parse(file.data, function(data:*):void 14 | { 15 | trace(data.swfData is ByteArray, data.swfData.length); //bytearray 16 | trace(data.warning); //string 17 | }, 'swfData'); //导出的js数据对象名称 18 | }); 19 | }); 20 | }); -------------------------------------------------------------------------------- /copyright.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Tencent is pleased to support the open source community by making Fanvas available. 3 | * Copyright (C) 2015 THL A29 Limited, a Tencent company. All rights reserved. 4 | * 5 | * Licensed under the MIT License (the "License"); you may not use this file except in compliance with the 6 | * License. You may obtain a copy of the License at 7 | * http://opensource.org/licenses/MIT 8 | * 9 | * Unless required by applicable law or agreed to in writing, software distributed under the License is 10 | * distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 11 | * implied. See the License for the specific language governing permissions and limitations under the 12 | * License. 13 | */ 14 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionMBStringLength.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionMBStringLength extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x31; 8 | 9 | public function ActionMBStringLength(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionMBStringLength]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "mbStringLength"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf4/ActionMBStringExtract.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf4 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | 5 | public class ActionMBStringExtract extends Action implements IAction 6 | { 7 | public static const CODE:uint = 0x35; 8 | 9 | public function ActionMBStringExtract(code:uint, length:uint, pos:uint) { 10 | super(code, length, pos); 11 | } 12 | 13 | override public function toString(indent:uint = 0):String { 14 | return "[ActionMBStringExtract]"; 15 | } 16 | 17 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 18 | return toBytecodeLabel(indent) + "mbStringExtract"; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/actions/swf3/ActionNextFrame.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.actions.swf3 2 | { 3 | import com.codeazur.as3swf.data.actions.*; 4 | import com.codeazur.as3swf.SWFData; 5 | 6 | public class ActionNextFrame extends Action implements IAction 7 | { 8 | public static const CODE:uint = 0x04; 9 | 10 | public function ActionNextFrame(code:uint, length:uint, pos:uint) { 11 | super(code, length, pos); 12 | } 13 | 14 | override public function toString(indent:uint = 0):String { 15 | return "[ActionNextFrame]"; 16 | } 17 | 18 | override public function toBytecode(indent:uint, context:ActionExecutionContext):String { 19 | return toBytecodeLabel(indent) + "nextFrame"; 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/SWFRecordHeader.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data 2 | { 3 | public class SWFRecordHeader 4 | { 5 | public var type:uint; 6 | public var contentLength:uint; 7 | public var headerLength:uint; 8 | 9 | public function SWFRecordHeader(type:uint, contentLength:uint, headerLength:uint) 10 | { 11 | this.type = type; 12 | this.contentLength = contentLength; 13 | this.headerLength = headerLength; 14 | } 15 | 16 | public function get tagLength():uint { 17 | return headerLength + contentLength; 18 | } 19 | 20 | public function toString():String { 21 | return "[SWFRecordHeader] type: " + type + ", headerLength: " + headerLength + ", contentlength: " + contentLength; 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/SWFRegisterParam.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data 2 | { 3 | import com.codeazur.as3swf.SWFData; 4 | 5 | public class SWFRegisterParam 6 | { 7 | public var register:uint; 8 | public var name:String; 9 | 10 | public function SWFRegisterParam(data:SWFData = null) { 11 | if (data != null) { 12 | parse(data); 13 | } 14 | } 15 | 16 | public function parse(data:SWFData):void { 17 | register = data.readUI8(); 18 | name = data.readString(); 19 | } 20 | 21 | public function publish(data:SWFData):void { 22 | data.writeUI8(register); 23 | data.writeString(name); 24 | } 25 | 26 | public function toString():String { 27 | return "$" + register + ":" + name; 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/SWFFocalGradient.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data 2 | { 3 | import com.codeazur.as3swf.SWFData; 4 | 5 | public class SWFFocalGradient extends SWFGradient 6 | { 7 | public function SWFFocalGradient(data:SWFData = null, level:uint = 1) { 8 | super(data, level); 9 | } 10 | 11 | override public function parse(data:SWFData, level:uint):void { 12 | super.parse(data, level); 13 | focalPoint = data.readFIXED8(); 14 | } 15 | 16 | override public function publish(data:SWFData, level:uint = 1):void { 17 | super.publish(data, level); 18 | data.writeFIXED8(focalPoint); 19 | } 20 | 21 | override public function toString():String { 22 | return "(" + _records.join(",") + ")"; 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/consts/VideoCodecID.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.consts 2 | { 3 | public class VideoCodecID 4 | { 5 | public static const H263:uint = 2; 6 | public static const SCREEN:uint = 3; 7 | public static const VP6:uint = 4; 8 | public static const VP6ALPHA:uint = 5; 9 | public static const SCREENV2:uint = 6; 10 | 11 | public static function toString(codecId:uint):String { 12 | switch(codecId) { 13 | case H263: return "H.263"; break; 14 | case SCREEN: return "Screen Video"; break; 15 | case VP6: return "VP6"; break; 16 | case VP6ALPHA: return "VP6 With Alpha"; break; 17 | case SCREENV2: return "Screen Video V2"; break; 18 | default: return "unknown"; break; 19 | } 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/factories/SWFFilterFactory.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.factories 2 | { 3 | import com.codeazur.as3swf.data.filters.*; 4 | 5 | public class SWFFilterFactory 6 | { 7 | public static function create(id:uint):IFilter 8 | { 9 | switch(id) 10 | { 11 | case 0: return new FilterDropShadow(id); 12 | case 1: return new FilterBlur(id); 13 | case 2: return new FilterGlow(id); 14 | case 3: return new FilterBevel(id); 15 | case 4: return new FilterGradientGlow(id); 16 | case 5: return new FilterConvolution(id); 17 | case 6: return new FilterColorMatrix(id); 18 | case 7: return new FilterGradientBevel(id); 19 | default: throw(new Error("Unknown filter ID: " + id)); 20 | } 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/events/SWFErrorEvent.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.events 2 | { 3 | import flash.events.Event; 4 | 5 | public class SWFErrorEvent extends Event 6 | { 7 | public static const ERROR:String = "error"; 8 | 9 | public static const REASON_EOF:String = "eof"; 10 | 11 | public var reason:String; 12 | 13 | public function SWFErrorEvent(type:String, reason:String, bubbles:Boolean=false, cancelable:Boolean=false) 14 | { 15 | super(type, bubbles, cancelable); 16 | this.reason = reason; 17 | } 18 | 19 | override public function clone():Event { 20 | return new SWFErrorEvent(type, reason, bubbles, cancelable); 21 | } 22 | 23 | override public function toString():String { 24 | return "[SWFErrorEvent] reason: " + reason; 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/SWFZoneData.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data 2 | { 3 | import com.codeazur.as3swf.SWFData; 4 | 5 | public class SWFZoneData 6 | { 7 | public var alignmentCoordinate:Number; 8 | public var range:Number; 9 | 10 | public function SWFZoneData(data:SWFData = null) { 11 | if (data != null) { 12 | parse(data); 13 | } 14 | } 15 | 16 | public function parse(data:SWFData):void { 17 | alignmentCoordinate = data.readFLOAT16(); 18 | range = data.readFLOAT16(); 19 | } 20 | 21 | public function publish(data:SWFData):void { 22 | data.writeFLOAT16(alignmentCoordinate); 23 | data.writeFLOAT16(range); 24 | } 25 | 26 | public function toString():String { 27 | return "(" + alignmentCoordinate + "," + range + ")"; 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/SWFRawTag.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data 2 | { 3 | import com.codeazur.as3swf.SWFData; 4 | 5 | public class SWFRawTag 6 | { 7 | public var header:SWFRecordHeader; 8 | public var bytes:SWFData; 9 | 10 | public function SWFRawTag(data:SWFData = null) 11 | { 12 | if (data != null) { 13 | parse(data); 14 | } 15 | } 16 | 17 | public function parse(data:SWFData):void { 18 | var pos:uint = data.position; 19 | header = data.readTagHeader(); 20 | bytes = new SWFData(); 21 | var posContent:uint = data.position; 22 | data.position = pos; 23 | data.readBytes(bytes, 0, header.tagLength); 24 | data.position = posContent; 25 | } 26 | 27 | public function publish(data:SWFData):void { 28 | // Header is part of the byte array 29 | data.writeBytes(bytes); 30 | } 31 | } 32 | } -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/timeline/SoundStream.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.timeline 2 | { 3 | import flash.utils.ByteArray; 4 | 5 | public class SoundStream 6 | { 7 | public var startFrame:uint; 8 | public var numFrames:uint; 9 | public var numSamples:uint; 10 | 11 | public var compression:uint; 12 | public var rate:uint; 13 | public var size:uint; 14 | public var type:uint; 15 | 16 | protected var _data:ByteArray; 17 | 18 | public function SoundStream() 19 | { 20 | _data = new ByteArray(); 21 | } 22 | 23 | public function get data():ByteArray { return _data; } 24 | 25 | public function toString():String { 26 | return "[SoundStream] " + 27 | "StartFrame: " + startFrame + ", " + 28 | "Frames: " + numFrames + ", " + 29 | "Samples: " + numSamples + ", " + 30 | "Bytes: " + data.length; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/consts/VideoDeblockingType.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.consts 2 | { 3 | public class VideoDeblockingType 4 | { 5 | public static const VIDEOPACKET:uint = 0; 6 | public static const OFF:uint = 1; 7 | public static const LEVEL1:uint = 2; 8 | public static const LEVEL2:uint = 3; 9 | public static const LEVEL3:uint = 4; 10 | public static const LEVEL4:uint = 5; 11 | 12 | public static function toString(deblockingType:uint):String { 13 | switch(deblockingType) { 14 | case VIDEOPACKET: return "videopacket"; break; 15 | case OFF: return "off"; break; 16 | case LEVEL1: return "level 1"; break; 17 | case LEVEL2: return "level 2"; break; 18 | case LEVEL3: return "level 3"; break; 19 | case LEVEL4: return "level 4"; break; 20 | default: return "unknown"; break; 21 | } 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/events/SWFWarningEvent.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.events 2 | { 3 | import flash.events.Event; 4 | 5 | public class SWFWarningEvent extends Event 6 | { 7 | public static const OVERFLOW:String = "overflow"; 8 | public static const UNDERFLOW:String = "underflow"; 9 | 10 | public var index:uint; 11 | public var data:Object; 12 | 13 | public function SWFWarningEvent(type:String, index:uint, data:Object = null, bubbles:Boolean=false, cancelable:Boolean=false) 14 | { 15 | super(type, bubbles, cancelable); 16 | this.index = index; 17 | this.data = data; 18 | } 19 | 20 | override public function clone():Event { 21 | return new SWFWarningEvent(type, index, data, bubbles, cancelable); 22 | } 23 | 24 | override public function toString():String { 25 | return "[SWFWarningEvent] index: " + index; 26 | } 27 | } 28 | } -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/tags/TagDefineShape2.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.tags 2 | { 3 | import com.codeazur.as3swf.SWFData; 4 | 5 | public class TagDefineShape2 extends TagDefineShape implements IDefinitionTag 6 | { 7 | public static const TYPE:uint = 22; 8 | 9 | public function TagDefineShape2() {} 10 | 11 | override public function get type():uint { return TYPE; } 12 | override public function get name():String { return "DefineShape2"; } 13 | override public function get version():uint { return 2; } 14 | override public function get level():uint { return 2; } 15 | 16 | override public function toString(indent:uint = 0, flags:uint = 0):String { 17 | var str:String = Tag.toStringCommon(type, name, indent) + 18 | "ID: " + characterId + ", " + 19 | "Bounds: " + shapeBounds; 20 | str += shapes.toString(indent + 2); 21 | return str; 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/tags/TagDefineShape3.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.tags 2 | { 3 | import com.codeazur.as3swf.SWFData; 4 | 5 | public class TagDefineShape3 extends TagDefineShape2 implements IDefinitionTag 6 | { 7 | public static const TYPE:uint = 32; 8 | 9 | public function TagDefineShape3() {} 10 | 11 | override public function get type():uint { return TYPE; } 12 | override public function get name():String { return "DefineShape3"; } 13 | override public function get version():uint { return 3; } 14 | override public function get level():uint { return 3; } 15 | 16 | override public function toString(indent:uint = 0, flags:uint = 0):String { 17 | var str:String = Tag.toStringCommon(type, name, indent) + 18 | "ID: " + characterId + ", " + 19 | "Bounds: " + shapeBounds; 20 | str += shapes.toString(indent + 2); 21 | return str; 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/tags/TagEnd.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.tags 2 | { 3 | import com.codeazur.as3swf.SWFData; 4 | 5 | public class TagEnd implements ITag 6 | { 7 | public static const TYPE:uint = 0; 8 | 9 | public function TagEnd() {} 10 | 11 | public function parse(data:SWFData, length:uint, version:uint, async:Boolean = false):void { 12 | // Do nothing. The End tag has no body. 13 | } 14 | 15 | public function publish(data:SWFData, version:uint):void { 16 | data.writeTagHeader(type, 0); 17 | } 18 | 19 | public function get type():uint { return TYPE; } 20 | public function get name():String { return "End"; } 21 | public function get version():uint { return 1; } 22 | public function get level():uint { return 1; } 23 | 24 | public function toString(indent:uint = 0, flags:uint = 0):String { 25 | return Tag.toStringCommon(type, name, indent); 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/etc/CurvedEdge.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.etc 2 | { 3 | import flash.geom.Point; 4 | 5 | public class CurvedEdge extends StraightEdge implements IEdge 6 | { 7 | protected var _control:Point; 8 | 9 | public function CurvedEdge(aFrom:Point, aControl:Point, aTo:Point, aLineStyleIdx:uint = 0, aFillStyleIdx:uint = 0) 10 | { 11 | super(aFrom, aTo, aLineStyleIdx, aFillStyleIdx); 12 | _control = aControl; 13 | } 14 | 15 | public function get control():Point { return _control; } 16 | 17 | override public function reverseWithNewFillStyle(newFillStyleIdx:uint):IEdge { 18 | return new CurvedEdge(to, control, from, lineStyleIdx, newFillStyleIdx); 19 | } 20 | 21 | override public function toString():String { 22 | return "stroke:" + lineStyleIdx + ", fill:" + fillStyleIdx + ", start:" + from.toString() + ", control:" + control.toString() + ", end:" + to.toString(); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/tags/TagShowFrame.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.tags 2 | { 3 | import com.codeazur.as3swf.SWFData; 4 | 5 | public class TagShowFrame implements IDisplayListTag 6 | { 7 | public static const TYPE:uint = 1; 8 | 9 | public function TagShowFrame() {} 10 | 11 | public function parse(data:SWFData, length:uint, version:uint, async:Boolean = false):void { 12 | // Do nothing. The End tag has no body. 13 | } 14 | 15 | public function publish(data:SWFData, version:uint):void { 16 | data.writeTagHeader(type, 0); 17 | } 18 | 19 | public function get type():uint { return TYPE; } 20 | public function get name():String { return "ShowFrame"; } 21 | public function get version():uint { return 1; } 22 | public function get level():uint { return 1; } 23 | 24 | public function toString(indent:uint = 0, flags:uint = 0):String { 25 | return Tag.toStringCommon(type, name, indent); 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/SWFSymbol.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data 2 | { 3 | import com.codeazur.as3swf.SWFData; 4 | 5 | public class SWFSymbol 6 | { 7 | public var tagId:uint; 8 | public var name:String; 9 | 10 | public function SWFSymbol(data:SWFData = null) { 11 | if (data != null) { 12 | parse(data); 13 | } 14 | } 15 | 16 | public static function create(aTagID:uint, aName:String):SWFSymbol { 17 | var swfSymbol:SWFSymbol = new SWFSymbol(); 18 | swfSymbol.tagId = aTagID; 19 | swfSymbol.name = aName; 20 | return swfSymbol; 21 | } 22 | 23 | public function parse(data:SWFData):void { 24 | tagId = data.readUI16(); 25 | name = data.readString(); 26 | } 27 | 28 | public function publish(data:SWFData):void { 29 | data.writeUI16(tagId); 30 | data.writeString(name); 31 | } 32 | 33 | public function toString():String { 34 | return "TagID: " + tagId + ", Name: " + name; 35 | } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/tags/TagUnknown.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.tags 2 | { 3 | import com.codeazur.as3swf.SWFData; 4 | 5 | public class TagUnknown implements ITag 6 | { 7 | protected var _type:uint; 8 | 9 | public function TagUnknown(type:uint = 0) { 10 | _type = type; 11 | } 12 | 13 | public function parse(data:SWFData, length:uint, version:uint, async:Boolean = false):void { 14 | data.skipBytes(length); 15 | } 16 | 17 | public function publish(data:SWFData, version:uint):void { 18 | throw(new Error("No raw tag data available.")); 19 | } 20 | 21 | public function get type():uint { return _type; } 22 | public function get name():String { return "????"; } 23 | public function get version():uint { return 0; } 24 | public function get level():uint { return 1; } 25 | 26 | public function toString(indent:uint = 0, flags:uint = 0):String { 27 | return Tag.toStringCommon(type, name, indent); 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/utils/MatrixUtils.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.utils 2 | { 3 | import com.codeazur.as3swf.data.SWFMatrix; 4 | 5 | public class MatrixUtils 6 | { 7 | public static function interpolate(matrix1:SWFMatrix, matrix2:SWFMatrix, ratio:Number):SWFMatrix { 8 | // TODO: not sure about this at all 9 | var matrix:SWFMatrix = new SWFMatrix(); 10 | matrix.scaleX = matrix1.scaleX + (matrix2.scaleX - matrix1.scaleX) * ratio; 11 | matrix.scaleY = matrix1.scaleY + (matrix2.scaleY - matrix1.scaleY) * ratio; 12 | matrix.rotateSkew0 = matrix1.rotateSkew0 + (matrix2.rotateSkew0 - matrix1.rotateSkew0) * ratio; 13 | matrix.rotateSkew1 = matrix1.rotateSkew1 + (matrix2.rotateSkew1 - matrix1.rotateSkew1) * ratio; 14 | matrix.translateX = matrix1.translateX + (matrix2.translateX - matrix1.translateX) * ratio; 15 | matrix.translateY = matrix1.translateY + (matrix2.translateY - matrix1.translateY) * ratio; 16 | return matrix; 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /exporter_src/src/com/codeazur/as3swf/data/filters/Filter.as: -------------------------------------------------------------------------------- 1 | package com.codeazur.as3swf.data.filters 2 | { 3 | import com.codeazur.as3swf.SWFData; 4 | 5 | import flash.filters.BitmapFilter; 6 | 7 | public class Filter implements IFilter 8 | { 9 | protected var _id:uint; 10 | 11 | public function Filter(id:uint) { 12 | _id = id; 13 | } 14 | 15 | public function get id():uint { return _id; } 16 | 17 | public function get filter():BitmapFilter { 18 | throw(new Error("Implement in subclasses!")); 19 | } 20 | 21 | public function parse(data:SWFData):void { 22 | throw(new Error("Implement in subclasses!")); 23 | } 24 | 25 | public function publish(data:SWFData):void { 26 | throw(new Error("Implement in subclasses!")); 27 | } 28 | 29 | public function clone():IFilter { 30 | throw(new Error("Implement in subclasses!")); 31 | } 32 | 33 | public function toString(indent:uint = 0):String { 34 | return "[Filter]"; 35 | } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /exporter_src/src/exporters/IExporter.as: -------------------------------------------------------------------------------- 1 | /* 2 | * Tencent is pleased to support the open source community by making Fanvas available. 3 | * Copyright (C) 2015 THL A29 Limited, a Tencent company. All rights reserved. 4 | * 5 | * Licensed under the MIT License (the "License"); you may not use this file except in compliance with the 6 | * License. You may obtain a copy of the License at 7 | * http://opensource.org/licenses/MIT 8 | * 9 | * Unless required by applicable law or agreed to in writing, software distributed under the License is 10 | * distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 11 | * implied. See the License for the specific language governing permissions and limitations under the 12 | * License. 13 | */ 14 | package exporters 15 | { 16 | import model.SWFData; 17 | 18 | /** 19 | * 20 | * @author tencent 21 | * @date Jul 7, 2014 22 | */ 23 | public interface IExporter 24 | { 25 | function export(swfData:SWFData):*; 26 | } 27 | } -------------------------------------------------------------------------------- /bin/demo/Test.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |