游民星空 > 攻略秘籍 > 攻略 > 正文

轩辕剑外传-汉之云: 脚本编写简明教程

2008-01-13 13:06:28 来源:本站原创 作者:佚名 编辑:dsgames568 我要投稿

汉之云脚本研究(附带MOD制作工具)
http://www.gamersky.com/Soft/200801/11339.shtml

建议大家在编写脚本之前先认真阅读一下原始的脚本代码,以便能够更好的理解整个游戏系统和如何实现各种效果。
下面就结合原始的脚本代码,介绍一下如何编写自己的MOD脚本。

首先,先来看一下原始的脚本文件各自的功能:

main目录
0000?:基础函数库
002??:主线序章
003??:主线第一章
004??:主线第二章
005??:主线第三章
006??:主线第四章
1000?:游戏基本元素
101??:普通支线剧情
108??:其它剧情(商人/迷宫/DOMO)
109??:伙伴支线剧情
110??:场景切换

fight目录
F001:基础函数
F002:普通战斗
F003:伙伴剧情战斗
F004:支线剧情战斗
F005:主线剧情战斗

一、基础修改

我们以“存档点”部分的代码为例,详细解析一下如何实现最基本的修改
打开10000c.lua,我们可以找到如下的代码:

[Copy to clipboard] [ - ]CODE:
restore_motion = function()
   local mainid = get_mainrole()
   local mainname = get_rolename(mainid)
   restore_team()
   msginfo("全身籠罩一股清風")
end

restore_save = function()
   restore_motion()
   restore_save_q()
end

restore_save_q = function()
   selmsg(2, "選項:")
   setselect(1, "1.存檔")
   setselect(2, "2.取消")
   sleep(3)
   waitanykey()
   restore_save_ans(getselectanwser())
end

restore_save_ans = function(x)
   local mainid = get_mainrole()
   local mainname = get_rolename(mainid)
   if x == 1 then
      call_save()
   elseif x == 2 then
      restore_team()
   else
      restore_save_q()
   end
end
当我们在存档点按空格键时,就会触发restore_save函数(具体参见10803c.lua中的t7901函数)
它一共做了两件事情。第一,调用restore_motion函数恢复全员的状态;第二,就是弹出选择框,提示你是否需要存档。
弹出对话框的函数是selmsg。它有两个参数,第一个指定对话框中有多少个选择项,第二个是对话框的标题
你可以使用setselect设置选择项的具体内容,getselectanswer函数用于获取用户的选择。
之后你就可以在restore_save_ans里根据用户的选择进行相应的处理了
在支线剧情中,我们会经常看到选择框的身影

更多相关内容请关注:轩辕剑外传:汉之云专区

1 2 下一页
友情提示:支持键盘左右键“← →”翻页
游民星空APP
随手浏览游戏攻略
code
    没有任何记录
单机游戏下载
休闲娱乐
综合热点资讯
游民星空联运游戏