【发布时间】:2012-04-25 01:08:01
【问题描述】:
我是 Flixel 的新手,所以如果我的问题太简单,请原谅我。
我的问题是:
我使用 Photoshop 制作了四个非常简单的图像(站立、移动、侧立、侧移),然后将其传递给 Texture Packer(样式表制造商)
它为我生成了一张图片(非常简单)和一个 JSON 文件,这里是:
http://i.stack.imgur.com/UTi4G.png
所以我想将它们与 Flixel 一起用作站立的角色(第一个),当我调用动画移动时,它将使用最后一个图像,但它没有按预期工作。基本上它一次显示所有四个图像。
这是代码:
字符.as:
package
{
import org.flixel.FlxSprite;
public class Character extends FlxSprite
{
[Embed (source="character.png")]
private var CharacterGraphic:Class;
public function Character(X:Number=0, Y:Number=0)
{
super(X, Y);
loadGraphic(CharacterGraphic, true, false, 53, 54);
velocity.y = 100;
addAnimation('move_forward', [0, 3], 30, false);
}
}
}
PlayState 类(我在其中创建此类的实例)
override public function create():void{
character = new Character(100, 200);
add(character);
}
override public function update():void{
//for debugging
if(character.y == 600){
character.play('move_forward');
}
super.update();
}
所以我期望:
当velocity.y 为600 时要弹出的第一张图像(并继续向下)(仅用于测试) move_forward 动画开始(循环播放第一张和最后一张图像)
输出是:
所有四个图像都弹出,当velocity.y == 60 时没有任何反应。
我真的认为我遗漏了一些东西,因为我对 Actionscript 3 和 Flixel 非常陌生(还有游戏开发!)。
几乎相同的步骤适用于在线教程,唯一的区别是他创建了几个动画(敌人)而不是一个,在这里查看http://gotoandlearn.com/play.php?id=139
对于 JSON 文件,我从未找到它的用途(我尝试在 IRC 频道中询问,但没有人提及),也在论坛/教程中。
【问题讨论】:
标签: json actionscript-3 sprite-sheet flixel