TA的每日心情 | 开心 2024-11-6 23:36 |
---|
签到天数: 319 天 [LV.8]以坛为家I
管理员
- 积分
- 85587
|
大家好!痾,这是我第一次发教学,这个教学主要是以一位新手,完全没有基础的人发想的,以及记录我对server修改修复以及设计等等~至于发这个贴其实也是受到【繁枫计画】影响~让更多人可以写出来或是修改出来自己喜欢或需要的server~
进入正题~
今天这个是基于魔森V245端口的开发!这个端口开源板,板上有!可以自行寻找一下,不难找,真的!
day1:
今天先讲npc对话的基本语法!不一定都对,毕竟我也是半路出家,我只能说出我对代码的理解!
- <font size="3">//函数定义
- var status=-1//这是一个对话判断的基础
- //这边是设定起始点
- function start(){
- action(1,0,0); //设定各个模式mode,type,selection
- }
- //这边是开始显示的对话框
- function action(mode,type,selection){//这边开始调用action定的数值开始运作整个脚本
- if(mode==1){
- status++;
- }else{
- status--;
- cm.disopse();
- }//这几句意义是如果mode他等于1,status+1(=0),否则就减一,可以简化成status = (mode == 1 ? status+1 :cm.dispose());
-
- if(status==0){
- var text="";
- text="这是第一句话";
- cm.sendNext(text);
- }/*
- 在这段的第1句,如果status等于0则继续执行{}内的指令
- 这边则是因为在一开始我们就把mode设定为1,所以status他会+1变成0。
- var是进行变数设定的开头,text则是我设定的变数名称,他后面接=""代表他这个是要用于表示文字的。
- 以这段的写法通常用于多选项会比较多,同时他配for以及阵列写法可以经减掉很多代码跟文字,是非常泛用的方法
- 但是在这边先不过多讨论,因为没有把基础打好会在后免严重搞混,造成脚本有许多bug
- 最后一行cm.sendNext(text)他是一个对话框函数,cm.sendNext()调用一个带有继续的对话框,text则是调用前一行写的text="这是第一句话";
- "="之后的内容
- 讲人话就是,cm.sendNext()叫出对话框;把刚刚设定text中的内容填到对话框
- */
-
- if(status==1){
- text="这是第二句话"
- cm.sendOk(text);
- cm.dispose();
- }/*
- 这边跟前一段类似,但是在最后我加入了cm.dispose();这个指令,他的意思是强制停止程式,他后面有再多代码都不会被执行了!!
- 所以如果你想要一句接著一句就不行在那段的主要执行代码中加入"cm.dispose()"
- */
-
-
复制代码
|
|