- 鐵幣
- 217 元
- 文章
- 76 篇
- 聲望
- 17 枚
- 上次登入
- 06-4-16
- 精華
- 0
- 註冊時間
- 05-1-26
- UID
- 95031
|
這是小弟這幾天 參考巴哈板上的各位大大 再加入小弟自己的心血所結合而成的
在此感謝各位大大的心血,讓小弟有很多的啟發~~
巨集增強ui
使用之前 請先安裝此UI
這個UI裡面 增加了以下Function
--Printf
印出訊息 此乃復製ericsg大大的
用法:Printf(你要印出的,可以是文字,數字,function)
--C
施法函數
用法:C("技能中文名稱(等級 ?)")
?=你想要的等級,()內也可以不填入等級,這樣系統會自動使用最高級別
--Hp
HP百分比
用法:Hp("target"或"player")
target=你目前所指定的對象
player=自己
party1~4=隊友
--HpLest
剩餘HP
用法同Hp
--Target
選擇目標
用法:Target()
說明:當目標為敵方人物或無目標會自動指定自己
--CKBuff
buff判斷
用法1:CKBuff("狀態中文名稱",0或1)
說明0=判斷增益 1=負義
用法2:CKBuff("種類",2) 如魔法 疾病 中毒等等
--CKBuffC
判斷buff施放技能
用法:CKBuffC("狀態中文名稱",0或1或2,"技能1","技能2")
說明:技能1=當有此技能時施放 技能2=沒有此技能時施放 如果技能1或2不想施放 請打""
牧師巨集:因為小弟玩牧師 所以擺上小弟用的巨集 順便當例子給各位大大看~
使用恢復 當身上有恢復時 不使用技能
/script Target();CKBuffC("恢復",0,"","恢復()");TargetLastEnemy();
依據寫量的多寡 自動選擇治療術等級
/script Target();
/script t="target";if HpLest(t)>=302 then C("治療術()");else if HpLest(t)>=143 then C("次級治療術(等級 3)");else if HpLest(t)>=76 then C("次級治療術(等級 2)");else if HpLest(t)>=47 then C("次級治療術(等級 1)");end;end;end;end;
/script TargetLastEnemy();
按第一下使用 痛 再第二下 使用魔仗射擊 當目標沒有痛且剩餘血量大於5% 這時按一下會再使用痛
/script if UnitHealth("target")<=5 then CKBuffC("暗言術:痛",1,"射擊","射擊");else CKBuffC("暗言術:痛",1,"射擊","暗言術:痛()");end;
使用盾 當有虛弱靈魂狀態時 不使用技能
/script Target();CKBuffC("虛弱靈魂",1,"","真言術:盾()");TargetLastEnemy();
根據所中的種類 來解除狀態
/script Target();if CKBuff("魔法",2)==0 then CKBuffC("疾病",2,"祛病術","");else CKBuffC("魔法",2,"驅散魔法","");end;TargetLastEnemy();
以上是小弟這幾天的研究心得 還有許多地方不完美 歡迎各位大大指教
有BUG也歡迎大家提出來 會努力改進的
---------------------UI內容----------------------
--Printf
function Printf(msg)
DEFAULT_CHAT_FRAME:AddMessage(msg, 1.0, 0.22, 0);
end
--C
function C(use)
CastSpellByName(use)
end
--Hp
function Hp(char)
return UnitHealth(char)/UnitHealthMax(char)*100;
end
--HpLest
function HpLest(char)
return UnitHealthMax(char)-UnitHealth(char);
end
--Target
function Target()
if UnitIsFriend("player","target")~=1 then
TargetUnit("Player")
end
end
--CKBuff
function CKBuff(st,type)
if (type == 0) then
for i=1,16 do
UnitBuff("target",i);GameTooltip:SetUnitBuff("target",i);if GameTooltipTextLeft1:GetText()==st then
return 1
end
end
return 0
end
if (type == 1) then
for i=1,16 do
UnitDebuff("target",i);GameTooltip:SetUnitDebuff("target",i);if GameTooltipTextLeft1:GetText()==st then
return 1
end
end
return 0
end
if (type == 2) then
for i=1,16 do
UnitDebuff("target",i);GameTooltip:SetUnitDebuff("target",i);if GameTooltipTextRight1:GetText()==st then
return 1
end
end
return 0
end
end
--CKBuffC
function CKBuffC(st,type,use1,use2)
if CKBuff(st,type)==1 then
CastSpellByName(use1)
else
CastSpellByName(use2)
end
end |
|