————————————————————————-问题一:既然同样都是作为“显示文章”的标志,@标志和\标志有什么区别吗?那么,试看看把程序写成这样……**********这里是需复制内容**********;—————————-我是分隔线—————————-*definegame*start你好,世界。
\这是我的第一个程序。
\end;—————————-我是分隔线—————————-**********需复制内容结束**********这一次,在显示“这是我的第一个程序。”
的同时,“你好,世界。”
消失了。
\标志比@标志多了一条功能,就是在显示它所在的这一行文章的同时,将之前显示的文章消除。
在电子小说里,@是接着看下一行,而\就是翻过一页,把之前的一页清掉了。
因为屏幕或者对话框的大小是有限的,如果已经显示的文章字数超过了屏幕可以容纳的范围,NS就会报错,因此在制作电子小说的时候,合理的使用这两个标志是很重要的基础哟。
————————————————————————-问题二:我想在两行文字间空上一行,但是NS把所有空行都WS了?因为这样,NS也提供了另外一条指令。
“br”其实是HTmL语言里表示空行的命令,在NS里,也是同样的意思。
**********这里是需要复制内容**********;—————————-我是分隔线—————————-*definegame*start你好,世界。
@br这是我的第一个程序。
\end;—————————-我是分隔线—————————-**********需复制内容结束**********不用说,自己看看效果吧。
————————————————————————-问题三:每显示一段文章都一定要用@和\吗?麻烦不说,要是忘了加还容易出错,没有其他办法?既然每句话结尾多少都有个感叹号句号问号之类的,在制作比较大型的游戏时,还要再为每行文字加一个标志确实很烦。
因此,NS也提供了比较简单的方法:clickstr命令。
clickstr就是一个F类指令,也就是说,是只能用在NS的定义区块里的。
**********这里是需复制内容**********;—————————-我是分隔线—————————-*defineclickstr‘。
‘,1game*start你好,世界。
这是我的第一个程序。
end;—————————-我是分隔线—————————-**********需复制内容结束**********没有使用@和\的情况下,效果和之前的完全一样。
并且,使用clickstr命令之后,NS会根据参数,在文字显示超过屏幕可容纳字数后自动翻页。
clickstr的格式为:clickstr‘。
!?(可以写一个,也可以写N个,必须要是全角)‘,2clickstr‘等待标志‘,翻页参数翻页参数为0时候,不会自动翻页,超过字数会出错。
为1时,显示到屏幕(或对话框)满为止,自动翻页。
为2时,到离可容纳字数还有1行时翻页。
为3时,到离可容纳字数还有2行时翻页。
以下类推。
而假如某一行里有句号或其他已经定义的等待符号,比如说问号,但是不想让这部分等待的时候,还有一个“等待失效”的标志“_”。
把“_”标志放在等待符号的前面,执行到这里的时候就不会等待,而会直接继续显示下一句了。
例如:国家政策,小白要持证上岗_。
补充,假如真的对以上都懒得使用,请在define区内加入linepage命令。
这条命令会把每一行视做一段对话。
缺点是,在使用这个命令之后/命令(换行失效命令)无法使用。