Немного оффтопа.
Есть аддон MageNuggets. Этот аддон, помимо всегда прочего, показывает маленькое окошко с магическими статами. Можно ли сделать так, что б оно показывало физ статы? Я вроде как нашел строчки, которые за это отвечают, но не совсем уверен. И не знаю, на что менять.
local MNsp_UpdateInterval = 1.0
function MageNuggetsSP_OnUpdate(self, elapsed)
self.TimeSinceLastUpdate = self.TimeSinceLastUpdate + elapsed;
if (self.TimeSinceLastUpdate > MNsp_UpdateInterval) then
if (ttwFlag == false) then
MNTorment_Frame:Hide();
end
local _, _, _, _, currRank11, _ = GetTalentInfo(1,14); --torment the weak
local spellHit = RoundCrit(GetCombatRatingBonus(8));
local critRating = RoundCrit(GetSpellCritChance(3));
local hasteRating = ((GetCombatRatingBonus(20)/100) + 1);
local misFlag = false;
local faerieFlag = false;
local j = 1;
local jj = 1;
ttwFlag = false;
local buffName3, rank3, _, count3, _, _, _, _, _, _, spellId3 = UnitAura("target", j, "HARMFUL");
while buffName3 do
if (MageNugz.buffmonToggle == true) then
if (currRank11 == 3) or (currRank11 == 2) or (currRank11 == 1) then
if(spellId3 == 31589) or (spellId3 == 55095) or (spellId3 == 45524) or (spellId3 == 12323) or (spellId3 == 18223) then
ttwFlag = true;
MNTorment_Frame:Show();
elseif (spellId3 == 3600) or (spellId3 == 13809) or (spellId3 == 2974) or (spellId3 == 25809) or (spellId3 == 1715) then
ttwFlag = true;
MNTorment_Frame:Show();
elseif (buffName3 == frostboltId) or (buffName3 == conecoldId) or (buffName3 == blastwaveId) or (buffName3 == frostfireId) or (buffName3 == chilledId) then
ttwFlag = true;
MNTorment_Frame:Show();
elseif (buffName3 == judgementjustId) or (buffName3 == infectedwoundsIdthen) or (buffName3 == thunderclapId) or (buffName3 == deadlythrowId) or (buffName3 == frostshockId) or (buffName3 == mindflayId) then
ttwFlag = true;
MNTorment_Frame:Show();
end
end
end
if(spellId3 == 33198) then --misery
spellHit = spellHit + 3.0;
misFlag = true;
elseif (spellId3 == 33197) then
spellHit = spellHit + 2.0;
misFlag = true;
elseif (spellId3 == 33196) then
spellHit = spellHit + 1.0;
misFlag = true;
end
if(spellId3 == 770) then --Faerie Fire
faerieFlag = true;
end
if(spellId3 == 12579) then --winter's chill
if(count3 == 1) then
critRating = critRating + 1.0;
elseif(count3 == 2) then
critRating = critRating + 2.0;
elseif(count3 == 3) then
critRating = critRating + 3.0;
elseif(count3 == 4) then
critRating = critRating + 4.0;
elseif(count3 == 5) then
critRating = critRating + 5.0;
end
end
if(spellId3 == 22959) then --scorch
critRating = critRating + 5.0;
end
if(spellId3 == 17800) then --shadow mastery
critRating = critRating + 5.0;
end
j = j + 1;
buffName3, rank3, _, count3, _, _, _, _, _, _, spellId3 = UnitAura("target", j, "HARMFUL");
end
local buffName2, rank2, _, count2, _, _, _, _, _, _, spellId2 = UnitAura("player", jj, "HELPFUL");
while buffName2 do
if(spellId2 == 28878) then
spellHit = spellHit + 1;
end
if(spellId2 == 6562) then
spellHit = spellHit + 1;
end
if(spellId2 == 10060) then --pushing the limit
hasteRating = (hasteRating*1.20);
end
if(spellId2 == 70753) then --pushing the limit
hasteRating = (hasteRating*1.12);
end
if(spellId2 == 2895) then --wrath of air tot
hasteRating = (hasteRating*1.05);
end
if(spellId2 == 24907) then --Moonkin Aura
hasteRating = (hasteRating*1.03);
end
if(spellId2 == 26297) then --berserking
hasteRating = (hasteRating*1.20);
end
if(spellId2 == 12472) then --icy veins
hasteRating = (hasteRating*1.20);
end
if(spellId2 == 2825) then --bloodlust
hasteRating = (hasteRating*1.30);
end
if(spellId2 == 65980) then --bloodlust argent turny
hasteRating = (hasteRating*1.30);
end
if(spellId2 == 32182) then --heroism
hasteRating = (hasteRating*1.30);
end
if(spellId2 == 65983) then --heroism argent turny
hasteRating = (hasteRating*1.30);
end
if(spellId2 == 16886) then --cfocus
hasteRating = (hasteRating*1.20);
end
jj = jj + 1;
buffName2, rank2, _, count2, _, _, _, _, _, _, spellId2 = UnitAura("player", jj, "HELPFUL");
end
if(misFlag == false) then
if (faerieFlag == true) then
spellHit = spellHit + 3;
if(UnitClass("Player") == 'Druid') then
critRating = critRating + 3.0;
end
end
end
if(UnitClass("Player") == 'Druid') then
local nameD, _, _, _, currRankD, _ = GetTalentInfo(1,11) --cfocus
if(currRankD == 3) then
hasteRating = (hasteRating*1.03)
end
if(currRankD == 2) then
hasteRating = (hasteRating*1.02)
end
if(currRankD == 1) then
hasteRating = (hasteRating*1.01)
end
local namebop, _, _, _, currRankbop, _ = GetTalentInfo(1,17) --Balance of Power
if(currRankbop == 2) then
spellHit = spellHit + 4;
end
if(currRankbop == 1) then
spellHit = spellHit + 2;
end
end
if(UnitClass("Player") == 'Mage') then
local _, _, _, _, currRank7, _ = GetTalentInfo(3,6); --precision
local _, _, _, _, currRank8, _ = GetTalentInfo(1,2); --arcane focus
local _, _, _, _, currRank9, _ = GetTalentInfo(1,22); --arcane power
local _, _, _, _, currRank10, _ = GetTalentInfo(1,28); --netherwind presence
if(currRank7 == 1) then
spellHit = spellHit + 1.0;
end
if(currRank7 == 2) then
spellHit = spellHit + 2.0;
end
if(currRank7 == 3) then
spellHit = spellHit + 3.0;
end
if(currRank9 == 1) then
if(currRank8 == 1) then
spellHit = spellHit + 1.0;
end
if(currRank8 == 2) then
spellHit = spellHit + 2.0;
end
if(currRank8 == 3) then
spellHit = spellHit + 3.0;
end
end
if(currRank10 == 1) then
hasteRating = (hasteRating*1.02);
end
if(currRank10 == 2) then
hasteRating = (hasteRating*1.04);
end
if(currRank10 == 3) then
hasteRating = (hasteRating*1.06);
end
end
if(spellHit >= 17.0) then
spellHit = "capped";
else
spellHit = spellHit.."%";
end
hasteRating = RoundCrit((hasteRating - 1)*100)
abCastTime = RoundThree((2.5)/(1+(hasteRating/100)))
if(MageNugz.abCastTimeToggle == true) then
if(abCastTime < 1) then
MNabCast_FrameText:SetText("|cffFF0000Capped")
else
MNabCast_FrameText:SetText("|cffFFFFFF"..abCastTime)
end
end
MageNugSP_FrameText:SetText("|cffFF0000SP:|cffFFFFFF"..GetSpellBonusDamage(3).."\n|cffFF6600Crit:|cffFFFFFF"..critRating.."%".."\n|cffCC33FFHaste:|cffFFFFFF"..hasteRating.."%".."\n|cffFFFF33 Hit:|cffFFFFFF"..spellHit);
self.TimeSinceLastUpdate = 0;
end
end