[terrain] 构造规则:{NEW:WAVES D*,Hd W* -499 water/waves}

它用于画波浪,此处波浪是从水(W*)涌向沙地(D*,Hd)。该条构造规则实现了这么个功能:当有三个相邻的成三角格子,两格是沙地、一格是水,那么水就会以水格子中心为起点,涌向两沙地格子的交界处。

II

波浪是6帧动画,图中是动画的第一帧、第二帧,在位置上越往后的帧越靠近沙地。

 

它理论上会产生12条规则,放置层-499,标记waves-<r>。


搜索NEW:WAVES宏定义,该宏没中间过程,直接转入最后定义。

#define NEW:WAVES TERRAINLIST ADJACENT LAYER IMAGESTEM
    [terrain_graphics]
        map="
,  2
*,   3
,  1
*,   *
,  *"
        [tile]
            pos=1
            type={TERRAINLIST}
            set_no_flag=waves-@R0
        [/tile]
        [tile]
            pos=2
            type={ADJACENT}
            set_no_flag=waves-@R2
        [/tile]
        [tile]
            pos=3
            type={ADJACENT}
            set_no_flag=waves-@R4
        [/tile]

        rotations=tr,r,br,bl,l,tl

        [image]
            name={ANIMATION_06_150 {IMAGESTEM}-convex -@R0}
            random_start=no
            layer={LAYER}
            center=90,144
            base=90,144
        [/image]
    [/terrain_graphics]

    [terrain_graphics]
        map="
,  2
*,   3
,  1
*,   *
,  *"
        [tile]
            pos=1
            type={ADJACENT}
            set_no_flag=waves-@R0
        [/tile]
        [tile]
            pos=2
            type={TERRAINLIST}
            set_no_flag=waves-@R2
        [/tile]
        [tile]
            pos=3
            type={TERRAINLIST}
            set_no_flag=waves-@R4
        [/tile]

        rotations=tr,r,br,bl,l,tl

        [image]
            name={ANIMATION_06_150 {IMAGESTEM}-concave -@R0}
            random_start=no
            layer={LAYER}
            center=90,144
            base=90,144
        [/image]
    [/terrain_graphics]
#enddef
  • TERRAINLIST:D*,Hd(沙漠、沙丘地形)
  • ADJACENT:W*(水类地形,包括深水、浅水、浅滩、礁石)
  • IMAGESTEM:water/waves

ANIMATION_06_150宏用于构造文件名。

#define ANIMATION_06_150 IMAGESTEM POSTFIX
{IMAGESTEM}-A[01~06]{POSTFIX}.png:300
#enddef

代入参数后,出来的两类文件名。

外凸:water/waves-convex-A01-tr.png:300、

内凹:water/waves-concave-A01-tr.png:300

实际没有画convex图像,即此条规则生效的只是内凹部分。

全部评论: 0

    写评论: