0

焦点头条

官方内置宏语法攻略

2014-02-23 07:56| 查看: 7491 |作者: 小雪+陈雨





关于减少宏的字数:
1.使用函数封装,最常用的就是N=GetClientPlayer()
比较复杂的如:
function use(id) A,B,C=N.GetSkillCDProgress(id,N.GetSkillLevel(id)) if C==0 then OnUseSkill(id,N.GetSkillLevel(id)) end end
再复杂的就是上面的那几个函数了

2.合理运用判断语句以简化语句,如上面的
if c==0 then
if GetItemNameByItem(wq)=="长恨" then OnUseSkill(52,2)
else Equip("长恨")
end
else 
Equip("九霄双剑")
end
如果c==0,如果武器名字等于长恨然后使用回春妙手,这里的else是除了以上情况以外,也就是说如果不是长恨,就使用技能。
如果c不等于0,就装备九霄双剑。
if c==0 and GetItemNameByItem(wq)~="长恨" then Equip("长恨") end
if c==0 and GetItemNameByItem(wq)=="长恨" then OnUseSkill(52,2) end
if c~=0 then Equip("九霄双剑") end
虽然都是达到一样的效果,但是后者比前者要多上50多个字符,金山宏限制1024字符,50个字符是很多的= =

3./script的省略
其实一个宏只需要在开头写上一个/script就可以了。
例如:
/script N=GetClientPlayer()
/script H=N.bOnHorse
/script function say1()N.Talk(PLAYER_TALK_CHANNEL.NEARBY,"",{{type="text",text ="我有一头小毛驴,但我从来也不骑"}}) end
/script function say2() N.Talk(PLAYER_TALK_CHANNEL.NEARBY,"",{{type="text",text ="小毛驴累了"}}) end;
/script if H==true then say2() else say1() end
/script OnUseSkill(605,1)

/script N=GetClientPlayer()
H=N.bOnHorse
function say1()N.Talk(PLAYER_TALK_CHANNEL.NEARBY,"",{{type="text",text ="我有一头小毛驴,但我从来也不骑"}}) end
function say2() N.Talk(PLAYER_TALK_CHANNEL.NEARBY,"",{{type="text",text ="小毛驴累了"}}) end;
if H==true then say2() else say1() end
OnUseSkill(605,1)
这两个效果是一样的,不过建议新手还是使用每行/script这样看起来比较有条理一些不像后者全部挤在一起。

收藏 分享 邀请

发表评论

关注订阅号"剑网3PVE"
获取第一手剑三资讯


您当前使用的浏览器版本过低,网站部分功能可能失效,请更换合适的浏览器。了解更多