pJavaScript未启用  

5

帧(frames)用于为建筑、动画等提供贴图,其基础用法是:"frames": [{"bmp": "image.png"}],其中 image.png填写的是贴图的文件名


多个动画

你可以为一个建筑草稿提供多个帧,这可以让建筑可以旋转或切换不同贴图


可旋转建筑(旋转感知)

通过为建筑提供4个帧并启用旋转感知可以让建筑可以旋转:

JSON
[{
    // 其它代码
    "frames": [
        {
            "bmp": "image1.png"
        },
        {
            "bmp": "image2.png"
        },
        {
            "bmp": "image3.png"
        },
        {
            "bmp": "image4.png"
        }
    ],
    "rotation aware": true
}]

四个帧按照顺时针的顺序排列,你也可以通过设置帧的参数来简化代码(这需要4个方向的建筑宽度相等),"w": 99代表截取的宽度为99,"count": 4代表以99为宽度截取4次贴图:

JSON
[{
    // 其它代码
    "frames": [
        {
            "bmp": "image1.png",
            "w": 99, // 这里是每一个帧的宽度
            "count": 4
        }
    ],
    "rotation aware": true
}]

假如这里的rotation aware设置为false,也就是只提供4个贴图,那建筑就可以有4个贴图并可以切换(就像游戏自带的小型花园一样)


动画

动画使用frames与建筑用法基本相同,也是"frames": [{"bmp": "image.png"}],但由于动画显示机制,动画的帧需要对显示位置进行调整,详见动画相关内容
同样地,动画也可以旋转,用法与上面相同,不过如果rotation aware设置为false,那就会变成可以自动切换的动画,动画会在提供的几个帧中轮流切换



贴图截取和移动

贴图截取

你可以为帧设置一些参数,以截取贴图,参数有:

例如,下面的代码表示以(0, 0)为起点,向右截取16像素,向下截取6像素,即截取16×6的贴图


图解
查看大图
JSON
"frames": [
    {
        "bmp": "image.png",
        "x": 0,
        "y": 0,
        "w": 16,
        "h": 6
    }
]

贴图移动

你可以利用下面的参数来移动贴图:

例如,下面的代码就是将贴图向左移动6像素,向上移动2像素:

JSON
"frames": [
    {
        "bmp": "image.png",
        "handle x": 6,
        "handle y": 2
    }
]