SDL中文论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 3685|回复: 0
打印 上一主题 下一主题

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

[复制链接]

21

主题

36

帖子

334

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
334
跳转到指定楼层
楼主
发表于 2020-8-24 16:26:52 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
它用于画波浪,此处波浪是从水(W*)涌向沙地(D*,Hd)。该条构造规则实现了这么个功能:当有三个相邻的成三角格子,两格是沙地、一格是水,那么水就会以水格子中心为起点,涌向两沙地格子的交界处。

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

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

搜索NEW:WAVES宏定义,该宏没中间过程,直接转入最后定义。
  1. #define NEW:WAVES TERRAINLIST ADJACENT LAYER IMAGESTEM
  2.     [terrain_graphics]
  3.         map="
  4. ,  2
  5. *,   3
  6. ,  1
  7. *,   *
  8. ,  *"
  9.         [tile]
  10.             pos=1
  11.             type={TERRAINLIST}
  12.             set_no_flag=waves-@R0
  13.         [/tile]
  14.         [tile]
  15.             pos=2
  16.             type={ADJACENT}
  17.             set_no_flag=waves-@R2
  18.         [/tile]
  19.         [tile]
  20.             pos=3
  21.             type={ADJACENT}
  22.             set_no_flag=waves-@R4
  23.         [/tile]

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

  25.         [image]
  26.             name={ANIMATION_06_150 {IMAGESTEM}-convex -@R0}
  27.             random_start=no
  28.             layer={LAYER}
  29.             center=90,144
  30.             base=90,144
  31.         [/image]
  32.     [/terrain_graphics]

  33.     [terrain_graphics]
  34.         map="
  35. ,  2
  36. *,   3
  37. ,  1
  38. *,   *
  39. ,  *"
  40.         [tile]
  41.             pos=1
  42.             type={ADJACENT}
  43.             set_no_flag=waves-@R0
  44.         [/tile]
  45.         [tile]
  46.             pos=2
  47.             type={TERRAINLIST}
  48.             set_no_flag=waves-@R2
  49.         [/tile]
  50.         [tile]
  51.             pos=3
  52.             type={TERRAINLIST}
  53.             set_no_flag=waves-@R4
  54.         [/tile]

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

  56.         [image]
  57.             name={ANIMATION_06_150 {IMAGESTEM}-concave -@R0}
  58.             random_start=no
  59.             layer={LAYER}
  60.             center=90,144
  61.             base=90,144
  62.         [/image]
  63.     [/terrain_graphics]
  64. #enddef
复制代码

  • TERRAINLIST:D*,Hd(沙漠、沙丘地形)
  • ADJACENT:W*(水类地形,包括深水、浅水、浅滩、礁石)
  • IMAGESTEM:water/waves

ANIMATION_06_150宏用于构造文件名。
  1. #define ANIMATION_06_150 IMAGESTEM POSTFIX
  2. {IMAGESTEM}-A[01~06]{POSTFIX}.png:300
  3. #enddef
复制代码


代入参数后,出来的两类文件名。
外凸:water/waves-convex-A01-tr.png:300、
内凹:water/waves-concave-A01-tr.png:300
实际没有画convex图像,即此条规则生效的只是内凹部分。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|丽谷软件|libsdl.cn

GMT+8, 2025-5-2 05:16 , Processed in 0.062030 second(s), 23 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表