此工具提供了一种快速重用 Flash CS 中制作的动画的方法。Grapefrukt 的惊人导出器的微调版本提供了一种将 Flash 制作的角色的动画信息(位置、旋转、缩放、透明度)导出到 xml 的方法。FlashToCocos iOS 库读取这些 xml 文件并在 Cocos2D 中重新创建角色。
在第一帧上添加 Grapefrukt 导出代码。两种示例用途
import com.grapefrukt.exporter.simple.SimpleExport;
import com.grapefrukt.exporter.extractors.*;
// change robot for whatever name you want to use
var export:SimpleExport = new SimpleExport(this, "robot");
// change RobotCharacterMc for whatever name you MovieClip is in the library
export.textures.add(TextureExtractor.extract(new RobotCharacterMc));
AnimationExtractor.extract(export.animations, new RobotCharacterMc);
export.export();
import com.grapefrukt.exporter.simple.*;
import com.grapefrukt.exporter.extractors.*;
import com.grapefrukt.exporter.textures.*;
const SCALE_RETINA = 1;
const SCALE_NON_RETINA = .5;
const COCOS_RETINA_EXT:String = "-hd";
// change robot for whatever name you want to use
var export:FTCSimpleExport = new FTCSimpleExport(this, "robot", stage.frameRate);
// change RobotCharacterMc for whatever name your MovieClip is in the library
AnimationExtractor.extract(export.animations, new RobotCharacterMc, null, true, 1);
var textureSheetRetina:TextureSheet = TextureExtractor.extract(new RobotCharacterMc, null, false, null, true, SCALE_RETINA, FTCBitmapTexture, COCOS_RETINA_EXT);
var textureSheetNonRetina:TextureSheet = TextureExtractor.extract(new RobotCharacterMc, null, false, null, true, SCALE_NON_RETINA);
export.texturesFile.add(textureSheetRetina);
export.texturesArt.add(textureSheetRetina);
export.texturesArt.add(textureSheetNonRetina);
export.export();
更新发布设置,包含所需的库路径
FTCharacter 是主要使用的类。它扩展了 CCLayer,并负责加载 XML 文件和纹理。仍然暴露了许多不应该暴露的方法。希望我们能在短期内清理一下代码。
-(FTCharacter) characterFromXMLFile:(NSString *)xmlFileName
读取 XML,加载纹理并返回 FTCCharacter。
IE: FTCharacter *robot = [FTCharacter characterFromXMLFile:@"robot"]
-(void) playAnimation:(NSString *)animation loop:(BOOL)loops wait:(BOOL)waits
开始播放指定的 动画。如果指定了循环,则将循环播放。等待参数表示是否在开始播放前等待上一动画结束。
-(void) stopAnimation
停止当前播放的动画。
-(void) pauseAnimation
暂停当前动画。
-(void) resumeAnimation
恢复当前暂停的动画。
-(void) playFrame:(int)_frameIndex fromAnimation:(NSString *)_animationId
将角色的指定 帧 设置为指定的 动画。