圣光传说吧 关注:562贴子:2,234
  • 7回复贴,共1

【改版教程】【第二课】XSE基础之对话命令

只看楼主收藏回复

先看一段例子:
#org 0x脚本地址
lock
faceplayer
msgbox 0x文本地址1 0x文本种类
release
end
#org 0x文本地址
=
脚本地址可以使用FSF搜索到。

但是有时候用FSF搜索空位,会遗漏些可以使用的空位,
这时,有些人UE或者winhex查看空位,

我喜欢两个结合起来使用~


IP属地:江苏1楼2015-02-10 16:57回复
    我们用FSF读取ROM后,重头开始搜到一个空位后,要到UE中查看这个地址后面的空位够不够些下你所要写的脚本。
    如果你要写的脚本有100个字节,而FSF搜到的地址后面只有90个字节,那么你就返还其吧~就是是99也不可以~
    所以,写脚本的话,下把代码都写好,然后查看命令帮助里(按下F1吧),计算每个命令的字节,然后全部加起来再加1,这段地址的字节就是这么多。加1的原因是,每个地址的结束,用UE查看,在尾部都是FF字节,没有FF的话,这段地址是没有结束的,相当于给他一个终点吧,于是呼要加1。
    好了,我们看看脚本吧~
    lock是锁定的意思,如果在XSE中写下lock,那么地图上的所有NPC都将停止行动~
    写下lock的位置要合理才行哦,不一定要写在开头,总是拘泥于形式的话是也不好脚本的~
    faceplayer就是要NPC的脸朝向你,不写下 它的话,当你与NPC对话,NPC的脸就不会对着你的~
    msgbox是文本框的显示啦,至少我是这么理解的,后面0x文本地址,我们要打开文本大师,输入你要说的话,然后转化吧 ~,转化后那些乱七八糟的代码,我们先不看。
    magbox 0x文本地址 0x对话框中种类
    所谓对话框种类有4种,
    0×2
    普通对话框
    0×3
    告示牌(玩家面对它就会显示文本,之后按任意键都会自动关闭)
    0×4
    对话框(不能被手动关闭)closeonkeypress关闭命令
    0×5
    选择对话
    compare LASTRESULT 0x?
    if 0x? goto @?
    当玩家选择Yes时,LASTRESULT自动被设置为0×1,反之则被设置为0×0.
    这时compare会把LASTRESULT和0×1进行对比,如果两者不同,那么得到的结果就是0×0,相同则为0×1.
    0x5我们暂且不看他,以后会谈到,现在想太多可不好~
    一般与人问对话我选的是0x3
    0x2也许有人会问为啥不用,我在测试的时候0x2的对话框显示不出来,你们要是有兴趣可以去研究研究,我不知道为什么~
    release是解除lock的锁定,
    然后是每个脚本必须有的end
    #org 0x文本地址
    =
    这个是把你输入的对话写到ROM中,转化后一定要注意看文本大师右下角的字节数,加1然后输入到FSF的隐藏间隔中,点击搜索,搜索到这个地址一般来说是没有问题的,如果实在不放心,就到UE中查看就好了,往下看看空位够不够就好了。


    IP属地:江苏2楼2015-02-10 17:21
    回复
      最后鼠标右击,写入即可~
      然后再到游戏中看看有没有BUG~
      ~~~~~~~~~~~~~~~~~~~~~~~end~~~~~~~~~~~~~~~~~~~~


      IP属地:江苏3楼2015-02-10 17:22
      回复
        要是有图就好了


        IP属地:山东来自iPhone客户端4楼2015-02-24 11:12
        收起回复
          好吧,有图


          IP属地:山东来自iPhone客户端5楼2015-02-24 11:36
          回复
            被我忽视了


            IP属地:山东来自iPhone客户端6楼2015-02-24 11:36
            回复
              我就默默的听着楼主扯淡


              来自手机贴吧7楼2017-01-17 09:32
              回复