佳丽云

英雄无敌3-WoG中文站

 找回密码
 英雄注册|Register
查看: 4354|回复: 12

IF对话框-----全面讲解

[复制链接]
  • TA的每日心情
    开心
    2019-1-31 14:25
  • 签到天数: 130 天

    连续签到: 1 天

    [LV.7]血污怪

    2778

    回帖

    2万

    金币

    14

    精华

    论坛嘉宾

    Rank: 9Rank: 9Rank: 9

    积分
    14801

    退役版主社区QQ达人魅力之星

    发表于 2012-8-25 23:20:02 | 显示全部楼层 |阅读模式
    在WOG游戏里,使用IF语句显示对话框是必不可少的重要一步。通过使用IF对话框,我们可以定制大量个性化的地图和脚本。比如地图博德之门,阿泰三,绝地反击等等。总之,如果你知道了如何使用IF对话框,那么会让你的ERMER之旅更加愉快,也会极大的提升你创作ERM脚本的兴趣。
    下面本人就个人使用IF对话框心得结合ERM帮助,试着给大家讲解IF对话框的使用方法。

    !!IF:XXXX;Management of conditional flags (1-1000), player questions (GRM), plus message and picture display.

    通过IF语句可以设置1-1000的标志,玩家的问题,以及插入信息和图片显示。


    B#/$1/$2;Use this command to set up or change a Single Image/Animation Extended Dialogue Box to be displayed with the IF:P command.
       # - number of dialogue (1..100)
       $1 - index of string variable that stores the name of an image (BMP, GIF or JPG) or AVI file
       $2 - for AVI to repeat continuously (1) or not (0)
    使用IF:B命令可以显示静态图片(BMP, JPG)或者动态图片GIF,动画(AVI)。#代表的是B型对话框的编号(1-100)。
    $1这里可以插入你设定的Z变量。PS:如果只是需要临时显示图片,建议可以使用临时Z变量,Z1-Z10,Z-1-Z-10.
    $2这里可以设定你想显示的AVI影像是否重复播放。1为重复播放,0为禁止。
    图片要求大小和AVI时间长度没有写明具体要求,根据我的使用心得来看,图片大小最好不要超过640*480,AVI长度应该在10秒之内。PS:AVI的没有仔细研究过,只是我自己估计,测试过几次而已。
    这里需要注意的是,在使用IF:B命令后,你需要马上用!!IF:P命令来显示图片。
    举例:
    三国演艺之兄弟同心脚本:
    ZVSE
    !?PI;    游戏一开始就设置
    !!VRz7:S^..\Data\sg\ti.gif^;    Z变量编号7指定图片路径
    !!IF:B15/7/0;    使用15号B型对话框显示图片
    !!IF:P15;          使IF:B命令生效,显示图片


    D#/$1...$15;Use this command to set up or change a Multipurpose Extended Dialogue Box to be displayed with the IF:E command.
       # - number of dialogue (1..100)
       ($=index of z variable that holds text to use)
       $1 - Title Text (White) at top of dialogue box.
       $2 - Right Legend (Yellow) above input box.
       $3 - Left Legend (Yellow) of 4 checkboxes..
       $4 - Pic/AVI 1 (left) File in Heroes3/Maps folder.
       $5 - Pic/AVI 2 - File in Heroes3/ Maps folder.
       $6 - Pic/AVI 3 - File in Heroes3/ Maps folder.
       $7 - Pic/AVI 4 (right) File in Heroes3/ Maps folder.
       $8 - Legend of Picture 1 (mouse-over hint)
       $9 - Legend of Picture 2 (mouse-over hint)
       $10 - Legend of Picture 3 (mouse-over hint)
       $11 - Legend of Picture 4 (mouse-over hint)
       $12 - Choice 1 (checkbox) - button text.
       $13 - Choice 2 (checkbox) - button text.
       $14 - Choice 3 (checkbox) - button text.
       $15 - Choice 4 (checkbox) - button text.
    Notes:1. If you use 0 or an empty parameter it means do not change. If you use a null string ^^ for a prompt it means no prompt.
    2. A full path name (up to 256 character) may be included for the picture files but remember that it starts in the MAPS directory
    so use ".." to go up one directory if required. e.g., ^../data/mypic.bmp^.
    3. Maximum picture size is 100*100 but may be less (if less, the picture will be centered automatically).
    4. Setup information will not be saved when game is saved, so always do setup immediately before using IF:E command.
    5. Using 1 as dialogue number should be avoided, because it's text may be combined with higher dialog numbers.
    6. Memory leaks occur when using IF:D. After about 320 displays, the Heroes program will have to be quit and restarted to clear them.
    E$1/$2;Use this command to display a Multipurpose Extended Dialogue box, previously set up with the IF:D (and also possibly IF:F) commands.
       $1 - an index of a v variable to store a selection
       $2 - number of extended dialogue
    Comments:
    Variable will receive 1,2,3,4 if one of the buttons was selected and -1 if none were selected (just exit). The text answer always (even if there was no prompt) will be stored in the z1 variable.

    D型对话框是WOG里面使用的最多和最广泛的对话框,掌握了它的使用方法,其他的对你来说只是小菜一碟。
    D型对话框一共有16个可扩展项,代表的是什么,我下面一一为大家解释。
    # - number of dialogue (1..100)
    这里代表的是D型对话框编号,(1-100)
    $1 - Title Text (White) at top of dialogue box.
    这里显示的是对话框顶端的标题,显示的是白色的文字。
    $2 - Right Legend (Yellow) above input box.
    这里显示的是右边输入对话框上面的文字,是黄色显示的。

    $3 - Left Legend (Yellow) of 4 checkboxes
    这里显示的是左边4个选择框上面的文字,也是黄色的。

    $4 —— $7扩展项显示的是你指定的图片或者AVI文件,文件路径需要在WOG根目录下或者子目录MAPS里面。图片可以是静态图片(BMP, JPG)或者动态图片GIF
    图片大小是有限制的,单张图片不能超过100*100,AV文件的,我没有测试过。需要,下来进一步测试。

    $8-----$11扩展项指的是当你的鼠标指针指向$4------$7这些图片时,在对话框下方显示的黄色文字。

    $12 -----$15扩展项指的是在对话框的右下角4个选择框里面显示的文字,同样是黄色的文字。

    PS:1.要提醒大家的是使用D型对话框之后,你需要马上用IF:E命令来保存对话框的选择项。否则,玩家选择的结果不能保存。
    2.像8---11这些扩展项,如果你不需要,可以直接把他给取消掉。下面用我的脚本举例:
    ZVSE
    !?LE130/106/1;
    !!HE-1:B0/?z-5;
    !!VRz-1:S^[阿瑞尼卡斯]:哈哈!来到我的地盘,就是我做主啦。不死不归啊!^;
    !!VRz-2:S^[%Z-5]:糟糕,身上的土系魔法书消失啦,时空之门魔法也不复存在。^;
    !!VRz-3:S^..\tob\ar.bmp^;

    !!IF:D27/-1/0/-2/-3/555;
    !!IF:F27/0/0/0/0/0;
    !!IF:E100/27;

    效果如图:
    bd-1.png
    3;在指定图片或者AVI文件路径时,你指定路径的字数长度是有限制的,具体是多少个字,我忘了,可以用这个参考。暂缺。
    4.图片的大小限制在100*100。当然,如果你要显示一张更大的图片也可以,你可以把一张大图分成4张100*100的小图片来一起显示。
    5.因为对话框是有编号的,所以你最好对使用的对话框分开编个号,避免对话框发生冲突,达不到你想要的效果。
    6.至于指定图片的路径,现在我倾向与在根目录下面新建一个文件夹,把所有的图片和声音,动画文件都放在这个文件夹里,方便调用。还是用我的脚本来为大家举例:
    !!VRz537:S^..\bd^;  目录      这个是我在根目录下面建立了一个新的文件夹,名字为BD。
    !!VRz513&v500=1:S^%Z537\%Y-12.pcx^;            

    调用BD文件夹里面我指定的PCX文件,需要提醒大家的是英3和WOG里面对英雄的头像大小是有限制的。图像文件必须为PCX格式,256色;制作一个头像必须准备两个文件,一个大的,大小为58×64,还有一个小的,大小为48×32。        
    !!VRz514&v500=1:S^%Z537\%Y-12s.pcx^;
    !!VRz513&v500=2:S^%Z537\%Y-13.pcx^;
    !!VRz514&v500=2:S^%Z537\%Y-13s.pcx^;
    !!VRz513&v500=3:S^%Z537\%Y-14.pcx^;
    !!VRz514&v500=3:S^%Z537\%Y-14s.pcx^;
    !!VRz513&v500=4:S^%Z537\%Y-15.pcx^;
    !!VRz514&v500=4:S^%Z537\%Y-15s.pcx^;


    7.玩家选择的结果,根据选择的不同,结果从上到下=1or=2 or=3 or=4,4种结果。

    8 Memory leaks occur when using IF:D. After about 320 displays, the Heroes program will have to be quit and restarted to clear them
    这句话的意思我也搞不懂,好像是说内存只允许显示IF:D对话框320次,超过了就会报错和退出重启清空。

    E$1/$2;$1是你指定的V变量,$2是前面D型对话框的编号。
    D型对话框的选择结果,在前面我讲了=1or=2 or=3 or=4,如果玩家选择取消,那么结果=-1.
    为了方便在全局调用这个结果,那么我们需要用一个V变量来接收对话框的结果。
    举例:
    !!VRz511:S^巫 妖 王 的 毁 灭 ☆外 传 - 1.36☆
    -  玩 家 个  性  化  选  择  -^;                             标题
    !!VRz501:S^请 教 英 雄 大 名^;                       右下角输入框上面的文字
    !!VRz502:S^选 择 你 喜 欢 的 英 雄 头 像^;   左下角选择框上面的文字
    !!VRz503:S^%Z500\god-%Y-12.bmp^;                 从左到右排列的4张头像
    !!VRz504:S^%Z500\god-%Y-13.bmp^;
    !!VRz505:S^%Z500\god-%Y-14.bmp^;
    !!VRz506:S^%Z500\god-%Y-15.bmp^;
    !!VRz507:S^我喜欢第一个,好酷,够爷们!^;             左下角选择框里面的文字
    !!VRz508:S^第二个,漂亮MM!^;
    !!VRz509:S^第三个好帅哦,我要!^;
    !!VRz510:S^第四个美女好销魂,我的最爱!^;
    !!IF:D50/511/501/502/503/504/505/506/////507/508/509/510;    50号对话框
    !!IF:E500/50;                                                      用全局变量V500来保存结果
    !!VRz512&v500>0:Sz1; 玩家输入对话框的数字或者字母保存在临时变量Z1中,为了方便调用,我用文本变量Z512来保存玩家输入的字母或者数字
    !!VRz512:H499;        用标志499来检查玩家输入的是否为空,输入为空那么标志499=0,反之=1.


    F$1/$2/$3/$4/$5/$6;Use this command to add hint text to checkboxes in a Multipurpose Extended Dialogue Box. This command is an extension to the IF:D command.
       #1=number of dialog (1..100)
       $2=hint for checkbox 1 - index of z variable
       $3=hint for checkbox 2 - index of z variable
       $4=hint for checkbox 3 - index of z variable
       $5=hint for checkbox 4 - index of z variable
       $6=enable Cancel/ESC button (1) or not (0)
    Comments:
    Setup information will not be saved when game is saved so always do setup immediately before using IF:E command.
    !!IF:F命令可以为D型对话框额外增加说明文本。也就是当鼠标指向前面的4个选择框时,在对话框下方显示的黄色文字。
    #1=number of dialog (1..100)                前面对话框的编号
    $2------$5                                              鼠标指向前面的4个选择框时,在对话框下方显示的帮助文本。
    $6=enable Cancel/ESC button (1) or not (0)              是否启用取消按钮,1为启用,0禁止
    举例:
    !!VRz531:S^%Z530\_AT_SP_1.bmp^;
    !!VRz532:S^%Z530\_AT4=.bmp^;
    !!VRz533:S^%Z530\_HP4=.bmp^;
    !!VRz534:S^%Z530\_MP4=.bmp^;
    !!VRz535:S^自带弹药车,射手弹药数加倍.伤害近战不减.弹药车属性加强^;
    !!VRz536:S^自动获得3级战术,士气加2,运气加2.^;
    !!VRz537:S^战场中自动出现转世重生魔法,帐篷学会偏移,魔法区域.自带护盾,属性加强^;
    !!VRz538:S^随等级加魔法威力,减少受魔法伤害,攻击诅咒,野兵S-2,无魔镜,40%几率中蛊^;
    !!VRz539:S^所有兵种自带气盾,30%几率劲射,特技(破天神箭)^;
    !!VRz540:S^所有兵种每回合自动获得护盾、石肤术.30%几率狂暴,特技(独孤剑谱)^;
    !!VRz541:S^自动学会超级转世重生.所有兵种40%几率净化,特技(神灵护佑)^;
    !!VRz542:S^博德之盔MR+300%,雷神之锤+100%并让敌人无法放魔法,特技(灭世魔身)^;
    !!VRz543:S^特 长 选 择^;
    !!VRz544:S^请 选 择 主 角 的 特 长^;
    !!VRz545:S^箭术特长,游戏开始有中级箭术.(鼠标指向图标显示补充说明).^;
    !!VRz546:S^进攻特长,游戏开始有中级进攻术.(鼠标指向图标显示补充说明).^;
    !!VRz547:S^冶疗特长,游戏开始有中级冶疗术.(鼠标指向图标显示补充说明).^;
    !!VRz548:S^魔力特长,游戏开始中级魔力术.(鼠标指向图标显示补充说明).^;
    !!IF:D15/543/0/544/531/532/533/534/535/536/537/538/545/546/547/548;   15号对话框
    !!IF:F15/539/540/541/542/0;          当鼠标指向文字选择框时,对话框下方出现539-542提示文本。
    !!IF:E1025/15;                                   用V1025保存选择结果





    [ 本帖最后由 fly123 于 2012-8-28 14:54 编辑 ]

    评分

    2

    查看全部评分

  • TA的每日心情
    开心
    2019-1-31 14:25
  • 签到天数: 130 天

    连续签到: 1 天

    [LV.7]血污怪

    2778

    回帖

    2万

    金币

    14

    精华

    论坛嘉宾

    Rank: 9Rank: 9Rank: 9

    积分
    14801

    退役版主社区QQ达人魅力之星

     楼主| 发表于 2012-8-25 23:27:30 | 显示全部楼层
    G#1/#2/#3/#4/#5/(up to #16);Set up Radio or Checkbox Dialogue (Up to 12 choices)
       #1= 1 - Radio buttons (one choice)
              0 - Check boxes (multiple choice)
       #2= Number of v var that receive a result.
       #3= Initial state of buttons
       #4= Number of z var with a window header.
       #5= Number of z var with a name of the first item
              0-do not show
       #6= Number of z var with a name of the second item
              0-do not show
       ...
       #16= Number of z var with a name of the twelve item
              0-do not show
    Comments:
    1. State that received an stored is "one bit for one item".
      Item1=1,
      item2=2,
      item3=4,
      item4=8,
      item5=16...
    So to set all items val=4095
    To set item 2,4,5,8 and 10 val=2+8+16+128
    All reset val=0

    Example:
    file:///D:/游戏/h3合缉/Def制作/erA2.81_Help/Erm%20Help%202.81/images/dialogue/checkbox.gif
    G型对话框也是我们经常需要用到的对话框,比较简单,理解起来也容易。
    #1= 1 - Radio buttons (one choice)
              0 - Check boxes (multiple choice)

    这里代表的是G型对话框让玩家可以多选打勾=0,或者只能单选1个打勾=1。
    #2= Number of v var that receive a result.
    这里是你指定的V变量,用于接收对话框的结果。
    #3= Initial state of buttons
    这里指的是你提前预设打勾的选项(在后面详细解释),如果想全部打叉,那么设置为0.
    #4= Number of z var with a window header.
    这里是你设定的标题文字。
    #5= Number of z var with a name of the first item
              0-do not show

    #16= Number of z var with a name of the twelve item
              0-do not show

    从 #5----16#   是你设定的Z变量,也就是提示文本。如果,你不想让它出现,那么把它设定为0.
    Comments:
    1. State that received an stored is "one bit for one item".
      Item1=1,
      item2=2,
      item3=4,
      item4=8,
      item5=16...
    So to set all items val=4095
    To set item 2,4,5,8 and 10 val=2+8+16+128
    All reset val=0

    G型对话框的结果不同与D型对话框,除了第一项#5的结果=1.其他的结果是以2为基数来相乘的。
    比如玩家选择的是第二项#6,那么其结果就等于1*2=2,玩家选择的是第三项#7,结果就等于2*2=4,玩家选择的是第四项#8,结果就等于4*2=8,以此类推,一直到#16=1024*2=2048.
    如果你需要提前设定好一些选项是在玩家之前就预设好的,比如你想让第1项被提前设定好,那么只需要将#3设定为1,想让最后一项提前设定好,那么只需要将#3设定为2048。也就是说,想提前设定好那个选项,就让#3的数字和那个选项的结果相等。如果你想提前设定多项选择,那么只需要让#3的数字等于这些选项的值之和,也就是等于它们相加的结果。
    PS:提示大家一下,如果你只需要设定几个选项,那么可以把多余选项的都直接省略掉。
    举例说明:
    地图CHASER的脚本
    !?OB70/65/0&1000;
    !!PO998:N?v1;
    !!FU&v1=1:E;
    !!VRz1:S^神圣天使^;                 1
    !!VRz2:S^钻石龙^;                     2
    !!VRz3:S^雷神领主^;                 4
    !!VRz4:S^地狱男爵^;                8
    !!VRz5:S^暗黑龙^;                  16
    !!VRz6:S^幽灵巨兽^;               32
    !!VRz7:S^地狱九头龙^;           64
    !!VRz8:S^神圣凤凰^;            128
    !!VRz9:S^龙巫妖^;                256
    !!VRz10:S^你想在这儿建造哪种生物巢?^; 512
    !!IF:G1/1027/512/10/1/2/3/4/5/6/7/8/9;
    !!VRv1027&v1027=1:S80;
    !!VRv1027&v1027=2:S81;
    !!VRv1027&v1027=4:S82;
    !!VRv1027&v1027=8:S83;
    !!VRv1027&v1027=16:S85;
    !!VRv1027&v1027=32:S86;
    !!VRv1027&v1027=64:S87;
    !!VRv1027&v1027=128:S88;
    !!VRv1027&v1027=256:S100;
    !!UN:I72/66/0/17/v1027/63/3;
    !!PO998:N1;

    地图博德之门脚本
    !?FU1000&x1=-1;
    !!VRx4:S0;
    !!DO1000/1/11/1:P-100;
    !!VRz1&v155>4:S^<魔 法 箭 诀>——{射 击 附 加 魔 法 神 箭 魔 法}^; 1
    !!VRz2&v155>9:S^<寒 冰 诀>——{射 击 附 加 霹 雳 寒 冰 魔 法}^;      2
    !!VRz3&v155>9:S^<闪 电 诀>——{射 击 附 加 霹 雳 闪 电 魔 法}^;     4
    !!VRz4&v155>14:S^<魔 环 诀>——{射 击 附 加 寒 冰 魔 环  魔 法}^;  8
    !!VRz5&v155>14:S^<烈 焰 诀>——{射 击 附 加 地 狱 烈 焰 魔 法}^; 16
    !!VRz6&v155>19:S^<驱 魔 诀>——{射 击 附 加 驱 魔 大 法}^;            32
    !!VRz7&v155>24:S^<破 魔 诀>—{射 击 附 加 驱 散 有 益 魔 法}^;      64
    !!VRz8&v155>24:S^<专 属 特 技 加 强>——{劲 射 攻 击 加 倍,伤 害 加 2 倍。}^;128
    !!VRz9&v155>29:S^<百 步 穿 杨>——{射 击 附 加 金 弓 效 果}^;                   256  
    !!VRz10&v155>34:S^<剧 毒 诀>——{50% 几 率 射 击 附 加 剧 毒 魔 法}^; 512
    !!VRz11&v155>39:S^下 一 页^;                             1024
    !!VRz12:S^取 消,返 回 一 般 攻 击 模 式。^;  2048
    !!VRz13:S^<<破 天 神 箭 箭 诀>>

    请选择你想要采取的射击模式^;
    !!IF:G1/1/0/13/1/2/3/4/5/6/7/8/9/10/11/12;
    !!VRx4:Sv1;!!VRv1:S0;
    !!VRv188&x4=2048:S-1;
    !!FU&x4=2048:E;
    !!VRv188&x4=1:S1;
    !!VRv188&x4=2:S2;
    !!VRv188&x4=4:S3;
    !!VRv188&x4=8:S4;
    !!VRv188&x4=16:S5;
    !!VRv188&x4=32:S6;
    !!VRv188&x4=64:S7;
    !!VRv188&x4=128:S8;
    !!VRv188&x4=256:S9;
    !!VRv188&x4=512:S10;
    !!FU1000&x4=1024:P-2;

    效果如图:
    bd-2.png
    魔法冷却脚本,这个短一点
    !?FU8234&x1=3;
    !!VRz4:S:^【欢 迎 使 用 魔 法 冷 却 系 统】
    作 者:[克 招 ^O^]   修 改:[ fly123 ^O^]
    请 设 定 冷 却 系 统 状 态(只 有 一 次 机 会)^;
    !!VRz1:S:^一 次 性 设 置 冷 却 系 统^;                   1
    !!VRz2:S:^可 以 随 时 调 整 冷 却 系 统^;             2
    !!VRz3:S:^取 消 并 退 出^;                                      4
    !!IF:G1/1/4/4/1/2/3;
    !!VRv6073:Sv1;
    !!FU8234&v6073=1:P1;
    !!CM:R0;
    !!FU&v6073=4:E;
    !!VRv1622:+999;
    效果如图:
    bd-3.png

    [ 本帖最后由 fly123 于 2012-8-27 21:15 编辑 ]

    评分

    1

    查看全部评分

  • TA的每日心情
    慵懒
    2019-8-17 09:46
  • 签到天数: 1158 天

    连续签到: 2 天

    [LV.10]圣龙

    2万

    回帖

    91万

    金币

    7

    精华

    论坛嘉宾

    守望论坛的稻草人

    Rank: 9Rank: 9Rank: 9

    积分
    87641

    社区QQ达人论坛守望者金牌裁判杰出贡献魅力之星TE联赛冠军

    发表于 2012-8-25 23:47:44 | 显示全部楼层
    召唤碳妖MM来看看
  • TA的每日心情
    开心
    2021-2-18 14:28
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]投石矮人

    2623

    回帖

    1万

    金币

    21

    精华

    论坛嘉宾

    请叫我黑椒哥哥

    Rank: 9Rank: 9Rank: 9

    积分
    4827

    论坛元老退役版主

    QQ
    发表于 2012-8-26 02:26:55 | 显示全部楼层
    今天给碳妖MM答疑的时候,居然趴在电脑面前睡着了,一直睡到现在  不知道碳妖MM搞定了没有。
  • TA的每日心情
    无聊
    2021-9-9 08:11
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]投石矮人

    97

    回帖

    9706

    金币

    0

    精华

    3级 Known Hero

    Rank: 3Rank: 3

    积分
    580
    发表于 2012-8-26 09:18:13 | 显示全部楼层
    看来碳妖MM人气好高啊

    该用户从未签到

    294

    回帖

    8518

    金币

    0

    精华

    4级 Famous Hero

    Rank: 4

    积分
    1892
    QQ
    发表于 2012-8-26 10:10:54 | 显示全部楼层
  • TA的每日心情
    开心
    2019-1-31 14:25
  • 签到天数: 130 天

    连续签到: 1 天

    [LV.7]血污怪

    2778

    回帖

    2万

    金币

    14

    精华

    论坛嘉宾

    Rank: 9Rank: 9Rank: 9

    积分
    14801

    退役版主社区QQ达人魅力之星

     楼主| 发表于 2012-8-26 17:04:21 | 显示全部楼层
    L^text^ file:///D:/游戏/h3合缉/Def制作/erA2.81_Help/Erm%20Help%202.81/images/new.gif
    L$ file:///D:/游戏/h3合缉/Def制作/erA2.81_Help/Erm%20Help%202.81/images/new.gif [td]Add a message to a screen log.
        L^text^ - will add text
        L$ - will add contents of z[$] variable.
    Comments:
        It looks as though you press Tab, type a message and press <Enter>.
        The message pops up a previous message.
        You have up to 20 message on the screen.
        Every message stays on the screen for 20 seconds.
        It may work at adventure screen and in a battle.
        When you go to a battle or from a battle, the message should left on the screen.
    !!IF:L语句平时我们用的比较少,不过,也很简单。现在我们来了解一下。
    L^text^ ,TEXT是文本的意思,也就是说我们可以直接写入英文或者是汉字。
    L$ 这里的$代表的是你指定的Z变量。
    PS:1.这个语句就好像是当我们在大地图上时,我们可以通过按住TAB键,输入信息然后回车,让屏幕上出现一条又一条的信息。
    2.这样的信息最多可以出现20条。每条信息在屏幕上停留的时间是20秒。
    3.这个语句同样可以用在战场上,当我们用在战场上时,信息会出现在屏幕的左边。
    M$/#1/#2 [td]Show message immediately. Extended.
      $ - variable to receive reply item
      #1 - type of dialogue:
         = 1 - standard Ok
         = 2 - Yes/No (Ok/Cancel)
         = 4 - right mouse info (is visible while right mouse button isn't released)
         = 7 - choice from two options (not supported yet)
         = 10 - choice from two options with escape (not supported yet)
      #2 - message (direct text or index of any Z variable)

    !!IF:M是我们经常用到的对话框,但这里我所讲的是平时我们不长用到的M$/#1/#2 。
    $ - variable to receive reply item   这里指的是你指定的V变量,用于接收对话框的结果。如果选择打勾,那么结果为正,打叉,结果为负。
    #1 - type of dialogue:
         = 1 - standard Ok
         = 2 - Yes/No (Ok/Cancel)
         = 4 - right mouse info (is visible while right mouse button isn't released)
         = 7 - choice from two options (not supported yet)
         = 10 - choice from two options with escape (not supported yet)
    对话框的类型,1为标准的OK对话框,2为是否对话框(也就是选择打勾或者选择叉叉),4是当你在物体身上按住鼠标右键不放时,在物体身上出现的信息提示。7和10 现在还不支持,所以不用管它。

    #2 - message (direct text or index of any Z variable)
    你想输入的信息文本,可以是直接文字也可以是Z变量。
    N...; [td]IF Receiver command for 8 picture message box.
    A message with text and up to 8 pictures of any internal types.
    Fisrt, you must set pictures to show by N#1/#2/#3/#4/#5/#6/#7/#8/
    #9
    /#10/#11/#12/#13/#14/#15/#16;

    And after that show the dialog with prepared pictures and ^text^ by N^text^; command.
    If you set more than 3 parameters, the interpreter treats it as pictures types/numbers the same way as for the IF:Q dialog.
    You may set up to 8 pictures (16 parameters) and minimum 2 pictures.
    No dialog is shown, just preparation phase.
    So:
    !!IF:N3/8/10/2/11/3/13/2/17/
    1000/21/99/22/4;
    means that the first picture (3/8) is a resource - sulfur with quantity 8. The next one is (10/2) a flag of Tan player, then Luck and so on. You can see that here we have 7 pictures.

    If you have less than 4 parameters, the interpreter treats it as a command to show the dialog that was prepared with the previous syntax.
    The only parameter here is the text to display:
    !!IF:N^text^; - direct text
    or
    !!IF:N1/$;- z var (standard, local or extended)
    In any case, the text is parsed for any format commands and as a result you will not see something like this "Hi %Z10!" but "Hi Slava!".
    The form of this command which uses a z-variable for the text (IF:N1/z#) only works for z1. No matter what z-# is used, e.g. IF:N1/z100, the text in z1 will be displayed!

    There is one limitation to the text: it can not have too many lines. This example is close to the maximum:
    • !!IF:N^This
    • is
    • a
    • looo...
    • ..
    • ..
    • ..
    • ..
    • ..
    • oong
    • Text^;

    If you have more lines, the game crashes.

    !!IF:N命令可以为我们展示最多8张系统内置的图片。
    N#1/#2/#3/#4/#5/#6/#7/#8/
    #9
    /#10/#11/#12/#13/#14/#15/#16;
    #1是物体的图片类型数字代码,#2是这个物体的子类型代码,以此类推。图片类型数字代码在IF:Q命令里面可以找到。
    !!IF:N^text^; - direct text or
    !!IF:N1/$;- z var (standard, local or extended)

    当我们用IF:N命令展示图片后,可以在后面继续用!!IF:N^这里输入你想写的文字^; 或者!!IF:N1/Z变量;来对图片加以说明或者注释,这些文字会出现在图片的最上方,也就是顶部中央的位置。
    这个命令只能用于展示图片,就是图片出现后,只能选择打勾。
    PS:1.使用IF:N命令最多可以展示8张图片,最少不能少于2张图片。
    2.输入的文本不能超过太多行。否则,游戏会死机。
    举例:
    !?GE4;
    !!VRz-1:S^ULTIMATEARTIFACT.WAV^;
    !!SN:Pz-1;
    !!IF:N24/2/24/14/24/15/24/7/24/37/24/38/24/19/24/10;
    !!IF:N^{安姆百姓为您建造好了一些建筑。}^;

    !?GE5;
    !!VRz-1:S^ULTIMATEARTIFACT.WAV^;
    !!SN:Pz-1;
    !!IF:N24/3/24/8/24/12/24/39/24/40;
    !!IF:N^{安姆百姓为您建造好了一些建筑。}^;

    !?GE6;
    !!VRz-1:S^ULTIMATEARTIFACT.WAV^;
    !!SN:Pz-1;
    !!IF:N24/21/24/4/24/9/24/13/24/41/24/42/24/43;
    !!IF:N^{托你的福,百姓为您把安姆城完全修复了。}^;

    效果如图:
    bd-7.png



    [ 本帖最后由 fly123 于 2012-8-28 14:14 编辑 ]
  • TA的每日心情
    开心
    2019-1-31 14:25
  • 签到天数: 130 天

    连续签到: 1 天

    [LV.7]血污怪

    2778

    回帖

    2万

    金币

    14

    精华

    论坛嘉宾

    Rank: 9Rank: 9Rank: 9

    积分
    14801

    退役版主社区QQ达人魅力之星

     楼主| 发表于 2012-8-27 21:16:31 | 显示全部楼层
    Q...;Ask the player a question (TEXT) IMMEDIATELY
    1. Simple question
    Q#^Text^
    Ask the player a question (TEXT)
    The answer (Ok=1, Cancel=0) is put into conditional flag # (from 1 to 10). The message (TEXT) may contain any symbols except ^.

    Example:
    file:///D:/游戏/h3合缉/Def制作/erA2.81_Help/Erm%20Help%202.81/images/dialogue/ifq5.gif
    Show a message or request with one picture.
    Q#1
    /#2/#3/#4^Text^
    #1 - number of flag
    #2 - type of the picture (see list below)
    #3 - subtype of the picture
    #4 - type of message
        =1 - message (FLAG #1 WILL NOT BE SET!!!)
        =2 - request yes/no (stored to the flag)
        =4 - message with no buttons, visible until button is released
    Example:
    file:///D:/游戏/h3合缉/Def制作/erA2.81_Help/Erm%20Help%202.81/images/dialogue/ifq.gif
    Show a message or request with two pictures.
    Q#1/#2/#3/#4/#5/#6^Text^

    #1 - number of flag
    #2 - type of the picture 1
    #3 - subtype of the picture 1
    #4 - type of the picture 2
    #5 - subtype of the picture 2
    #6 - type of message
       =1 - message (FLAG #1 WILL NOT BE SET!!!)
       =2 - request yes/no (stored to the flag)
       =4 - message with no buttons, visible until button is released
       =7 - choose one of pictures (left=1, right=0)
       =10 - choose one of pictures, save result in v#1 (left=1, right=2, escape=0)
    Example:
    file:///D:/游戏/h3合缉/Def制作/erA2.81_Help/Erm%20Help%202.81/images/dialogue/ifq7.gif
    Show a message or request with three pictures.
    Q#1/#2/#3/#4/#5/#6/#7/#8^Text^

    #1 - number of flag
    #2 - type of the picture 1
    #3 - subtype of the picture 1
    #4 - type of the picture 2
    #5 - subtype of the picture 2
    #6 - type of the picture 3
    #7 - subtype of the picture 3
    #8 - type of message
       =1 - message (FLAG #1 WILL NOT BE SET!!!)
       =2 - request yes/no (stored to the flag)
       =4 - message with no buttons, visible until button is released
       =10 - choose one of pictures, save result in v#1 (left=1, right=2, escape=0)

    Note: You must include the ^Text^ parameter or it will not work. If you don't want any text, use ^^.
    !!IF:Q对话框也是我们常用的一种对话框,它主要的好处是可以向玩家提问。也是我最常用的提问型对话框。
    Q#^Text^   #指的是Q型对话框的数字编号,TEXT是你输入的文本。文本同样可以是Z变量,只是需要用大写%Z?表示。
    举例:
    !!VRz-1:S^Did you like wog?^;
    !!IF:Q1^%Z-1^;
    效果如图:
    bd-4.png
    The answer (Ok=1, Cancel=0) is put into conditional flag # (from 1 to 10).
    玩家选择的结果分为2种,OK=1,取消=0.那么#的数字在OK时为正,反之为负。
    比如:!!IF:Q17^DO you like wog?^;我选择YES,就是打勾,那么这时标志Q17就是17,反之就是-17.也就是等同与打勾时!!IF:V17/1;取消时等同与!!IF:V17/0;
    PS:1.平时我们在#的数字。用的一般是从1-10,其实最多可以到1000。也就是可以用到!!IF:Q1000^^;实际上严格来说,这个也应该算作是标志(布尔变量)等同与标志!!IF:V#1/#2;。这个也是全局标志,所以可以视情况调用。
    2。经过我测试,!!IF:Q的结果等同与标志V#1/#2;

    Q#1/#2/#3/#4^Text^
    #1 对话框的编号
    #2 显示图片的类型
    #3 显示图片的子类型
    #4 - type of message
        =1 - message (FLAG #1 WILL NOT BE SET!!!)
        =2 - request yes/no (stored to the flag)
        =4 - message with no buttons, visible until button is released

    #4 =1 - 一般的图片显示,只有一个OK确定框

        =2 - 玩家可以选择YES或者NO,结果保存在标志!!IF:V#1/?;中,选YES时,!!IF:V#1/1;这时标志是正#1,NO,!!IF:V#1/0;这时是-#1。
        =4 - 这时对话框显示时没有OK按钮,只会短暂显示,一秒左右。

    Q#1/#2/#3/#4/#5/#6^Text^  可以显示2张系统内置的图片
    #1 对话框的编号
    #2 显示图片的类型
    #3 显示图片的子类型

    #4 显示图片的类型
    #5 显示图片的子类型

    #6   信息类型
       =1 - 一般的图片展示
       =2 -
    需要回答YES或者NO,结果保存在标志!!IF:V#1/?;

       =4 - 对话框显示时没有OK按钮,只会短暂显示,一秒左右。
       =7 - 需要选择一张图片,(left=1, right=0)。同样,结果结果保存在标志!!IF:V#1/?;
       =10 - 选择一张图片,结果保存在V变量v#1 (left=1, right=2, escape=0)
    举例:

    !!IF:Q1/21/134/17/99999999/1^你 好,我 是 {狐 狸} MM。
    我 身 后 是 终 极 标 靶,是 修 炼 的 好 地 方。
    不 过,想 进 去,你 要 先 过 我 这 一 关!^;
    效果如图
    bd-6.png

    Q#1/#2/#3/#4/#5/#6/#7/#8^Text^
    和前面一样,只是可以展示3张系统内置图片。

    #8 - type of message
       =1 - message (FLAG #1 WILL NOT BE SET!!!)
       =2 - request yes/no (stored to the flag)
       =4 - message with no buttons, visible until button is released
       =10 - choose one of pictures, save result in v#1 (left=1, right=2, escape=0)

    #8   信息类型
       =1 - 一般的图片展示
       =2 -
    需要回答YES或者NO,结果保存在标志!!IF:V#1/?;
       =4 - 对话框显示时没有OK按钮,只会短暂显示,一秒左右。
       =10 - 选择一张图片,结果保存在V变量v#1 (left=1, right=2, escape=0)
    举例:

    !!IF&y3=0:Q1/20/71/21/7/20/74/1^您 好 啊,{%Z-4} %Z-1。
    巴 适 铁 匠 铺 欢 迎 您 的 光 临。
    在 这 里 你 能 学 会 如 何 进 攻 和 防 御。
    不 过 这 需 要 花 费 您 100000 金 币。^;
    效果如图:

    bd-5.png



    [ 本帖最后由 fly123 于 2012-8-28 14:12 编辑 ]
  • TA的每日心情
    慵懒
    2019-8-17 09:46
  • 签到天数: 1158 天

    连续签到: 2 天

    [LV.10]圣龙

    2万

    回帖

    91万

    金币

    7

    精华

    论坛嘉宾

    守望论坛的稻草人

    Rank: 9Rank: 9Rank: 9

    积分
    87641

    社区QQ达人论坛守望者金牌裁判杰出贡献魅力之星TE联赛冠军

    发表于 2012-8-27 21:58:00 | 显示全部楼层
    看上去有成为精华帖的潜力
  • TA的每日心情
    开心
    2019-1-31 14:25
  • 签到天数: 130 天

    连续签到: 1 天

    [LV.7]血污怪

    2778

    回帖

    2万

    金币

    14

    精华

    论坛嘉宾

    Rank: 9Rank: 9Rank: 9

    积分
    14801

    退役版主社区QQ达人魅力之星

     楼主| 发表于 2012-8-27 22:18:24 | 显示全部楼层

    回复 9# 的帖子

    X$;Answer the gamer Sphinx question
       $ - number of question (-1 = random)
    Comments:
    This brings up the Sphinx question dialog box.
    All Questions and answers are taken from ZSphinx.txt
    file. If you have not the TxtEditor, you can use a CmdEditor to add something there.
    First column - question,
    second column - answer.
    For now the exact coincidence of gamer answer with written one means correct. ERM Flag1 will be set to 1 if answer is correct and 0 if answer is wrong.
    这个是设置斯芬克斯问题的对话框。基本没有人用过,我也没用过,就翻译下。
    $ - number of question (-1 = random)
    $ - 问题的编号,设置为-1的话就是任意。随机的意思。

    PS:1.所有的问题和答案在ZSphinx.txt这个文档里。如果你没有Txt编辑器,你可以用Cmd编辑器在里面增加点东西。ZSphinx.txt这个文件在那里?我现在都还没找到。
    2.第一行,是你的问题。第二行,你的答案。
    3.玩家的答案和你完全一致,才表示正确。
    4.如果玩家回答正确,那么标志V1=1.回答错误,标志V1=0。

    [ 本帖最后由 fly123 于 2012-8-28 14:55 编辑 ]
  • TA的每日心情
    开心
    2019-1-31 14:25
  • 签到天数: 130 天

    连续签到: 1 天

    [LV.7]血污怪

    2778

    回帖

    2万

    金币

    14

    精华

    论坛嘉宾

    Rank: 9Rank: 9Rank: 9

    积分
    14801

    退役版主社区QQ达人魅力之星

     楼主| 发表于 2012-8-27 23:26:29 | 显示全部楼层
    克招的教程是不错,但是很多东西都没讲。接下来,我会为大家继续讲解标志(布尔变量),W变量(英雄变量),宏变量。接收器.!!AI   .!!CA  !!MW   .!!QW等等一些不长用到的东西,请大家激情期待。

    评分

    1

    查看全部评分

  • TA的每日心情
    开心
    2019-1-31 14:25
  • 签到天数: 130 天

    连续签到: 1 天

    [LV.7]血污怪

    2778

    回帖

    2万

    金币

    14

    精华

    论坛嘉宾

    Rank: 9Rank: 9Rank: 9

    积分
    14801

    退役版主社区QQ达人魅力之星

     楼主| 发表于 2012-8-28 14:52:39 | 显示全部楼层
    IF对话框终于讲完了,有错误或者疑问,欢迎大家指正。
  • TA的每日心情

    2015-5-5 18:31
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]野猪

    320

    回帖

    9208

    金币

    0

    精华

    3级 Known Hero

    Rank: 3Rank: 3

    积分
    749
    发表于 2012-8-29 05:06:38 | 显示全部楼层
    不错。讲的很详细。
    ahome_bigavatar:guest
    ahome_bigavatar:welcomelogin
    您需要登录后才可以回帖 登录 | 英雄注册|Register

    本版积分规则

    捐赠
    关注我们,英3Mod一网打尽!

    WoG中文站 ( 辽B2-20210485-10 )|辽公网安备 21128202000228 号

    GMT+8, 2024-11-22 09:35 , Processed in 0.939836 second(s), 29 queries , Gzip On, File On.

    Powered by Discuz! X3.4

    Copyright © 2004-2022, Beijing Second Sight Technology Co., LTD.

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