|
部分ASSA在内挂中确定被废弃的写法:
不等于的另类写法“<>”,在内挂中已经废弃,建议使用“!=”
waitdlg ,,2,xxx首个参数为空,内挂中首个参数必须存在,建议使用waitdlg ?,,2,xxx或waitdlg ?,0,2,xxx
label在调用时需要完整填写名称,内挂不支持模糊匹配label名
内挂部分指令大小写必须严格按照指令本身设定,错误的大小写指令无法正常
x,y表示坐标
' 号后面表示解释代码
小括号()内表示为解释脚本代码中文意思
中括号[]内表示为可选代码,实际编写脚本的时候可以不用上去
大括号{}内表示一定要用上的代码,实际编写脚本的时候不用上去会出错
这里所说的时间单位为S/秒,delay (延时)命令除外
∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽【say】(说话)【print】(显示)指令∽∽∽∽∽∽∽∽∽∽∽∽∽
say说话内容[,color]封包说话 (56字节长度)(0=白,1=蓝绿,2=紫红,3=蓝,4=黄,5=绿,6=深红,7=灰,8=灰蓝,9=灰绿)
print显示内容, [,color]屏显 (56字节长度)
(0=白,1=蓝绿,2=紫红,3=蓝,4=黄,5=绿,6=深红,7=灰,8=灰蓝,9=灰绿)
例子:
- say 感谢你使用石器so脚本
- say 感谢你使用石器so脚本,4 '这里说出来的话是显示为黄色的:感谢你使用石器so脚本
- print 感谢你使用石器so脚本 '用这个命令说话只显示在你的电脑上,其它玩家是看不到的
- print 感谢你使用石器so脚本,3 '在你屏幕上显示出来的话是蓝色的:感谢你使用石器so脚本
复制代码
∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽【msg】(弹出窗口)指令∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽
msg 想要在窗口显示的内容[|] '|表示换行
例子:
- msg 感谢你使用石器so脚本
- msg 感谢你使用石器so脚本|感谢你使用石器so辅助软件|||欢迎光临
复制代码
∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽【waitsay】(等待说话)指令∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽
waitsay {1-20},等待要出现的说话,等待时间[,错误跳转]
用途:用作判断当时状况,而后应该采取什么行动。如MM喂石时出现的文字可判断MM是否已经喂满该种灵石;魔法或抗性是否练到一个程度;是否得到某些物品(如不可思仪贝壳);或者让玩家以自己的发言表示应该采取什么样的行动等在石器窗口里以对话形式出现的文字。
例子:
- waitsay 1-10,成长率达到最高,5,没有达到最高 '在石器窗口1-10行里,5秒内一定要有以对话形式出现的“成长率达到最高”才继续执行waitsay后面的指令,否则就跳转到label 没有达到最高
- waitsay 1-10,成长率达到最高,5,-4 '在石器窗口1-10行里,5秒内一定要有以对话形式出现的“成长率达到最高”才继续执行waitsay后面的指令,否则就跳转到-4行,-4行是指在当前命令上,往上数第4行
- waitsay 1-10,成长率达到最高,5,+6 '在石器窗口1-10行里,5秒内一定要有以对话形式出现的“成长率达到最高”才继续执行waitsay后面的指令,否则就跳转到+6行,+4行是指在当前命令上,往下数第6行
- 注意:①该指令为判断类指令.
- ②此为“包含”指令,如waitsay 1-10,最高,5,-4,即听见的内容包含有“最高”的都达到“正确”的条件,继续执行waitsay后面的指令
复制代码
∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽【cls】(清屏)指令∽∽∽∽∽∽∽
用途:用了此指令,除了有可以清除屏幕的文字的作用,还必须用此指令来消除“waitsay”的屏幕信息,不至于让“waitsay”混淆了之前和之后的信息。
错误例子:
- say 好了,请玩家现在说出用方法一(继续脚本之后说一)还是用方法二(继续脚本之后说二)
- pause
- label 一
- waitsay 1-10,一,5,二
- goto 方法一
- label 二
- waitsay 1-10,二,5,一
- goto 方法二
- goto 一
复制代码
结果因为之前的对话里请玩家现在说出用方法1包含了“1”,所以即使玩家说“1”还是说“2”,所以还是会变成听见了“1”
正确例子:
- say 好了,请玩家现在说出用方法一(继续脚本之后说一)还是用方法二(继续脚本之后说二)
- pause
- cls
- label 一
- waitsay 1-10,一,5,二
- goto 方法一
- label 二
- waitsay 1-10,二,5,一
- goto 方法二
- goto 一
复制代码
继续脚本后用了“cls”指令,脚本就会变成一直处于等待状态,直至玩家说出“一”或者“二”脚本才会跳转去使用方法一或者二。
∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽【waitmap】(等待地图)指令∽∽∽∽∽
在切换地图时等待此地图编号的地图出现,若出现则执行下一行的指令
例子:
- walkpos 72,108
- walkpos 72,111
- walkpos 72,114
- walkpos 72,117
- waitmap 100,5,-3 '5秒内还没出现地图100,就自动跳转到-3行,即walkpos 72,111
- delay 2000 '这里加延时是怕辅助软件当掉,养成在waitmap后面加延时的习惯
- walkpos 260,175
- walkpos 260,177
- walkpos 260,179
- W 260,179,A '这个“W”是封包走路命令,这里的意思是把人物方向转到A(北)
- say 芝麻关门
- waitdlg 你可以进去,1,5,-5 '这个“waitdlg”是判断对话框命令,将在后面进来解释
- Button 确定
- Walkpos 13,15
- Walkpos 14,16
复制代码
此类跟NPC对话点对话框进门的情况,一般都要加“waitdlg”命令,等待时间和错误跳转,避免在对NPC说话时因遇敌而没有出现对话框而出错。不仅是和有可能会遇敌的NPC对话要加“waitdlg”,只要是和NPC对话的一定要加“waitdlg”命令。
注意:①“waitmap”指令其实可以当作“判断条件类”指令
②因为现在的7.5可以“无限制走路”,玩家和脚本都“看到”游戏人物在快速的走到一个地方并切换地图,其实因为石器服务器的速度有时候跟不上的缘故,游戏人物的实际位置并不是我们所看到的位置,游戏人物其实还在行走的途中甚至已经遇敌了,如果是这样的情况,按上面所写在“waitmap 地图编号,5,-3”一般可以解决这样的问题。
③石器服务器的缓慢出现了又一问题:其实切换地图已经成功,只是当时因为服务器速度慢地图还没有换,此时脚本判断成“地图错误”,就跳转到前面的标记里去,此时刚好换完了地图,人物已经出现在下一地图里,而却要走上一地图的坐标,后果可想而知了。这就要求脚本制作者要想方设法去解决各种各样的问题,使脚本更稳定.可配合“ifpos”命令使用。
∽∽∽∽∽∽∽∽∽∽∽【waitdlg】【ifdlg】(等待对话框)(判断对话框)指令∽∽∽∽∽∽
waitdlg 对话框内容,对话框行数,等待时间[,错误跳转]
一般与NPC对话后,就弹出相应的对话框,此指令用途为可以按设定时间等待指定内容或任意内容的对话框的弹出,在设定的时间内直到对话框出现才进行下一步,若超时没有出现则执行错误跳转的内容。
例子:
walkpos 278,331
walkpos 278,326
walkpos 278,326
W 0,0,北 '人物方向往北
say 进去
waitdlg ?,0,5,-5 '不管对话是什么内容,只要弹出有对话框就执行下一个指令,如果5秒内没出现对话框,就跳转到 -5行
button 确定
label 地图错误
walkpos 278,331
walkpos 278,326
walkpos 278,326
W 0,0,A '人物方向往北
say 进去
waitdlg ?,0,5,地图错误 '不管对话是什么内容,只要弹出有对话框就执行下一个指令,如果5秒内没出现对话框,就跳转到”地图错误”
button 确定 ’这里加上地图错误跳转在遇敌的地方使用可以纠正因遇敌而不能跟NPC说话出现对话框的情况,但有时候却即使有出现对话框也当作没有出现而跳转,所以一般可以在“waidlg”指令后面添加“delay”(详细请参考“delay”指令)。
walkpos 69,48
walkpos 69,47
walkpos 69,46
walkpos 69,45
W 69,45,A
say 买
waitdlg只要使用这根羽毛,无论在任何地方都可以立刻回,2,5,-5 '等待对话框的第2行是否出现”只要使用…. ”是的话就执行下一个指令,
不是的话就执行-5行的指令,即”walkpos 69,47”
buy 1,1
delay 500
walkpos 70,45
walkpos 71,45
∽∽∽∽∽【mousemove】【lclick】【rclick】【doubleclick】(鼠标移动)(鼠标左击)(鼠标右击)(左键双击)指令∽∽∽∽∽
注意:使用此类指令,必须跟有X和Y两个坐标参数,获得参数的方法如下:
①资料显示的下面的信息那一栏有“鼠标”显示出鼠标在当前窗口的坐标X和Y
②选上脚本制作器里的“记录鼠标”,然后在窗口里单击鼠标左键捕捉
mousemove X,Y
用途:把鼠标移动到某坐标
lclick X,Y
用途:在某坐标位置上单击鼠标左键
注意:即使连点两下也不能充当“双击”
rclick X,Y
用途:在某坐标位置上单击鼠标右键
doubleclick X,Y
用途:在某坐标位置上双击鼠标左键(内挂独有assa不支持)
∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽【button】(点击按钮)指令∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽
button {OK|CANCEL|确定|确定2|取消|上一页|下一页|ESC}
button 确定 '会判断窗口上是OK还是确定,然后发送对应的
button 确定2 '不做判断直接发送确定
例子:
- Say hi
- waitdlg ?,0,4,-1
- button 下一页
- waitdlg 你想接这个任务吗?,1,5,-3
- button 确定
- waitdlg 麻烦你了,1,5,-5
- button OK
复制代码 button 6|2 '在技能店使用时,相当于学习第6个技能,给第二只宠,第二个技能位
∽∽∽∽∽∽∽∽∽∽∽∽∽∽【Pickup】(拾道具)指令∽∽∽∽∽∽∽∽∽∽∽∽∽∽
Pickup {*|北|东北|东|东南|南|西南|西|西北|A|B|C|D|E|F|G|H} [,x,y] '一般后面的坐标是不用加的,加上去了也没有什么作用
拣取身边以人物为中心,人物身边连同人物站立位置一共9个位置范围内的物品
Pickup * '把人物周围所有东西拾起
pickup 北 '把人物北边的道具拾起
pickup A '把人物北边的道具拾起
Pickup 东,12,13 '站在12,13下拾起人物位置东边的东西,一定要站在12,13下才能用这个指令,否则会出错
∽∽∽∽∽∽∽∽∽∽∽∽【nearpos】(查找最近坐标)指令∽∽∽∽∽∽∽∽∽∽∽∽
nearpos
任意位置只限于开头任意位置,若后面跟有交通类脚本指令,则相当于“开始位置”般锁定了开始的位置,举个例子说说吧:
- nearpos
- say 这里是奇喀喀村,现在出发下海去了
- walkpos 63,48
- walkpos 60,43
- walkpos 60,40
- waitmap 200,5,-3
- walkpos 133,1007
- walkpos 128,1007
- walkpos 122,1008
- walkpos 116,1010
- walkpos 102,1018
- walkpos 102,1019
- walkpos 102,1022
- waitmap 817,5,-3
复制代码 假若上面那段指令没有用“nearpos”指令的话,那么站在128,1007里开始运行脚本,脚本会在说完”这里是奇喀喀村,现在出发下海去了”这句话后就马上走到63,48,而你又站在地图 200中了,这样肯定就会造成坐标错误.用了”nearpos”的话,脚本就会找到在地图200下的最近坐标,比如”122,1008”,然后就直接在122,1008这个指令开始继续运行这个脚本.
∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽【walkpos】(坐标)指令∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽
walkpos X,Y
注意:使用此指令,必须跟有X和Y两个坐标参数,获得参数的方法如下图:
①①资料显示的下面的信息那一栏有“坐标”显示出鼠标在当前窗口的坐标X和Y
②选上脚本制作器里的“记录走路”,然后在窗口里控制人物走动捕捉
用途:控制人物走到某个坐标,是石器辅助软件里最原始,最普遍,使用率最高的指令
∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽【W】(封包走路)指令∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽
W x,y,{[a..h|aa..hh|A..H]} '这个指令也可以让人物转向,如W 0,0,东
格式1:W 0,0,{北|东北|东|东南|南|西南|西|西北} 转向
格式2:W 0,0,{A|B|C|D|E|F|G|H} 转向
格式3:W 50,50,{北|东北|东|东南|南|西南|西|西北} 1.82瞬移(面向) 限三步
格式4:W 50,50,{A|B|C|D|E|F|G|H} 1.82瞬移(面向)限三步
格式5:W 50,50 1.82瞬移(默认面向) 限三步
格式6:W 50,50,aa 在50,50的位置上向北(a)移两步
上面这个W(封包走路)走路命令用得比较多的是它的转向功能.一般用在和NPC对话时.
∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽【set】(设定)指令∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽∽
set {快速遇敌|快速行走|自动逃跑|自动捉宠|快速战斗|自动KNPC|原地保护|经验显示|断线重登|穿墙行走|W2|自动堆叠|}{,1|0}
'1表示开启,0表示关闭
set 指定攻击, {宠物名称|宠物名称……| 宠物名称} '最多可以设置捉10只宠物的名字
set 锁定攻击, {宠物名称|宠物名称……| 宠物名称} '最多可以设置捉10只宠物的名字
set 捉宠等级,等级数值
set 捉宠名称,{宠物名称|宠物名称……| 宠物名称} '最多可以设置捉10只宠物的名字
set 捉宠血量,血量数值
set 捉宠魔法,{1|2|3|4|5} '1表示帽子精灵,2表示衣服精灵,3表示武器精灵,4表示左饰精灵,5表示右饰精灵,一般都设置为3
set 超回合数逃跑,{1|0}'后面的数字可以控制具体多少个回合
set 宠被飞逃跑,{1|0}
set 被飞换宠,{1|0}
例子:
- set 快速战斗,1
- set 快速战斗,0
- set 吃补血肉,1
- set 丢非血肉,1
- set 断线重登,1
- set 自动堆叠,0
- set 加速,14
- set 捉宠等级,50 '设置捕捉50级的宠物
- set 捉宠名称,卡特|史克杰|史菲洛
- set 捉宠名称,那提拉
- set 捉宠名称,0 '设置捕捉宠物名称选项前面的勾去掉
- set 捉宠等级,0 '设置捕捉宠物等级选项前面的勾去掉
- set 捉宠魔法,3 '设置用武器精灵捕捉宠物
- set 锁定攻击,扑满乌力|吉比
复制代码 set 被飞换宠,1
∽∽∽∽∽∽∽∽∽∽∽∽【chpet】(改变战宠骑宠命令)指令∽∽∽∽∽∽∽∽∽∽∽∽
chpet {0-5}{,模式} '模式只有1,1表示更换的是骑宠,不写表示更换的是战宠
在平时状态下换战宠,除了正在骑乘的宠物外,其余状态的宠都可以变成“战斗”,0为把当前战宠状态变回“等待”
chpet 1 '把第一位的宠物状态改变成“战斗”
chpet 2 '把第二位的宠物状态改变成“战斗”
chpet 0 '把战宠设置为等待状态
chpet 2,1 '把第二位的宠物状态改变成“骑乘”
chpet 3,1 '把第三位的宠物状态改变成“骑乘”
|
|