- 注册时间
- 2008-8-28
- 最后登录
- 2011-3-28
②入门
- 积分
- 70

|
虽然N年前看过一下NS,可是真正铁了心学习NS是上周的事情。由于是从零开始(没有任何电脑编程基础),绕了不少弯路。
花了三天时间,总算把基本的一些功能摸清楚了。
我想做的游戏是一个类似《FATE》的文字小说游戏,脚本和支线流程已经做好,功能比较简单,也想把自己在摸索过程中的一些问题记录下来,在这里分享。我想和我一样从零开始学NS的人应该不在少数,希望能有点帮助,也希望这里的前辈能不吝指点当中的谬误,谢谢。
一、对话框
1. 预先定义对话框的格式
这个游戏中,有常用的对话框、字速快的对话框、大字对话框这三种。开始的时候,每次出现对话框我都要打上setwindow那一长串东西……后来发现,是可以先定义的。
在0.txt的define区,可以先把这三种对话框先定义,这样,在游戏中就可以直接输入代码了。
*define
defsub frame;一般对话框
defsub frame1;大字对话框
defsub frame2;迅速字对话框
;=====对话框设定
game
*frame
setwindow 30,150,30,3,17,17,0,2,80,1,1,":a;other\frame.jpg",0,118
return
*frame1
setwindow 30,150,16,2,28,28,0,2,80,1,1,":a;other\frame.jpg",0,118
return
*frame2
setwindow 30,150,30,3,17,17,0,2,300,1,1,":a;other\frame.jpg",0,118
return
defsub写在define区,具体的定义在game下面,放在游戏本体前。
比如,在游戏中我要显示这么个东西:

没有定义的话,写成:
setwindow 30,150,30,3,17,17,0,2,80,1,1,":a;other\frame.jpg",0,118
今天阳光明媚,
东方司令部新的一天开始了。\
作出了定义,就可以直接用frame来代替那串:
frame
今天阳光明媚,
东方司令部新的一天开始了。\
2. 关于对话框字数的测算
我在PS里面,新建一个和游戏屏幕大小一致的画布,先在上面画好对话框,再用文字工具测量大概可容纳多少个字。
3. 关于半透明的对话框
对话框用工具转成阿尔法透明图后,把右边需要半透明的黑色部分替换成X%的黑色(如50%黑),那样就会呈现半透明效果,如下图:

4. 关于显示对话的主人
游戏的文字默认颜色是白色,我设定对话主人的显示颜色是蓝灰,这个也可以在define区先定义格式:
*define
defsub riza
defsub louis
defsub roy
game
*riza
#B3E9FF【中尉】#ffffff
return
*louis
#B3E9FF【阿姆斯特朗少佐】#ffffff
return
*roy
#B3E9FF【大佐】#ffffff
return
要特别注意:不要忘记“return”。
这样就可以用代码roy来代替#B3E9FF【大佐】#ffffff这一长串…… |
|