游戏开宝箱功能
功能:双击可以打开宝箱物品
宝箱数据库相关数据:
宝箱数据库设置:StdMode=31 Shape=1-99(Shape不要和其他物品有冲突)
Source= 宝箱可摇次数;不写或为空默认摇1次 摇箱子次数存放在N0变量中 Reserved=1
钥匙数据库设置:StdMode=40 Shape=1-99 (Shape不要和其他物品有冲突)
宝箱播放动画:data\cfg_game_data.xls
字段:boxtexiao
格式:宝箱Shape值#宝箱默认特效#宝箱开启动画特效#宝箱转动特效|Shape值#宝箱默认特效#宝箱开启动画特效#宝箱转动特效
例子:15#4530#4511#4512|16#4531#4513#4514|17#4532#4515#4516|18#4533#4517#4518|18#4534#4519#4520|
设置宝箱物品表:data\cfg_box.xls
IDX:从1-99
BOXname:宝箱名称
ITEModds:可得到物品
(物品#数量#几率|物品#数量#几率) 数字越大几率越低
ITEMhit:中间默认一格
(物品#数量#几率|物品#数量#几率) 数字越大几率越低
Nohit:不可以得到的物品
(物品#数量#几率|物品#数量#几率) 数字越大几率越低
宝箱增加获得物品时触发Q-Function中的@GetBoxsItemX脚本段,其中X表示当前宝箱的Shape值,
当前获得的物品名称放在人物的S0变量中,重摇箱子次数在N0中
禁止开启宝箱:NOTALLOWOPENBOX (0或为空,1) 0=默认开启 1=不允许开启
例如我们在物品数据中添加一个叫做经验500000的物品,
打开檀木宝箱获得此物品时自动增加50W经验值,那么编写如下脚本:
开启箱子获得物品触发:
[@GetBoxsItem15]
#IF
EQUAL
S0 经验500000
#ACT
Take
经验500000
ChangeExp
+ 500000
SENDMSG
6 你获得了物品:<$STR(S0)>
Break
摇箱子触发:
[@CanReOpenBox15]
#IF
CHECKITEM
金条 1
#ACT
SendMsg
5 当前宝箱剩余可摇次数为[<$BOXCANREOPENCOUNT>]次
BREAK
#ELSEACT
NOTALLOWOPENBOX
1
SENDMSG
5 你没有金条禁止摇箱子
BREAK
功能: 使用脚本命令开宝箱
格式: OpenDragonBox 编号(1--99) 次数(不读数据表次数,只认这里的次数)
;例子:
脚本开启10次宝箱.
[@开启宝箱]
#IF
CheckGold
10000
#ACT
OpenDragonBox
15 10
Take
金币 10000
#ELSESAY
没钱还想开宝箱