📄 movie_clips_def.h.svn-base
字号:
#ifndef _MOVIE_CLIP_DEF_H_#define _MOVIE_CLIP_DEF_H_#include "base_types.h"struct ActionBlock { // 参考 swftools 得出.#define TClipEventKeyupP 0x80#define TClipEventKeyDownP 0x40#define TClipEventMouseUpP 0x20#define TClipEventMouseDownP 0x10#define TClipEventMouseMoveP 0x8#define TClipEventUnloadP 0x4#define TClipEventEnterFrameP 0x2#define TClipEventLoadP 0x1#define TClipEventDragOverP 0x8000#define TClipEventRollOutP 0x4000#define TClipEventRollOverP 0x2000#define TClipEventReleaseOutsideP 0x1000#define TClipEventReleaseP 0x800#define TClipEventPressP 0x400#define TClipEventInitializeP 0x200#define TClipEventDataP 0x100#define TClipEventConstructP 0x40000#define TClipEventDragOutP 0x10000#define TClipEventKeyPressP 0x20000 // 128 种可能的按键事件 // 146 种可能的事件 struct ActionRecord* ClipEventKeyupP; struct ActionRecord* ClipEventKeyDownP; struct ActionRecord* ClipEventMouseUpP; struct ActionRecord* ClipEventMouseDownP; struct ActionRecord* ClipEventMouseMoveP; struct ActionRecord* ClipEventUnloadP; struct ActionRecord* ClipEventEnterFrameP; struct ActionRecord* ClipEventLoadP; struct ActionRecord* ClipEventDragOverP; struct ActionRecord* ClipEventRollOutP; struct ActionRecord* ClipEventRollOverP; struct ActionRecord* ClipEventReleaseOutsideP; struct ActionRecord* ClipEventReleaseP; struct ActionRecord* ClipEventPressP; struct ActionRecord* ClipEventInitializeP; struct ActionRecord* ClipEventDataP; struct ActionRecord* ClipEventConstructP; struct ActionRecord* ClipEventDragOutP; struct ActionRecord* ClipEventKeyPressP[128]; // 128 种可能的按键事件};//在层上加对象 含 PlaceObject 和 PlaceObject2struct PlaceObject { struct PAndRObjects* NextP; UI16 Depth; UI8 PlaceAndRemoveType; UI8 Flags;#define PlaceFlagHasClipActions 0x1<<7#define PlaceFlagHasClipDepth 0x1<<6#define PlaceFlagHasName 0x1<<5#define PlaceFlagHasRatio 0x1<<4#define PlaceFlagHasColorTransform 0x1<<3#define PlaceFlagHasMatrix 0x1<<2#define PlaceFlagHasCharacter 0x1<<1#define PlaceFlagMove 0x1<<0 UI16 CharacterID; struct Matrix Matrix; struct CxFormWithAlpha ColorTransform; UI16 Ratio; UI16 ClipDepth; struct ActionBlock *ActionBlockP; STRING NameP;};//移除 含 RemoveObject 和 RemoveObject2struct RemoveObject { struct PAndRObjects* NextP; UI16 Depth; UI8 PlaceAndRemoveType; UI16 CharacterID;};struct PAndRObjects { struct PAndRObjects* NextP; UI16 Depth;#define TPlaceObjectOne 0x11#define TPlaceObjectTwo 0x12#define TRemoveObjectOne 0x21#define TRemoveObjectTwo 0x22 UI8 PlaceAndRemoveType;};struct FrameLabel { struct FrameLabel* NextP; STRING NameP; UI16 Frame;};// 一个 Frame 上可挂三类东西, 即图形,声音和脚本struct Frame { // 图形 struct PAndRObjects* TagsListP; // 接 PlaceObject 和 RemoveObject 组成的链表. // 声音 XXX 假定一 frame 上只挂一个流声音和一个事件声音 struct SoundStreamHead* SoundStreamHeadP;// 此 Frame 上流式声音的内容,可挂 声音头. struct SoundStreamBlock* SoundStreamBlockP; // 此 Frame 上流式声音的内容,可挂 声音块. struct StartSound* EventSoundP; // 此 Frame 上事件声音的内容,可挂 StartSound. // 脚本 struct ActionRecord* FrameEventP; // 挂在此 Frame 上的脚本.};// 主动画 和 Sprite 都可被称为 MovieClipstruct MovieClip { UI8 CharacterType; //= CharMovieClip; UI16 CharacterID; struct FrameLabel* FrameLabelListP; //Frame 名称到 Frame 号的对照链表 UI32 TotalFrames; //总帧数 // Frame 索引 struct Frame Frames[1];};#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -