字号:

宏分享及官方宏函数写法基础教程

时间:2010-03-08 15:25 作者:风雨潇潇梦无痕 手机订阅 参与评论(0) 【投稿】
文 章
摘 要
我的宏分享及其宏,函数写法基础教程………………宏插件系列:本人用多玩宏插件,因为写起来方便简单。无脑局针宏:/skill[tnobuff:清心静气]清心静气目标无清心则释放清心/skill[tnobuff:握针]握针目标无握针则释放握针/skill[buff:逐流,tlife0.
我的宏分享及其宏,函数写法基础教程………………
宏插件系列:
本人用 多玩宏插件,因为写起来方便简单。
无脑局针宏:
/skill [tnobuff:清心静气] 清心静气                                目标无清心则释放清心
/skill [tnobuff:握针] 握针                                             目标无握针则释放握针
/skill [buff:逐流,tlife<0.8] 长针                                       逐流buff下,且目标血低于80%释放长针
/skill [buff:水月无间] 长针                                                 自身有水月buff则释放长针
/skill 局针   
/skill [buff:逐流,tlife<0.8] 长针                                    
/skill [tlife<0.4,nobuff:逐流] 水月无间                              目标血低于40%且自身无逐流buff    释放水月
/skill [buff:逐流,tlife<0.8] 长针
/skill [buff:水月无间] 长针                                             水月buff下释放长针

/skill [tnobuff:春泥护花,tnobuff:天地低昂] 春泥护花          目标无春泥,无天地则释放春泥
/skill [tnobuff;毫针] 毫针

本人目前没关门的那个经脉,没写进去,如果有人需要的话,我可以帮写进去……………………

系统内置宏命令集合:

if系列语句教程:
基本结构:if 条件 then 执行语句 end  
扩展结构:if  条件 then 语句 else (if 语句)end
多个条件可以用 and  or  组合起来

喊话宏:
帮会喊话:
/script for i=1,1 do GetClientPlayer().Talk(PLAYER_TALK_CHANNEL.TONG, "", {{type = "text", text = "60月卡收购一个70级的空号,除TC以外的其他职业,无其他要求,便宜甩号的MM我++++++++"}}) end;

for i=1,1 是喊话一次, for i=1,2 是喊话2次
其他频道喊话:(把上面语句中的粉红色部分替换)
Say 近聊
Yell 地图
World 世界
Party 队伍
Team  团队
Battle  战场
Tong  帮会
School  门派
Camp   阵营
Friends   好友
打断当前读条:
/script GetClientPlayer().StopCurrentAction()
一键后跳:
/script OnUseSkill(9007,1)

判断自身BUFF:
/script for _, pB in pairs(GetClientPlayer().GetBuffList()) do
if pB.dwID==BUFF的ID then 执行语句 end
end;

buff的剩余时间:
local N
for _, pB in pairs(GetClientPlayer().GetBuffList()) do
if pB.dwID==BUFF的ID then
N=math.floor(math.floor(nEndFrame - GetLogicFrameCount()) / 16 + 1)
end
end;
剑网3的技能时间计算方法:10s,在游戏系统里面是160

释放技能:
OnUseSkill(技能ID,N.GetSkillLevel(技能等级))

获取目标的读条状态
local bPrePare, dwID, dwLevel, fP = tplayer.GetSkillPrepareState()
系统信息
OutputMessage("MSG_SYS", “你所要显示的内容\n”)
OutputMessage("MSG_ANNOUNCE_RED", “你所要显示的内容\n”)
OutputMessage("MSG_ANNOUNCE_Yellow", “你所要显示的内容\n”)
此3个喊话,只能你自己看到
第一个是在聊天的界面里面 第二个和第三个是在屏幕中央


获取目标的读条状态
local bPrePare, dwID, dwLevel, fP = tplayer.GetSkillPrepareState()

若目标在读条则 bPrePare为true否则为false
获取角色:
GetClientPlayer() --获得玩家自己
GetClientPlayer().GetTarget() --return 目标dwType 目标dwID
GetPlayer(dwID) --获取指定dwID的人物对象,只针对玩家(包括自己)
GetNpc(dwID) --获取指定dwID的NPC对象,只针对NPC
GetTargetHandle(dwType, dwID) --获取指定dwID的对象,包括玩家和NPC
SelectTarget(dwType, dwID) --选择(dwType, dwID)对象为目标

GetClientPlayer().dwID  --人物的ID号
GetClientPlayer().GetTarget()  --获得当前人物的目标

GetClientPlayer().GetBoxSize(dwBagIndex);  --人物的包包大小
GetClientPlayer().GetItem(dwBagIndex, dwX); --获得包包的指定物品
item.nQuality --物品品质
item.bCanStack --是否可以叠加
item.nStackNum  --叠加数量
SellItemToShop(dwBagIndex, dwX, nCount);  --卖物品到商店
ShopPanel.bCanRepair -- 商店是否能修理

GetClientPlayer().CastSkill(nSkillID, nSkillLevel)  --角色发技能
GetRepairAllItemsPrice(ShopPanel.nNpcID, ShopPanel.nShopID)  --修理费用
RepairAllItems(ShopPanel.nNpcID, ShopPanel.nShopID)  --修理所有物品

角色属性:
dwID --人物ID
szName --人物名字
dwSchoolID --门派编号
nLevel --人物等级
dwMapID  所在地图ID
nCurrentLife --当前生命
nMaxLife --最大生命
nCurrentMana --当前内力
nMaxMana --最大内力
nCurrentStamina --当前精力
nMaxStamina --最大精力
bStall --是否在摆摊状态
bFightState --是否在战斗中,true为战斗状态,false为非战斗状态
bOnHorse --是否在马上
nAccumulateValue  纯阳气的个数,半个气为1,也就是0-10之间的数,比如7就是3个半气~


/script PX1,PX2,PX3=N.GetSkillCDProgress(技能ID,N.GetSkillLevel(技能ID));
N.GetSkillLevel(技能ID)  获取技能的等级

申请3个变量PX1,PX2,PX3,然后获得N(你)当前技能编号为355(凭虚)技能的冷却时间,第一个参数PX1我不清楚含义,第二个公共冷却所剩时间,第三个是凭虚技能冷却所剩时间


最后附加典型用法:(来自本版万花谷同僚的帖子)
离经篇
1、水月长针宏
   /script N = GetClientPlayer();
   /script A,B,C=N.GetSkillCDProgress(136,1);
   /script a,b,c=N.GetSkillCDProgress(167,1);
   /script for _, D in pairs(N.GetBuffList()) do
   if (D.dwID==722 or D.dwID==412) then OnUseSkill(142,6)  end
   end;
   /script if (C==0) then OnUseSkill(136,1) end;
  
/script if (C>0 and c==0) then OnUseSkill(167,1) end;
   本宏作用:首先判断是否有逐流BUFF,有就放长针没有就放水月+长针,如果水月在CD中放“冲脉.幽门”+水月+长针,没有点出冲脉幽门的请去掉宏命令中红色部分。
______________________________________________________________________________________________
O(∩_∩)O谢谢
______________________________________________________________________________________________国际惯例:
太极广场 逸雨(已删)
英雄擂 筱梦
感谢MTV   CCAV  芒果台 星空卫视 and so  on

最后感谢花花谷的花花们捧场
加入17173玩家俱乐部,100%领《原神》月卡、《王者荣耀》888点券、《魔兽世界》T恤等周边好礼!
加入方式:微信关注“17173服务号”

最近更新

全球新闻