|
写BUFF脚本,其实很简单。万变不离其中,只需要会一条,自己都可以参照着改
关键字:
1.[@attack] 攻击触发
2.[@magicattack] 魔法攻击触发
3.[@struck] 被攻击触发
4.[@magicstruck] 被魔法攻击触发
5.MOV 变量赋值
6.INC 变量相加
7.DEC 变量相减
8.DIV 变量整除
9.MUL 变量相乘
9.MOVR 变量A到B之间随机值
10.<$str(变量)> 变量显示为值
11.HumanHP - + 加血或者减血(自身) P.XXX M.XXX为多级脚本 为目标减血或加血
12.引擎说明书搜变量→脚本变量大全 用于实现BUFF的功能
13.CHECKCURRTARGETRACE 这个用于是否对人触发 对怪触发
14.以后待补充
↓↓====================↓↓↓=脚本的实现↓↓↓=====================↓↓
先想好自己要写什么BUFF,BUFF写多了没什么有创意的了。。。
例1:现在 单职业用的最多的BUFF
【攻击怪物50%几率秒掉怪物最大生命值20%血量】
思路:
1.攻击
2.几率
3.最大生命值20%
4.是否对人触发,对怪触发?
然后开始写
[@attack]
#if
checkitemw 装备 1 检测是否佩戴此装备
not CHECKCURRTARGETRACE = 0 对人不触发
random 2 Random 1为1/1 2为1/2 3为 1/3 理论上来说。这里也可以用变量MOVR large small来控制几率,偷懒不做介绍
#act
MOV N1 <$ATTACKMONSTER_MAXHP> 赋值N1为怪物最大血量
DIV N1 100 N1除以100
MUL N1 20 N1乘以20
(计算一下N1这时候的值是多少了?)
假设怪物最大血量8000 8000*0.2=1600
N1/100*20 8000/100=80 80*20=1600
M.humanHP - <$str(N1)> 怪物血量减的值为N1
SendCenterMsg 168 255 装备XX的BUFF触发,怪物瞬间掉血20%伤害值为 <$str(N1)>!! 发送的信息文字
sendmsg 6 装备XX的BUFF触发,怪物瞬间掉血20%伤害值为 <$str(N1)>!! 发送的信息文字(聊天框的)
↓↓====================↓↓↓=脚本的实现↓↓↓=====================↓↓
例2:
几率对目标造成250%额外伤害
思路
1.攻击 或者 魔法攻击
2.本次攻击造成的伤害变量 <$PKPOWER>人物的对攻击目标的伤害输出值
3.是否对人也触发
[@attack]
#if
checkitemw 装备 1
random XX
#act
mov N1 <$PKPOWER>
MUL N1 100 变量不支持小数点只支持整数,所以需要计算
DIV N1 40 如果额外伤害为300%,则直接MUL N1 3即可
M.humanHP - <$str(N1)> 怪物血量减的值为N1
SendCenterMsg 168 255 装备XX的BUFF触发,对目标造成250%额外伤害。伤害值为 <$str(N1)>!! 发送的信息文字
sendmsg 6 装备XX的BUFF触发,对目标造成250%额外伤害。伤害值为 <$str(N1)>!! 发送的信息文字(聊天框的)
↓↓====================↓↓↓=脚本的实现↓↓↓=====================↓↓
以下不做解释,看不懂的多分析上面的思路
例3:
攻击怪物会使怪物中剧毒,每秒损失3%最大生命值,效果持续5秒
#IF
checkitemw 装备 1
random XX
#ACT
MOV N1 <$ATTACKMONSTER_maHP>
DIV N1 100
MUL N1 3
M.MAKEPOSION 1 5 <$STR(N1)>
SendCenterMsg XXXXXXXXXXXX
sendmsg 6 XXXXXXXXXXXXXX
例3:
全屏火焰,全屏冰霜,全屏龙卷风?攻击怪物使7*7范围内敌人受到最大生命值20%的伤害
#if
random 20
#act
MOV N31 <$ATTACKMONSTER_MAXHP>
DIV N31 100
MUL N31 20
AreaDamage <$X> <$y> 7 <$STR(N31)> 2 4 【这里需要配合插件我用的只如初见】
PLAYEFFECT 14 3591 42 1 50
SendCenterMsg 253 0 暗影:天色突然变暗,暗雨降临给予大范围敌人20%固定伤害.! 0 5
break这里有个问题就是周围怪物掉血的血量是按你所攻击的怪物血量算的
|
|