nds的avg游戏制作软件avg maker ds

这是很复杂的!!!!

(c)AVG MAKER DS

– By Hewenxie

脚本指令说明书

v0.9

无特殊说明每条指令均为@开头,以;结尾。

指令前加//,即为注释掉该行,被注释掉的指令不会执行。如//@say(.....);

一. 对话文字显示指令

前置说明:对话显示内容支持字体颜色。

字体颜色默认为白色,如要对字体颜色操作,请使用%cX,X为0~9任意数字,对应颜色如下:

1-白色(white),2-红色(red),3-绿色(green),4-蓝色(blue),5-紫色(purple),

6-青色(cyan),7-黄色(yellow),8-淡灰色(light grey),9-深灰色(dark grey),0-黑色(black)

1. @say

1.1 功能:

人物对话显示功能,在对话框中进行显示。

1.2 脚本指令原型:

@say(style, isAnimation, name, content)

1.3 参数说明:

1. style:0-普通模式 1-有头像模式(会空出一块空间用于显示头像)

2. isAnimation:人物说话是否有动画效果,具体效果与@anim()有关。1-有动画效果,0-无动画效果

3. name:说话人物名字。如果不需要名字,置空即可

4. content:说话内容。注意用英文模式下的""包含其内容,格式如"你好!",引号内部不再兼容英文双引号,中文双引号兼容。

1.4 例:

@say(0,0,,"你好!我是%c2静%c1,初次见面!请多多关照!");

2. @boxText

2.1 功能:

框文字显示功能,将文字在矩形框中进行显示。

2.2 脚本指令原型:

@boxText(screen, basex, basey, maxx, maxy, verbatim, content)

2.3 参数说明:

1. screen:显示用屏幕,0-上屏,1-下屏

2. basex:用于显示文字的矩形框左上角顶点的x坐标

3. basey:用于显示文字的矩形框左上角顶点的y坐标

4. maxx:用于显示文字的矩形框右下角顶点的x坐标

5. maxy:用于显示文字的矩形框右下角顶点的y坐标

6. verbatim:是否逐字显示。0-否,1-逐字显示

7. content:说话内容。注意用英文模式下的""包含其内容,格式如"你好!",引号内部不再兼容英文双引号,中文双引号兼容。

2.4 例:

@boxText(1,20,20,200,150,1,"你即将进入AVG的美妙世界!");

二. 图像相关操作指令

1. @chara

1.1 功能:

变更人物图像,支持渐变效果。

1.2 脚本指令原型:

@chara(path, isAlpha)

1.3 参数说明:

1. path:人物图象文件路径。文件名后不写文件后缀。

2. isAlpha:是否打开渐变进出效果。0-不打开,1-打开

1.4 例:

@chara(avgFiles/chara/chara1, 1);

2. @clearChara

2.1 功能:

擦除人物图像。

2.2 脚本指令原型:

@clearChara()

2.3 参数说明:

无参数

2.4 例:

@clearChara();

3. @anim

3.1 功能:

加载动画帧图像。此动画帧在对话过程中实现说话动作。

注意:由于此功能支持并不好,所以不建议使用。要使用的话图像长宽最好不要超过16*16。

3.2 脚本指令原型:

@anim(path, width, height, x, y)

3.3 参数说明:

1. path:图象文件路径。文件名后不写文件后缀。

2. width:图像宽度。

3. height:图象高度。

4. x:显示图像的x坐标。

5. y:显示图像的y坐标。

3.4 例:

@anim(avgFiles/chara/anim1, 16,16, 128,50);

4. @bg

4.1 功能:

加载背景。

4.2 脚本指令原型:

@bg(path,isAlpha)

4.3 参数说明:

1. path:背景图象文件路径。文件名后不写文件后缀。如果为null获NULL则为擦除背景

2. isAlpha:是否打开渐变进出效果。0-不打开,1-打开

4.4 例:

@bg(avgFiles/bg/bg1,1);

5. @res_chara

5.1 功能:

从打包资源读取,变更人物图像,支持渐变效果。

5.2 脚本指令原型:

@res_chara(resource, file name, isAlpha)

5.3 参数说明:

1. resource : 资源文件路径。

2. file name:人物图象文件名字。文件名后不写文件后缀。

3. isAlpha:是否打开渐变进出效果。0-不打开,1-打开

5.4 例:

@res_chara(avgFiles/chara/img.res, chara1, 1);

6. @res_bg

6.1 功能:

从打包资源读取,加载背景。

6.2 脚本指令原型:

@res_bg(resource, file name, isAlpha)

6.3 参数说明:

1. resource : 资源文件路径。如果为null获NULL则为擦除背景

2. file name:背景图象文件路径。文件名后不写文件后缀。如果为null获NULL则为擦除背景

3. isAlpha:是否打开渐变进出效果。0-不打开,1-打开

6.4 例:

@res_bg(avgFiles/bg/bg.res, bg1, 1);

7. @btbg

7.1 功能:

加载背景至下屏。

7.2 脚本指令原型:

@btbg(path,isAlpha)

7.3 参数说明:

1. path:背景图象文件路径。文件名后不写文件后缀。如果为null获NULL则为擦除背景

2. isAlpha:是否打开渐变进出效果。0-不打开,1-打开

7.4 例:

@btbg(avgFiles/bg/bg1,1);

8. @res_btbg

8.1 功能:

从打包资源读取,加载背景至下屏。

8.2 脚本指令原型:

@res_btbg(resource, file name, isAlpha)

8.3 参数说明:

1. resource : 资源文件路径。如果为null获NULL则为擦除背景

2. file name:背景图象文件路径。文件名后不写文件后缀。如果为null获NULL则为擦除背景

3. isAlpha:是否打开渐变进出效果。0-不打开,1-打开

8.4 例:

@res_btbg(avgFiles/bg/bg.res, bg1, 1);

9. @texton

9.1 功能:

上屏显示文字和文字框。

9.2 脚本指令原型:

@texton();

9.3 参数说明:

9.4 例:

@texton();

10. @textoff

10.1 功能:

上屏文字和文字框消失。

10.2 脚本指令原型:

@textoff();

10.3 参数说明:

10.4 例:

@textoff();

11. @erase

11.1 功能:

擦除指定屏幕上的文字。

11.2 脚本指令原型:

@erase(screen);

11.3 参数说明:

screen:0-上屏 1-下屏

11.4 例:

@erase(1);

12. @head

12.1 功能:

加载头像。

12.2 脚本指令原型:

@head(path)

12.3 参数说明:

1. path:头像文件路径。文件名后不写文件后缀。置为NULL或null时,指令变为擦除头像功能。

12.4 例:

@head(avgFiles/chara/head1);

@head(null);

13. @res_chara

13.1 功能:

从打包资源读取,加载头像。

13.2 脚本指令原型:

@res_head(resource, file name)

13.3 参数说明:

1. resource : 资源文件路径。

2. file name:头像文件名字。文件名后不写文件后缀。置为NULL或null时,指令变为擦除头像功能。

13.4 例:

@res_chara(avgFiles/chara/img.res, head1);

@res_chara(null, null);

14. @clearHead

14.1 功能:

擦除头像。

14.2 脚本指令原型:

@clearHead()

14.3 参数说明:

无参数

14.4 例:

@clearHead();

三. 脚本操作类指令

1. @jump

1.1 功能:

文本内无条件上下跳转。

1.2 脚本指令原型:

@jump(num)

1.3 参数说明:

1. num:条转行数。正数为向下跳转,负数为向上跳转,0为死循环不要用

1.4 例:

@jump(18);

@jump(-18);

2. @if @endif

2.1 功能:

条件执行体。符合条件执行体内指令,一个@if对应一个@return,体内可以支持条件执行体嵌套。

2.2 脚本指令原型:

@if(condition)

Body

@endif()

2.3 参数说明:

1. condition:执行条件,支持判断类型:==(相等), >(大于), <(小于), >=(大于等于), <=(小于等于), !=(不等于); 左操作数必须为变量,右操作数支持变量;

注意的是每个执行体只支持一次逻辑判断。

2.4 例:

1. @if($(var) == 100);

……………

@endif();

2. @if($(var1) == $(var2));

……………

@endif();

3. @call

3.1 功能:

带返回的脚本文件跳转。目标脚本执行完毕后返回原脚本文件继续执行

3.2 脚本指令原型:

@call(path)

3.3 参数说明:

1. path:脚本文件路径

3.4 例:

@call(avgFiles/data/test1.spt);

4. @changeText

4.1 功能:

不带返回的脚本文件跳转。直接更换脚本文件

4.2 脚本指令原型:

@ changeText (path)

4.3 参数说明:

1. path:脚本文件路径

4.4 例:

@ changeText (avgFiles/data/test1.spt);

5. @gameOver

5.1 功能:

游戏结束,游戏重新初始化

5.2 脚本指令原型:

@ gameOver ()

5.3 参数说明:

5.4 例:

@ gameOver();

6. =

6.1 功能:

文本结束标志,此标志前不加@,注意如带返回的脚本文件,末尾一定加上此结束标志。

6.2 脚本指令原型:

=

6.3 参数说明:

6.4 例:

=;

7. @select

7.1 功能:

出现按钮进行选择,执行相应操作。

7.2 脚本指令原型:

@select#1button_text1 $value1$ @ins1 @ins2 @ins3 ~text1 ~ #2 $$ @ @ @ ~~ #3 $1$ @ @ @ ~~;

说明:该指令设定较为复杂,设定为3个选择项。每个选择项格式为#num button_text $value$ @instruction1 @instruction2 @instruction3 ~text ~,#号后数字为选

项号,顺序固定为1-2-3,不可改动。每个选项最大支持3条执行指令,判断后相应顺序执行。

7.3 参数说明:

1. button_text:按钮文字

2. value:选项对应值,该功能预留,填该值无实际意义,所以每次写0即可

3. instruction:脚本指令名。

4. text:选择后显示在对话文本框中文字。如不需要显示后续内容则不填写

7.4 例:

@select#1%c2按钮一 $-1$ @chara()@set_value($(sd)=18)@ ~选择了选项一$(sd)~ #2%c2按钮二 $0$ @ @ @ ~选择了按钮二~ #3%c2按钮三 $0$ @

@ @ ~选择了按钮三~;

8. @var_select

8.1 功能:

出现按钮进行选择,选择结果对应值将记录在指定变量中。0-第一个选项,1-第二个,2-第三个

8.2 脚本指令原型:

@var_select(variable, number, item|.....|....);

8.3 参数说明:

1. variable:变量名,注意,使用的变量必须之前申请。

1. number:选项个数

3. item:选项名字,选项之间用 | 隔开。 选项数量1-3个。

8.4 例:

@set_var(choice, -1);

@var_select(choice, 2, no1|no2);

四.系统操作类指令

系统变量说明:本系统最大支持128个自定义整型类变量。并且在文本显示指令和条件判断指令中支持对系统变量值的显示和判断,调用形式为$(variable_name),例如现

在已经申请了变量var1且值为100,调用时写”变量值为$(var1)” 即可显示 ”变量值为100”。

1. @set_var

1.1 功能:

申请系统变量。

1.2 脚本指令原型:

@ set_var (var_name, var_value)

1.3 参数说明:

1. var_name:变量名,注意变量名不要过长

2. var_value:初始值

1.4 例:

@set_var(var1, 100);

2. @unset_var

2.1 功能:

取消指定已经申请系统变量。

2.2 脚本指令原型:

@ unset_var (var_name)

2.3 参数说明:

1. var_name:变量名,注意变量名为已经申请的变量

2.4 例:

@unset_var(var1);

3. @set_value

3.1 功能:

对已申请的系统变量进行赋值。

3.2 脚本指令原型:

@ set_value($(var_name), var_value)

3.3 参数说明:

1. var_name:变量名,注意变量名不要过长

2. var_value:要赋的值

3.4 例:

@set_value($(var1), 0);

4. @delay

4.1 功能:

系统等待指定时间。

4.2 脚本指令原型:

@delay(time)

4.3 参数说明:

1. time:等待的时间 (单位:毫秒)

4.4 例:

@delay(1000);

5. @save

5.1 功能:

存储当前进度。

5.2 脚本指令原型:

@save(text)

5.3 参数说明:

1. text:选填参数,存盘标签内容,可以显示在存档按钮上。不填则默认标签内容为存盘时间。

5.4 例:

@save(第二章);

@save();

6. @load

6.1 功能:

读取进度。

6.2 脚本指令原型:

@load()

6.3 参数说明:

6.4 例:

@load();

五. 声音类指令

1. @playSFX

1.1 功能:

播放效果音,目前支持8bit signed 码率为11025的raw格式声音文件。

1.2 脚本指令原型:

@playSFX(path)

1.3 参数说明:

1. path:音频文件路径,注意文件用全名

1.4 例:

@playSFX(avgFiles/sound/1.raw);

2. @res_playSFX

2.1 功能:

从打包资源读取,播放效果音,目前支持8bit signed 码率为11025的raw格式声音文件。

2.2 脚本指令原型:

@res_playSFX(resource, file name)

2.3 参数说明:

1. resource:音频资源文件路径,注意文件用全名

2. file name:音频文件名,注意文件用全名

2.4 例:

@res_playSFX(avgFiles/sound/sound.res, 1.raw);

3. @loopSFX

3.1 功能:

循环播放效果音,目前支持8bit signed 码率为11025的raw格式声音文件。

3.2 脚本指令原型:

@loopSFX(path)

3.3 参数说明:

1. path:音频文件路径,注意文件用全名

3.4 例:

@loopSFX(avgFiles/sound/1.raw);

4. @res_loopSFX

4.1 功能:

从打包资源读取,循环播放效果音,目前支持8bit signed 码率为11025的raw格式声音文件。

4.2 脚本指令原型:

@res_loopSFX(resource, file name)

4.3 参数说明:

1. resource:音频资源文件路径,注意文件用全名

2. file name:音频文件名,注意文件用全名

4.4 例:

@res_loopSFX(avgFiles/sound/sound.res, 1.raw);

5. @playBGM

5.1 功能:

播放背景音乐。只支持mp3格式文件,码率不宜过高,建议采用11025 8bit 96kps配置或更低,具体可以测试。在进行音乐切换的时候也是直接用该指令。

5.2 脚本指令原型:

@playBGM(path)

5.3 参数说明:

1. path:音频文件路径,注意文件用全名

5.4 例:

@playBGM (avgFiles/sound/bgm1.mp3);

6. @stopBGM

6.1 功能:

停止播放当前背景音乐。

6.2 脚本指令原型:

@ stopBGM()

6.3 参数说明:

6.4 例:

@stopBGM();

以上只是大约1/10