diff --git a/FreshShit/AchievementSniffer/event.lua b/FreshShit/AchievementSniffer/event.lua index 204020f..972e439 100644 --- a/FreshShit/AchievementSniffer/event.lua +++ b/FreshShit/AchievementSniffer/event.lua @@ -1,4 +1,5 @@ --- PLAYER_TARGET_CHANGED -function(allstates) - aura_env.TryInspect() -end \ No newline at end of file +--- Deprecated in favor of Heimdall.AchievementSniffer +--function(allstates) +-- aura_env.TryInspect() +--end \ No newline at end of file diff --git a/FreshShit/AchievementSniffer/event2.lua b/FreshShit/AchievementSniffer/event2.lua index 58fbf78..f30f938 100644 --- a/FreshShit/AchievementSniffer/event2.lua +++ b/FreshShit/AchievementSniffer/event2.lua @@ -1,15 +1,16 @@ --- INSPECT_ACHIEVEMENT_READY -function() - local targetGuid = UnitGUID("target") - if not targetGuid then return end - if not string.match(targetGuid, "Player") then return end - local targetName = UnitName("target") - - local should = false - if not WeakAurasSaved.Cyka.AchievementSniffer[targetName] then should = true end - if WeakAurasSaved.Cyka.AchievementSniffer2[targetName] then should = false end - if aura_env.config.rescan then should = true end - if not should then return end - - aura_env.Scan(targetName) -end \ No newline at end of file +--- Deprecated in favor of Heimdall.AchievementSniffer +--function() +-- local targetGuid = UnitGUID("target") +-- if not targetGuid then return end +-- if not string.match(targetGuid, "Player") then return end +-- local targetName = UnitName("target") +-- +-- local should = false +-- if not WeakAurasSaved.Cyka.AchievementSniffer[targetName] then should = true end +-- if WeakAurasSaved.Cyka.AchievementSniffer2[targetName] then should = false end +-- if aura_env.config.rescan then should = true end +-- if not should then return end +-- +-- aura_env.Scan(targetName) +--end \ No newline at end of file diff --git a/FreshShit/AchievementSniffer/event4.lua b/FreshShit/AchievementSniffer/event4.lua index 5c0a19a..8bfa7d8 100644 --- a/FreshShit/AchievementSniffer/event4.lua +++ b/FreshShit/AchievementSniffer/event4.lua @@ -5,8 +5,12 @@ function(allstates) if UnitIsPlayer(unit) then local name = UnitName(unit) local seen = false - if WeakAurasSaved.Cyka.AchievementSniffer[name] then seen = true end - if WeakAurasSaved.Cyka.AchievementSniffer2[name] then seen = true end + if not Heimdall_Achievements then return end + if not Heimdall_Achievements.players then return end + if not Heimdall_Achievements.alreadySeen then return end + + if Heimdall_Achievements.players[name] then seen = true end + if Heimdall_Achievements.alreadySeen[name] then seen = true end allstates[unit] = { show = true, diff --git a/FreshShit/AchievementSniffer/export b/FreshShit/AchievementSniffer/export index 7c2271a..0b580ed 100644 --- a/FreshShit/AchievementSniffer/export +++ b/FreshShit/AchievementSniffer/export @@ -1 +1 @@ -!DR1cpTTsw4)livjqQL12XpswDB3nfcu6cbeou0vT1KH4jj(IJDw)aiDvZV99CMX2zodjq4E37QvROk1FEMZ7hEg7jWmyqGFEGV1(MU73kWFwGFi(p4UtYsFiW)WZVUFG)TPzH8SpYgDxyw68a)pgh9JFWYcxoCqAACreCRhpF84CErqFJa)fkxpjlkCWI58a)lpSMrhKgNMbYOVjoL(wIFBj(1gVzrGFzoVBYOPPzxWZUkjQi4Jb(SrfrPj5cvUGLvaxaZmchvC1y4Y8PIRburw0Kj8SCPCg0Cd8Yq(TLJhlvRp170lo6QtHXfqwzgZceWCEC8jH5soNxEl)EEsHpqv0Jb(3Cqx)b34pO7LaZkrfWFEmBbW8MPErgxmv)l6DkWCX9aHXzXftd8tyZ451AAzYkvRqERrPXLZs8NZgXrT3pJfgvMdUkddHV50OzGqVfu34Ojjb(h0R)GExcZlTGHojHRhuLl5tQCzatJtzIilq)nJIz55idadDeEZzLqCSwJKJQF38OFW1VjC7BRsluJQMIOQPiQAkIQg77GtMLenJvWXWz(iwCL1L(WktvMIGQM8QEHtGWI))SKLXxo8OY44LdVEAeWd)mH1jdJHlaFA0iiRTCEnP(OcdkIFSWD13bLViPkncJg1EnaWZsyXFbsxeoplxq9sHmm)K0emPiB0P8KjqKRFlxdm8KazGjfhbPKGn7Fz3dp5k)AXEsIi5VXwQRgSHu0miWdzIScMycfPJUVwOEgTWOBeua2D00iiJzgMYLenEmp7ymZSau9ZNxSkIIfxxhfI6vJTDekcPpX)Gl71dkFlrE(PoMXrfFj070sHbmoAIKjmsDMF)UN17It7oOhMBickw1Hnunvk(QQyKUOqOUbNWnYBMZbraLpadNXIs2(z3ueVDZxuRKegP4uY5XJRcWdo)cH6kkUGscC2n9dsllIJqMF(vdo9K(9evDptgSOVuyuowPpG)iaEtIsVoBJnKDnQmViDgsXvZdXC)6Mbqanf9QJKHq)Ua(f6Y5hMEJKFyfu1v(V7DV7VlkzxoeBFDdp5(LFgV54iEm0KMTkDcMsb72y(VKuo7wE2BxomhA(Km5dec8hXswoCCzYUY2A9HuQ)A9u3Jm1bzlG8DOjsHKayu54vk01C2DDbLk3NDppKq6blUJvRosw)2na1v2p8bukrJxomjTqxg7xX3P8Knm07xo8F9ZLd5jHppt2)P1HpdFx7S)dikRxNSSOcBCki97E79lhgbSyolklF3TKr7TCyyk4Ghk)dv7TJYVE33R05gIR)7vWaWksIIxXcH5i(z5NRtV3NMsJg(kcmDERkOLcYYwDmhdxcYtfzQsNJLTcY1Unb1rf5ysqoeKQeCDniicDU0zsKNlrEEe68CjicDTjZSTLkQJQ888urDCu5shpBcI4Rnmvj00Y1LejC0GEuyBcKyjwgetXY0w1wSGLfPaTTj6pavP12LelT7ysHe1WUdji5ytINaKKa5rYeC8CiUy6KDTPHFpsEka9OqAKSLQA41Ielbylku1a9SBrc1Di5YT7y1HajMaaDjqxnOhfszLhvqE0rBBqHMuivnigyhAwxhJwK8vZwQ02XUdHwArVPHHthk2JITiwHPbnkAA4quCetlqC6OJPY31ud7OHPLug0gfiMQFUEwuCBDSTgwJ(2u73TJg9e3jIP07zq1xpBnSJJgwBCxk)90ShpTgqEDOXJ2gAyZ2AyQ912sB(A8VthI)Y00sh7QH90WTPyszpI1MVRg)BRrpn(yAsTFtltk9wwAJtJxMTAPH1SxBA8Z02JQ)oKhWcyA9KPRPHg2KI18hA5)aUTgwJ)UA83JQ)EA6RxBpnmLFA5taMA)DO1daULg2wd7OH15NNgUTgMOFWd(m0WMA42umDXrwgwA0tZFbSg9T0MpTEeW2uCBn51MYFtJwumn)WYMMpbypnmQF)KS2q1TK8EXUseBPsS1KkcJthXIXDxKnHxCHypoI5IBb(KC5n2Dh5W7ShDTWILWtPuUo9mErzws1cwxRKW9r1iheqKHon5ttlX9jH2aloNVg1ylxw9kPxVaDvMxKvY106TFn)wVaZLA(t5Et0s(Qi2pJNl2052QDcZVEARZ)R7nbURMvCWu(O7obFXpWgUpmcFDoJwfoGTAAQf2vPF97XXNxO4FoiD2CwwuEAcgSxxYK6gBWTfdtNnd2RwZwUR3VRsUTCN5Qz1RMUcR3Y8Iv0(96Dp2WcXgiJahblkuUjYi5Uix7EW02ZOUVh8fX8cEiWUzPjftH)pKTa(DbNjR8oEdoVtsgNUlOc79uMlIk1CEtbL6)qhm(YJw5t30mR0zuZGPkuUD2z5W93VsB3iHO(iTNFrS0X68scNSmu5LEU6g0f81gjixQ77dXMzmiN6ng2HV7ngwYF25TnYI6N3B7ebtFJ0B0qLvMqu5TV8KB0D8ITy(kr03tYC2iL)CZd96Rd(kyvFVwFzpLZKgr0k4)sw5R(ndHKfwoB(wRQ7CruYDGhHTZ3x(5x3x9q(UtRFPHp730q7ZvSHpQHKv3mnke4Br0mEyfL5b(xCA3FT3L3aS74EdU5Gp1T)X9ou)7QO8cmxoCTuS8ZR7X3R5r94WqKOrPKgBLDS6ZTO91Aw3hcAnFrM(wAUY1z5u3BTF4K(GZ6Gb309GpDsVV07SE9hCZL96E4V(craIRzJmz9UhYAooUSQCfFm0XxDYHBX6AK08mRQz1tGLnKGUrJMU7kIH(o7ixCeiL))C5r)3BbmKh(V7kL95Y43Qc41LP36zBA87wun1ddo5G)buL7GFQRr4AWAyWQm(LdxnRxFdGTOSIu4UoVG9F2To1ChIVRRK9Fbw3d(rpGbvEuCoNlx33o3MMgVdUNhTEeR4KIlJfhdRSTGNVN(c7emd2R1qBJNDPBy)sPGXMOqFZcE1cyIw)kYiBHcPEVxAPzvsk5jv)sQFj6ACnADbwNYTLnesiTcQ5VAH8gLsJh)RO2)9TDjvqJGhAeY2SkPPSKj8Wxdjn(x8ITy(nrE8ITy(n(j8Ix3Y14pBG7pQlvKx8NJpLM79kn6NSsYvW6Neis5wtxEH)OS6Zj)7Ajn4xY(3eTjUhpGdjlKF5575dKt7SuOdj0hSydhpI)x(ebeYZzf44C8yKqotmJtXMZ9ECo8468hylE6PKzkpAY0QVNVGuXHvHC2zsNDlR4)mhEguFQoMkG8MfLLLko7lQhTLc(JG1axapvijuey8)4P96FOYqI3KXy2i(36ggc2Y3A609TlsFGNjU8mEye7BY7I)60c9UpYRpdjINcPC8j(45dgC(zb()gK6fng8vN27ObVIdTs1jpj)07ooVLZSZMYWdS08PYZ(YgpUkpi1gBdLZPIVC5vqOO4PNIMhsZcVoJnpW)6MR0pTmv7gs6qtNmjg()74lAymM0mc0bXA4yty4l8GfNXzHlGYC4UjyNbzrw(FtKiCisXhL7UiW)Yg(mMbXymiwziwR5CQivh5cGuwQbEgHUVAbayOGNG44sE1Xpr2IAfdKJjqh5y0212STTHLRNNLNrW4354QCkwuoDDZZsNZZkwuFKxku2LZRrNmEbDsEkAoY1Y01RvlxJwwEwW1vA22Otf0twi00Ae0BKFJArTyw3dSX2c5uW)( \ No newline at end of file +!nZxEZXXXvE(DHr4iSIqIB3noAGng7DXjjioimAqsBllqMDxz3DY6iBwhnqHnmcarrjnHeffT0o2RSTKOSLT3WJMbKeGeeGa8pWxGgFh2zxpFl23rMv3vZdbUZSrmbTGRS6kZ6LV7xM)YALIRS8kvIwPsPZwC4ZoWkv8xPId()G7kcRnNmOrCZvwyGHlSsLQ6qhz44IAUoH6wRuzCp16RlcD24AlR1EXk4wRDX61JKXRSa84P9CDJqLZYPTKRuzPjTd0eApDi8EwOi(iluI(7a0FheVz8kvsIKJfuRPoCrz4LcuXRmoqv1Iv6GiISJfHXWfWtQWFLUQoCzut6AOvCOQrdzye)Ewo7g4LoYQj1RZK15NAUfN(sZb)o1uKekkbVGwspVzCI4rokPQSTmiUc0l1ARu5QtmwLLVALLhBjyWsqcOslprkm4vce(stVOUaVaPWd4KzdYIHsAqQS4uZnhnxd6sAXmXxt7L4huPLOMePEysglddeExgMqapa4zdt8O5u(WlVkq2EQgbRuzIPwy5PwI4p0aIsa49UKSHHZbJTNwqczO7xTMNikc7pmFRH30pbeNwwi)R9F3i16Y(VjC7QgTJEfUfjHBrs4wKeUfo7q4dlcu(IyjkvJQj84jPGf4AfY1SZewJbjr(QPCAasPk3irek34AtN45TX1UstfmwvcPzjlvDsbbHQwJqDslBxRGe(cOWvdkpvc0bslLG80EuRm6c8t4aAe4dCv(MrYA6aqXagbFHk40)0zQNNUNh50S8hO4qDmtKOanu4OsIG7xOaQPeauDq80G1bW3RS0ytoZLQyNYZeq2HfTTTgMdcIFfyTF(rl6PIVSt55saYsxRTv)QCHbWrhFMXQ1ubkU(O(FGQEDz45GjtiONdMuIybn8Oz(vuoOhJHSsYPXNHfhvMyPPMAb06kg(Hl2kUR6imbQRAWxdIRvxPYKx8klGt5v7Q)7r654qJShvpDxKZlrLfgB(PwCUXwEkKv6v3OmT8fxKEvz(c0jXEkK9FXlT8CZSWuppLz8zquFSUrdqhTIRmf1Yan2a0hsunyIbxVX1enanb4)ZlukCs34A4teib3JSxHO)lK12KypgNDracQSXPUaSKqn8vzgyjw67OIWUVSCnOXpiOh3Qdw4LySuljkw7J94sTCq7lRpiy2Pr18ASmQYyq7VhhQv68DD27K3f(VnrIUZDpzZoh15WopTZ2WF3bVxfHlixCalXWeS9ScHsfeqp(VRZEWJTlma73zB8oxjznLiivq)69GF9(4qFYhaxTpDVFfEvNTPx57EYhdxVhD)F7jFcpsyR5uXXEYOM64S3YbN8rDEYj3QZd6C0jBH9MhVjatMq9nOh7RGB(aKUjQUPQoy0r)W3atQ9OEDepnRadoeyt6qVSequ5if(0Z(No5MD2)KBEYDXwtccC45WlVm4cXfV4sEPRrSHvvR7tJ)csxv8AAFDBAe(Yt2cidKNCWj35Kp0Yz687Pz(rDoaiX9a65do5dmZUDb29E4)Xu3KG6vDvO0x0WmV2fyGBJSlyOFk0AtKbWuLNmOMc0mndfm7Hj6D5bASqFHxknH1GrCa9qtQdDrFu(SSTQmKSrWU)faTDem)peOtGkHRifaqf5a4F7Yd60sGHtCIoFnmBEkQQaKLrEmNQUSQemEdAygsGXdu1ZG)7(4Wt39Fg1YibYHqNVJzwAeSgnW9m3)ljXb98wUbWy)yIp8Uz39BivkKrAz3Fgno73L0wukCfv1A86FUoulcDzPNKLB3f6osoVhqMqxo5w08rMgRZuIocvejvEd1DUgc)e3epsvuegknIHJyrerO7yiOVHMg3N0aWP6DGw8V8xo528WITwQzIiWljMLOFQXsCpqrAxYat5TQieVAzvDtW1ftcCtJn6IGZDpDBw1gKqBtSVpeNBN8(wYEAb4cPUN2Q)ru7dqrbzt(ulDrVAOFKoXdzcIMfePmBRK4Qzu5EDEim1oktL(HKAX(KPWMSznropHg0hISauPYoWZbIHifnVAkdLoq0os8mUokYTo5rTZN35ruh2d8dakbGsfo0B11hb2gNhKigu9Je0iole8jP2601thQBao3TKnW5p0q04S9PaNApJw)DZuspILmZec(AiU8ent8bBifXahlowskaJ5Qsf(qwhSqrvdmuqF7z2MaZDtAcCeypB0txuTUJgsvXL9)mViWraPwjJjsC8J)Fgg1014ofed0uM51Wu)Jz2cksGFJ0ljDePxJeYb94YW1LHUYqsJz8q51R1uyCQhQdjB0ZdrXen1RQzRBpV6AYb3KHPExNyFsxiEmjAeRYor68pGSj05nipFg6Ye1qPbaCCTQi1AhaAFBcEUbhyWdDqM3EWJYj3gua2b(BMhYjsbNrrs2ZXeqenrOsNq8Hz8RQUrcBD9hb50bKh97ym9jhcKBMTr)wgRzm2Zb8ZmlKadt4ZP1UvLnvboYeMp40q7ar5PxZy1cv1u8ReIuTlj93TRZNkQAUSd1ffEcwQpHCnwDAjiOyBTYHDH7jJtIQJ)bB)Z0jGAriWYjHSufak5RZHycAd8CsqaPkMwt4stZz88eTo(RzUfzir(uqUiqv3euamXnjBIDOOhK6f8RBz4bFANhZQl0lnjmuy1LQ00xwZn2HmXUcOWTQG9gmPWpa8VWQlQgq(KkAcCbrRwcwlpaY)3x6iwJvES3FMSRaoh6JBhYRXUN8(SUa4BHYcaPsA0HQSszlFOKhJS93I0p6l0iB)AYMCRUY5U)2SqXqCwiqAH1L00AXMHcpsamDISHiIDW9v9yi)mmEa7AFkhj4knLDlCETUgyMqd8X)JHuhxq3w0kufuZODmfqNsTzgUnh6c8eTnl8DQ1KgO2H(g668IQcxJRL9ilFofOFdg7cDSI(lzxlqWH7sE6rXCwYnv0qohvHYZIzkJyI30QIFfT2rRbcugfZr7vWKNDqnVc8(eX8eiuNJIDcDUOAGmckSiil)SNy9xI8xqddCKyLHGK6JmsLJOO8ySbK))(ME8DyemJR97rHFbDt7u6cjUYQ61szhpG3YAErzId2YANmTduo)yIJUf5gBBZ0x304XfsK4i23oMwk5b42SEXyvtKEqAV(chs2C(J)REPswaOxh8ttoU0q(KCeYzfRkIKMuexxvJ5r6MsHHl)tsyXFN)mQV0tiM7cTFisENChsw9yWV77Ayf)AmOo4W5qmnv8x6CFtg1CqRDZnsFfLE1hqtwmfbAAXmBi(06YGQSlyip4Mr6GgKhXP9en8Hud0ERTolJdeXXC(mldtjxn7qRfyeajRst2l5ixv6PYsiABkFTJGxOXN7KUbQgnJBYR9cfZBB2RbNQPr987GEGK6THj3HwVlWZCl4UBBVZfWajoSTDut6LwjfQPtey9NstBmu12gpsoMitykV10vfCgQsOK4J)o6hw6gSYnivdp(pMLh17rH8(itg03L97dEkUzxJN5tCaBaYogkGXbQaYvXzdidKrSxnWcyBkjskbtkbMDaX1rSFUyfKRqcBpjCDnQftNaQKm36lOyoh2nnuCAatxvGjfTX8uGCrKPIVnvzLTwlmJGnjL5dngrFkXGExInVTP0IqDSEn2GDozBiXGyJRswhJlNIicBjwFENhyMqpklBy8DDlsNJyzxOLUf7lcc)EiMOpXc3bgdqt1qn)zASXeh3KCOFaBj5QBizwX8qSEimfhzDIqOkrWdPhRcmheVw5u3dRcMTFXj7bGmAtkN0TmmLdOyApdEbpHlnG00EembYk1XKMZNrEhO0kzXyylLz(sUmOCqTZ37HdieWbDAqIZjGKIvRBvY5eAPGJ7GQtMc02gvGOz7ZOK0VLj1WFfno7q5DLvFPaxsgwtbUOzQvcYLzYY4f1TsfwvnYNrV5(Ho1OOapJudnvcnUh4ypTTkSHYeEte6LYxQHqrgBerCtRlnS0fGUP3RnD2LePr66EOXDwPHOIYomJIIgekLbGIaRGodiPCAicJ4AlCz7UROaRgoJSRaPLlxv7vN9nN4bHLGaIHR1T8impLmQdI0O4uLI6wbfxf4JTYiSdi)NCUSLjO)9m5jFaL(Ojal6uqh44y82IZxinioyfUMwuW3XaZvFiRXGS1FaJYyfJZwdYn3OT25pb)27zk1KEbZgQtAYj5bvhdXc81CsVKDWJa)673TmbsFdD58emSNrY)eSCcEPgi5OasAfmxzDKiFiyUJrpdtydJrCaxmwwItFbL0k78fZeGSvxeQIGiSZL9GZMez8QEUuzy1eohgkg57I1WzZZgQ13xXHfb9vighNO54qMtGa20hUC6dnX430KIIPadmjFEHgKT1omR7pdu(tXe6j7ONIlXd)qZQQk4AkGSxvoq4aLklg4r0YkyEYXbMrctkIAURJRlfNaEuuDG5Bx9GVHickjCmWdNUTN0VAmh1qK6JRSf2rzq2GmPOHdKcRIfFZQDfXAwhF5K1BWEMR4MgPCKm)p0LwaPk(srdCzNeCsdJdkWXSHIgYu0wd620kvDeLB7wC8swnCjmTELhpQxaK88cfDoOIgseWRB3kvER36T(Vsl6(gxd3hIRkdAVXfWBwxj9CGB2DPyHhjwu1t(3fK4dfh9MBCTOyq9UXpoxh4LNSEsWpKxjYfat5)Z2h9nY9OlhMotaUnaXChGFL)DdbDfPWDmGOIQiAlDY11jsDfwYHh638L0SFI9h)JX3IQ(gxlqh3)74SMXTPm4L8t)OnU2)TF5gxtg48QhKZ(8RH9RyCFHp9)gEvLE9ExLY)YQRH3U7B2EJRHlXClHkm6hEkhO3yJR5Obg814)HK9PRNVT77yO5SoB)3RXaaZIaLx3HGMo0F24cw17ZMxLgN4D7qXHEZEBmqpTknyV)2qfgoxRY92QyV9BOsd2tRHhCKCTgT3wdvmxRHY1Q33WWdxixRC9B48pzU33W5EFLZ1VYdNRvU(nsUNCKs92A0EFFLl3BRrhQ3rz0YdMRvoEDHI92XILgE4CsIH6Rz58nhjxZCZKsfYnvkvCWENlLkvOxw5GdMJ(HM923bhoNSCWrlMVzoYyWrZjKgAWCYtOzofOY50egQ8q5yX5F4HhmV4VCo9uOz58nZljhOxYO8a5KLqZbY3S3jy5bhiNOE0C6YJmAPrZ1m3uaAoCUMd3xZY5BMFOkN)fvo)VosH8nlMVzEYi3eC08ADJwyGC6RfhO3(o6GJMRV5n6lwOWqJMVD58TlLBwuSqEPyXcdLJWX25nqgA0(BN)9pCX(ApuFTZBsviVJcSDE6B4YLY3EK(BpyFT7R)JKF(p8O91)CStSD((xUqE6T8G91EOH6RDF)(W5h)Y9nFk3NdOYJMxEmsH(AxCK(ANF(nsP(E((g)rhnh)QyXs93E4(AxUV2JKVDoZESDFp)W9n(J0x)ZlFkwm)8VyPI57FPs9975LxfhyG(A338DW8YVIdwop9puUaSq782tfhUyH(AxmF7(4h9P)dThPV29n(d334xop9xUp6T8iL7RD(XRp9jOD(5)O5ThG2d0x7b7R9q91U)XRCFThPV25OpiWxH(AxSV2JKVD(KJkvOuF9pV(l0UV(pqFpFE7rO9G5BpsFVVrYp(flmq(251pknyE9jOD5(AJ03VmxUH9wsYpIQkHaSavAIPJE6AcpS6IWgY4fPACONfrdYmr8n(HNH)5Z8g5ZfMsHpFp580dLXjHbMewFHVjSoQS3d2i37O)(e1uNG1jHZbHxK8fqgNY0Q7(2TjO37GhhMi7JQp958x67zWzk)5h9mPfdKNZY4J50tD003(yVi(F)Cty07vRyIMYAUZG4JtulEsfcgQADfhqPMf7tS3B)FX14urg3d)zcTFlrOkshGc7xKYuVf2GLfdpUW3c(hwvHR3ThDBUY8E1Q7(49m0Ns9IU99DSvpMneubKkGriuoCrKkUkYxyny9vZy)8EGx4jJLoWW5RdIBc))oIu4VPsbB5DUxcZBMG66FiqcVXZp4KuXoYVmHI9FidgHLvxE6l7jn0mszWJse3zoZgx7SN1qTV0oI0dpF(7OuhT6L5gPsf6DS6xx9LqliOSOUZ0(zbzJVa0P(bfg05T(bfkX)5mVz27kpF(noDVcr)fs)sNOSLjivEZV)hoJ2XlofpFps0FuonNxAp)LV8F613o4THz17yPxXZpY5CeL3c()uyYR9kdHDZjXV1PMupZIQaxCD6pZ7GVvgNt0gvXGIdxj5DzGj0wk9m70CNFdCBe4mBzwA57d)d3yO3J2fL9m7pQRiWTzsqmTmJlhLSoVTNZPwnATBSUzZ6tcvmqfQeN0s5ORMuNw51fu(spExcNZh4N8EixnnkwXlY8s4s8t)SOo8pZE3sBFoUoZ8MmOIml2(506GgbsZgv)RO95BtAvK)qE57tz09mwySQTzt6NxfJByVNWcrIM29GDbzKRUUKNnHGiJEKlEDgcE0gpJikJx)CvKDR7Nr4lwLw6xdzaK7UaJe3vng0G72DJbazWT78eC)VY2m8TZGK1NHyPH63DG30Ez7nXxdJ3Jn7k0VL23PdmaXGa9fc3f7uM2OBg2H3hU3DiGlTLD7YnaNK3Lolg4UhT1S4U5DZU7heD3dW9hMGkdUm9hXWtC5MAgMq)mruGI2aQzBQc0za673r7hbV3E0CJqDandVylE3zMqegRdC5DE9IR6X7NCNFTbUo4owTndiQZRAKg3IGIkkhDaThEjX)w7MGA32Hf1Hw8H05pqBpWdODE6Xg2)FKM47s3Lri3rz7r1dP9X92mBAEPNVWa10Fp0PBss9h0ZgADeUxk8Ep45jBOY2aPBstCcVySv05ra4lAizZcn4Rp0ItP715b0UMGBz4M0UmEeRAr7SxDPSNTRfH9025q1PviUZj3LzVSy7sEWRRPMHluN)aTNwBt7wciJp5VVlmkwu42KrwlqiikbEFAFDpYclwcqpi()qVgBzCj85KSCF7UrowOR0S7s)2tURbUFFSLipVkUQiCTBWBbsyvXQApEB8Mouhfh5YB5hIlUOEathJoV9S2zljaxdRAWpKUECKUf4URlcBO9hfz57XWSaYhGHo5KjbxVp3hMD8CpqL4Pgr2TniHyxItTNDMoHkoul5n5PIguA590hv6OnV9U0EXSVz)AKHsZM29Pm2u491NHibO5ADWEHKO4QGzIdJMpHVYJ3MSfdvTHNt12ypXBAjUjKa74bO7eg8qt2uaPjUorltH72HVI3W0lhlduEqJ2klupar4hsB9LbQJ)SepjdISiGEXnzknBRL2K2Lyckd8uIotiMz0Di4SAIkCbz96m71TgUXEMn3(BPTLChud(KpPZ9Z2GCCyVpPc(agFRD3QzF88UqCTldm7K2mSg78LKJpCd(Eg1VNyevSv6oi6lm7mV1g4bm8xGaBhyroYyGjhdHIo)pYqf7dnk(YiiuajbscImOe5ln47eP4DZC2ZyBBBoqPxmVhEZlc8vHSnCfCpddLPgWw8pZ2XOtugaTCGcpNOEq6m5)5jguerqisxZGpUzLXPPqkTPgeDtr8GN(OEXwi83EaRffo4X4(cYgEm1(V8DF(F7zF5)6923StY7YSgAWSapfr0SrOUOe1kbbINbIwFdPtGOg4MziRLJh9X0(9)E823Y2YGRsxLXR7(MDY9)ob303Lt0a0G30g7E2eFvtss)tJXtkJDNPzW)W7RUV2vcoGJzmynEOoqjUr2tsQfe2rO8zitbi0oOnX5H8tacYrgAWGtCucKeS2OqEebSY3VF85XZNmNR4ETFeb5SpWG60D5DDNHMe7ODjWPoJIjdwFPtkddWNX8Q3BcbOnZXK7jh9vnBhlsO1bnNBWY90ydIhxgmKXcw7UL3uWW96H8(Du8RpHi8mqDaw3Un5WP2C)y4iDDHF1elswmyvotpHWs)(MT6McOnLxOUPIi7lfC8xj8WkEz1(1wZQWHhYGop0ezFhtmeCGFeRtmh4ksWjdmj6yduVeo2CdUjrag1bclkwqB2fIFmYxoIaLJf9IpgIETnJviMq9uAwWUmuUJl4wKDC3q0fTsFlMjcf(eCc2fs1qQTCIUB2n3OzdrJGmpIFiptweCA22I)0401naWYeUgH8abn2SyEvActuV0G1S(qOPXJZqzkM)X2z4r7qop3yfQ6qu8XVNpccehZXc5ZmWdZ46A5qTxvdJTZVHMxSE5HCUWHokd0CyiBIW942mZL8ZkxJXNnbTYhqsHTSaDAsvKByAmNgCDbNDmOihQyFtJR9RAW25cjXGFpiIo8)BGPM0HdaovORGDgC50J)lxpqafMZiFaINczQNeBbah5W6riq453)5vkOMuTHa)cIt9mgQ3gJ07WQcllAE8ozbyyK9yaN151qsOqisgdrMhBSO6roCHetd2Kj3irXQnlPJAYUXhZPnOM7qs3FUeHwgzlop4Gk1xQxLmIVElnNXxaEOKmCcnfO0af2ZJsXq(xUmuxyObjiEIwrCsR8tufJ)zah5nPS0)qqh6UiI255Xm1KrTuHmmqgdYGuzZfKsqHYl4iBQkZLatJad4pG65D5zbiTcmQrJlH5mxJwGQMeC1qOWBS1wRz30nzHMikk1KuERwqMxA4VS7f8SEzpCieuur9lYyMunNjOHYpbms4mXryVf4kYDATyCyNDMSMYdcaaIcJ0aYf7tSO6HTWNmu4sPZzYjxgzGx6Iah3Lr4(K4HIZtxZ1t71dKEnP4d(t6b0PqDFAo1PjvitGbV18q4w7rE6lnLh3TMHVHYOH1)2I8gBpafsVeOU7at9OUmS(1EsWVVbk)eC0WttMbnpQQ6uWoHCN8tbLcg2qGnoDaGqpBmAT7EGXgpbm5sZHLjegYMOYvca9QutSSpcfkuoU2d(ZNtUA2b0TmPlyVpdfsZ575o5pKqOBjkBzkY3SxVEJihUAHwchLVbuHKdsIrJz7111NszyV(TSieCpd8TZGYnNmLBDTBTAm8LGcT1RRnOF(lO1O4JnP29yRhBc1XAxSARqo5z56RZwf)8Mj2t(3xzkwLY(Ym1(9uMFpK84(XMs2m5RD5eh(O0nUOAQhpgluNRDamj8KbIm8XUhvt)HwKxpVoXx7RtY8Mzo5IueLBBZnIap6hyo6HM4mtJytTAiQBW1q7hkUoxCqGXvRn7jkQ89ZN)evHXEKsWMwevol4bakfGDcaIbS4v2iEMQor(1LX4zdMmsJ0(aZIRgPstfAFzcVUpbSxJdOjc1j1ctwZaCvBr5pIur5tntycK9VUnFOJ8aHdyCgWIMJFun4)yR2q7k1a0fWqttTKjEsGC4cqhJwG9itoh7fiJpEVRF8)eLJKciDd0tdwtzYh01SGpZQYkTcshZU(oKx1dPdv2DmX7)ABA5MLYAFU0cBwHy2m0AU8ikz6dTspoZHUl8uMDspNHQKmFC8IWCh29dtErr(TzFTXE2JuW9YYc53qfr(qwVQ7bNJ8DDtYaZKRjz9j4vJQcKRGkYJzxJ1sxVl8IPQa2Yw3X46QvtHkmnlfaM227rpr3tf7FGn5ZqLVi0na4NRMDmk5LvYyrHMY3XO44RGeRDvzPv)b0jH65owb4HJTNmG(hmR8YHC52Gy6r9ALYNVoovgpr1WSCOUjT0uzMvNx5HbJ6nvg8ntpvgaoX1IHyQlJMgmcuPvGdpcKMtLJjlZNYrmd5VJbmJivZqFVU04N(NCJ44wRgSEpw8hrrVXeum5ToMNSwmBrnny050n6AkN(bq1rTcvCUEZbtrLosKBXGqTW9TRBMnlhkUWtWGsm7zo9Xh0ItiuOC0n5cF(PkpMNSeidXSpcy7M14uVNkwAbn)SI1eTuE85CEYe(Cfa2vDJz)PGA5HMZlJjiXKA8Wh62cmPz48c1zfZRHWej1sctw3as6TP6OpGoPP7z9OmDsyO5WIs697BT)W13bYzoWSmcpWitq3EpXE0TnXf5bcpMIqgrbzXlO1k8bCeZZRC1UPgxpQ1nZg6mqtMu7z9zcAMuk8zllkvzu3ZQkD2t2Lcnt2ktd5cQI4vxSsQNKvkwqh0eQVK1AMbk4lkY14TcYeZCQFNXh98fB8S)iAfi3ZcW8ki8HBbMZnzB222fr9B5A)jT)7Z08eyEKRBwxM)mLoaMb2T6E8ZPtv7hsljkFWF(y8TXXKBO51v4NPJRAo0UP10(2tVJYCpygSQu6AyUOzY9rqOZlpmR(TOWBvTXp(8G)6mDg6WnaCY7tf0VJ1lWSqA3cCz)TY)UoPWd(N0bnYYSvwpn7yrClEDpnPhINh4N2D1TOZu09T37Ncr9uEM3gN)14Qgr1G0VC7Q19q64gVPvPKoCFp1C6P2NY3WyHrzpTdXeVfYeY0uzl5zPcCDwJpl3D(Je9WkUuzX4rlG1JoVesAIpWJZLutI7odE9F7t(R)T)0w)R)6)P)L)(B))5V8rMQnImNq4T658aTEIV)X)JzlBgOFLYEyMhQrlnvA8x101UWn0bsjB5zwqxl2mQDJJVpTYXmw9d11AkH4jTv8XqOLmWSTg2vyNCSMf0a3Q1gbISK2Tho4hyke(z2tSpKyTmGx20lKqlBV9y1IlcaTfgBZRpw940Azvx87j)5y2231ik(mo9l6SIVpjw2Mxn0fb3X6vdyQDk80BDFOAHJVxGD9bQl4dWYmv9HksQXUX98UXnmyXVLSNZ)0Tip6wVUFlgCIoR)qkySOCmWK2Gr)ROWpai2JdPzvZQGhp7BW(OWtzk)AgdtJ0vfj6MicDCSoY6zbZ9YYZWJ3J9utIN9mFiI0X)1SfobJW(mBc6DxUkIB2ZAbnBlPX1FBThNHgLj6M8(4KTYchqA8yncFe7RfSgBWCZ5swZKAtLMYuOke7E(mBsvTP8yAXJ2XCUW3ZUdbCjHGJuQ0DwY4lnRx6IqsqqbOqMZE8QRaLB6B)Oqajb2wVEG5KRpEOYECcXyk0z16z8c5qReSzLE)FV9o)V277ShVeNSJBPNmjYX8TwyUJ3Rne7Jx0xWmt3Gp(LPH6yZh7JfKGJvxZsbZlLTrKSGiPrZ40wIvTLRTN5y0YfcifRAx9xoqKDXiMc)E3a5Fzo(4MZmhD0)5akGcQ19bEOGUjVIJwH40YaU4UzbMxvP5mHWRZgTC3y(HpLfZR3YSEnZd1fZxDfA5hnBSYDn(M2Hpat2tsv1KWaZ6cGRJjKnsd(tjXLKnCGeYj)PVwF7R4pPn2tCYR8lB1P6dyLzOUmuMcEepIwPspapiskzuUCgiqR3zqeEL70USX1wEMjMDQLUAPcf24czqHbYfe8JdofFJ(HXcnyfEZnU2GfELavb)OCXVy8RTde8owAGRH6fJ)KCagd79B89befZBk45Gcg37VV(LXA6dsyViIJWi15LkFhGZC1XYFkGE5qw71BOoR5Jv0)EoKMVisvO56RXW(QFHVsY)TdYbGnlx(fG(St)q3Z04)3h(x(VKPU)2OQZ7CArVd4WF1Sx(PbqoqKRgsNxNUKPCJxCkE(mZo8ItXZNX)WlE9qgK8vA18Vvwkzu()F4P5n8FnN0phOLEETlRbgPsIGAY4ih8m31zR1lS9ZohYRsmFZWEPFqdZ)rr8f9ru8f81me)oMDDYXEB6ZTxk)DhRTCz(XMxd1(UWBvSa)Th7f8DoCvDOZvcfTWm5Sx5iJeX4Nopj(Htl3NhV6AmO1uR1cbTacKJN7lGytjTNG03rnQRue1CFxeXDsj(FF(WiI0J5tpi8(8v036LQ5)CfglxdMnWfqe0ahILuz85MAHj75NimUwhYn7xmMd(rl4xKb0SFXI6vLH0LZlDuIFbFx8VdnaMBWAs7hNps0373QZRdQbkOIPkZn10l)A8na8v9r(ZRvt(RcO5dAhYNPp3GrZ5EUObgYFE437(H)Z(j1JtKPVpSG1ELFojlAuWQbk9YRMtni3hkqolOAiuH7nDi8f02K4c(bdeYjVsB6todpYS1D3bG)nQ10dvyKHhS4idwO0WLlxQCHvQ)wdnCpeypFmtBfQBjdJtTZgwXaE0xtAQW3dnXmOPhUuXHlpWadxyGsLlbxBOStdnf)FW)Gy29t644xC5LV488TBdZPblHtRv()( \ No newline at end of file diff --git a/FreshShit/DuelerAccepter/event.lua b/FreshShit/DuelerAccepter/event.lua new file mode 100644 index 0000000..87c2f89 --- /dev/null +++ b/FreshShit/DuelerAccepter/event.lua @@ -0,0 +1,10 @@ +--DUEL_REQUESTED +function(e, sender) + if aura_env.whitelist[sender] then + print("Accepting duel from " .. sender) + AcceptDuel() + else + print("Declining duel from " .. sender) + CancelDuel() + end +end diff --git a/FreshShit/DuelerAccepter/init.lua b/FreshShit/DuelerAccepter/init.lua new file mode 100644 index 0000000..3beec3e --- /dev/null +++ b/FreshShit/DuelerAccepter/init.lua @@ -0,0 +1,18 @@ +---@param input string +---@param deliminer string +---@return string[], string|nil +local function StrSplit(input, deliminer) + if not deliminer then return {}, "deliminer is nil" end + if not input then return {}, "input is nil" end + local parts = {} + for part in string.gmatch(input, "([^" .. deliminer .. "]+)") do + table.insert(parts, strtrim(part)) + end + return parts, nil +end + +aura_env.whitelist = {} +local swhitelist = StrSplit(aura_env.config.whitelist, ",") +for _, name in ipairs(swhitelist) do + aura_env.whitelist[name] = true +end diff --git a/FreshShit/WhoSniffer/plan.lua b/FreshShit/WhoSniffer/plan.lua new file mode 100644 index 0000000..0603b69 --- /dev/null +++ b/FreshShit/WhoSniffer/plan.lua @@ -0,0 +1,38 @@ +--Integrate into a channel instead of whispers +--But probably also keep whispers, do both + +--So for channel see +JoinPermanentChannel("foo") +LeaveChannelByName("foo") + +--For existing channels see: +local foo = {GetChannelList()} + +--There is also: +GetChannelName(0) + +--Opa this also works: +ChannelKick("foobar", "Succpotato") +--But kick is actually ban... +--And unban does not actually work... +--Hmm... +--Relog (of the banned) seems to fix it (fix the kick that is) +--But relog does not fix the ban! +ChannelBan("foobar", "Succpotato") +ChannelUnban("foobar", "Succpotato") + +--Mute and unmute both seem to work fine +ChannelMute("foobar", "Succpotato") +ChannelUnmute("foobar", "Succpotato") + +--A player can be owner/moderator only for as long as they are online +--So these commands don't make much sense... +ChannelModerator("foobar", "Succpotato") +ChannelUnmoderator("foobar", "Succpotato") + +--We can also set password!! +--But only by owner and only via chat +--/pass foobar secret + +--Wiki: +--You can only be in ten chat channels at any given time. This does not include other chat types such as say, yell, party, raid, guild, officer, or whisper which are not considered channels. \ No newline at end of file diff --git a/Meta/UnitDebuff.lua b/Meta/UnitDebuff.lua index 1934b45..82a43cc 100644 --- a/Meta/UnitDebuff.lua +++ b/Meta/UnitDebuff.lua @@ -1,8 +1,5 @@ ---@meta ----@param unitId string ----@param index string|number index or name of debuff to query ----@param removable? boolean If 1, only debuffs removable by player will be returned; debuffIndex still begins at 1. ---@return string name The name of the spell or effect of the debuff, or nil if no debuff was found with the specified name or at the specified index. This is the name shown in yellow when you mouse over the icon. ---@return string icon The identifier of (path and filename to) the indicated debuff, or nil if no debuff ---@return number count The number of times the debuff has been applied to the target. Returns 0 for any debuff which doesn't stack. @@ -13,4 +10,9 @@ ---@return boolean isStealable 1 if it is stealable otherwise nil ---@return boolean shouldConsolidate 1 if the buff should be placed in a buff consolidation box (usually long-term effects). ---@return number spellId spell ID of the aura. -UnitDebuff = function(unitId, index, removable) end +---@overload fun(unit: string, index: number) +---@overload fun(unit: string, index: number, filter: string) +---@overload fun(unit: string, name: string) +---@overload fun(unit: string, name: string, rank: string|nil) +---@overload fun(unit: string, name: string, rank: string|nil, filter: auraFilter) +UnitDebuff = function() end diff --git a/Meta/api/CancelUnitBuff.lua b/Meta/api/CancelUnitBuff.lua index 358705c..8888a9f 100644 --- a/Meta/api/CancelUnitBuff.lua +++ b/Meta/api/CancelUnitBuff.lua @@ -1,15 +1,21 @@ ---@diagnostic disable: missing-return, lowercase-global +---@alias auraFilter +---| 'RAID' +---| 'CANCELABLE' +---| 'HARMFUL' +---| 'HELPFUL' +---| 'NOT_CANCELABLE' +---| 'PLAYER' +---| 'RAID' + ---@param unit string ---@param index number ----@param name string ----@param rank string ----@param filter RAID ----@param CANCELABLE ----@param HARMFUL ----@param HELPFUL ----@param NOT_CANCELABLE ----@param PLAYER ----@param RAID ---Cancels a buff on the player. CancelUnitBuff becomes a protected function while under combat lockdown. -function CancelUnitBuff(unit, index, name, rank, filter, CANCELABLE, HARMFUL, HELPFUL, NOT_CANCELABLE, PLAYER, RAID) end \ No newline at end of file +---@overload fun(unit: string, index: number) +---@overload fun(unit: string, index: number, rank: string) +---@overload fun(unit: string, index: number, rank: string, filter: auraFilter) +---@overload fun(unit: string, name: string) +---@overload fun(unit: string, name: string, rank: string) +---@overload fun(unit: string, name: string, rank: string, filter: auraFilter) +function CancelUnitBuff(unit, index, name, rank, filter) end \ No newline at end of file diff --git a/Meta/api/CreateFrame.lua b/Meta/api/CreateFrame.lua index dfe0236..a04cac7 100644 --- a/Meta/api/CreateFrame.lua +++ b/Meta/api/CreateFrame.lua @@ -1,9 +1,7 @@ ---@diagnostic disable: missing-return, lowercase-global ----@param frameType string ----@param name string ----@param parent table ----@param template string ----@return table frame ----Creates a new Frame object -function CreateFrame(frameType, name, parent, template) end \ No newline at end of file +---@overload fun(frameType: string): table +---@overload fun(frameType: string, name: string): table +---@overload fun(frameType: string, name: string, parent: table): table +---@overload fun(frameType: string, name: string, parent: table, template: string): table +function CreateFrame(frameType, name, parent, template) end diff --git a/Meta/api/DoEmote.lua b/Meta/api/DoEmote.lua index bd6ab2a..00f4193 100644 --- a/Meta/api/DoEmote.lua +++ b/Meta/api/DoEmote.lua @@ -1,7 +1,7 @@ ---@diagnostic disable: missing-return, lowercase-global ---@param emote string ----@param target string ----@param hold boolean ---Performs a preset emote (with optional target). The list of built-in emote tokens can be found in global variables whose names follow the format "EMOTE"..num.."_TOKEN", where num is a number between 1 and MAXEMOTEINDEX (a variable local to ChatFrame.lua.) For custom emotes (as performed using the /emote or /me commands in the default UI), see SendChatMessage(). +---@overload fun(emote: string, target: string) +---@overload fun(emote: string, target: string, hold: boolean) function DoEmote(emote, target, hold) end \ No newline at end of file diff --git a/Meta/api/GetItemInfo.lua b/Meta/api/GetItemInfo.lua index 71318d6..263a06f 100644 --- a/Meta/api/GetItemInfo.lua +++ b/Meta/api/GetItemInfo.lua @@ -1,8 +1,6 @@ ---@diagnostic disable: missing-return, lowercase-global ----@param itemID number ----@param itemName string ----@param itemLink string +---@param itemName string ---@return string name ---@return string link ---@return number quality @@ -15,4 +13,6 @@ ---@return string texture ---@return number vendorPrice ---Returns information about an item, by name, link or id. Will only return item information if it is directly available in memory. An item is present in memory if: It has been seen this session, OR It's present in Cache/enUS/Item-sparse.dba, where enUS is the user's locale If item information is not readily available, the client will first look on disk in DBFilesClient/Item-sparse.db2. If an item is found there, the client fires the GET_ITEM_INFO_RECEIVED event and keeps the result in memory for further GetItemInfo requests. If an item is not found on disk either, the client will send a server request for it. If the request fails, nothing happens. If the request succeeds, the client stores the item in memory and writes it to Cache/Locale/Item-sparse.dba. The client will never send more than one server request per id per session. -function GetItemInfo(itemID, itemName, itemLink) end \ No newline at end of file +---@overload fun(itemID: number): table +---@overload fun(itemLink: string): table +function GetItemInfo(itemName) end \ No newline at end of file diff --git a/Meta/api/GetLootInfo.lua b/Meta/api/GetLootInfo.lua index 06abd28..b6285c7 100644 --- a/Meta/api/GetLootInfo.lua +++ b/Meta/api/GetLootInfo.lua @@ -1,4 +1,13 @@ ---@diagnostic disable: missing-return, lowercase-global +---@class LootInfo +---@field isQuestItem boolean? +---@field item string Item name +---@field locked boolean Can loot? +---@field quality number Item quality +---@field quantity number Item quantity +---@field roll boolean +---@field texture number Texture file ID +---@return LootInfo[] function GetLootInfo() end \ No newline at end of file diff --git a/Meta/api/GetLootSlotInfo.lua b/Meta/api/GetLootSlotInfo.lua index ac18863..7f03355 100644 --- a/Meta/api/GetLootSlotInfo.lua +++ b/Meta/api/GetLootSlotInfo.lua @@ -5,6 +5,6 @@ ---@return string item ---@return number quantity ---@return number quality ----@return 1nil locked +---@return number? locked (1 if locked, nil if not) ---Returns information about an item available as loot function GetLootSlotInfo(slot) end \ No newline at end of file diff --git a/Meta/api/GetSpellCooldown.lua b/Meta/api/GetSpellCooldown.lua index 1453a20..5ad87a9 100644 --- a/Meta/api/GetSpellCooldown.lua +++ b/Meta/api/GetSpellCooldown.lua @@ -1,13 +1,15 @@ ---@diagnostic disable: missing-return, lowercase-global +---@alias bookType +---| 'SPELL' +---| 'PET' + ---@param index number ----@param bookType spell ----@param pet ----@param spell ----@param name string ----@param id number +---@param bookType bookType ---@return number start ---@return number duration ---@return number enable ---Returns cooldown information about a spell in the spellbook -function GetSpellCooldown(index, bookType, pet, spell, name, id) end \ No newline at end of file +---@overload fun(name: string) +---@overload fun(id: number) +function GetSpellCooldown(index, bookType) end \ No newline at end of file diff --git a/Meta/api/PromoteToAssistant.lua b/Meta/api/PromoteToAssistant.lua index cc2d2a9..b48770f 100644 --- a/Meta/api/PromoteToAssistant.lua +++ b/Meta/api/PromoteToAssistant.lua @@ -1,7 +1,7 @@ ---@diagnostic disable: missing-return, lowercase-global ---@param unit string ----@param name string ----@param exactMatch boolean ---Promotes a raid member to raid assistant +---@overload fun(name: string, exactMatch: boolean) +---@overload fun(unit: string) function PromoteToAssistant(unit, name, exactMatch) end \ No newline at end of file diff --git a/Meta/api/SendChatMessage.lua b/Meta/api/SendChatMessage.lua index 1217b6a..0e251ea 100644 --- a/Meta/api/SendChatMessage.lua +++ b/Meta/api/SendChatMessage.lua @@ -1,20 +1,22 @@ ---@diagnostic disable: missing-return, lowercase-global +---@alias channel +---| 'CHANNEL' channel +---| 'DND' text +---| 'EMOTE' /e +---| 'GUILD' /g +---| 'INSTANCE_CHAT' /i +---| 'OFFICER' /o +---| 'PARTY' /p +---| 'RAID' /ra +---| 'RAID_WARNING' /rw +---| 'SAY' /s +---| 'WHISPER' channel +---| 'YELL' /y + ---@param text string ----@param chatType /y ----@param CHANNEL channel ----@param DND text ----@param EMOTE /e ----@param GUILD /g ----@param INSTANCE_CHAT /i ----@param OFFICER /o ----@param PARTY /p ----@param RAID /ra ----@param RAID_WARNING /rw ----@param SAY /s ----@param WHISPER channel ----@param YELL /y ----@param languageIndex number ----@param channel string +---@param chatType channel ---Sends a chat message -function SendChatMessage(text, chatType, CHANNEL, DND, EMOTE, GUILD, INSTANCE_CHAT, OFFICER, PARTY, RAID, RAID_WARNING, SAY, WHISPER, YELL, languageIndex, channel) end \ No newline at end of file +---@overload fun(text: string, chatType: channel, languageIndex: number) +---@overload fun(text: string, chatType: channel, languageIndex: number, channel: string) +function SendChatMessage(text, chatType, languageIndex, channel) end \ No newline at end of file diff --git a/Meta/api/UnitClass.lua b/Meta/api/UnitClass.lua index 210e68b..fb16d2b 100644 --- a/Meta/api/UnitClass.lua +++ b/Meta/api/UnitClass.lua @@ -1,9 +1,9 @@ ---@diagnostic disable: missing-return, lowercase-global ---@param unit string ----@param name string ---@return string class ---@return string classFileName ---@return number classIndex ---Returns a unit's class. The second return (classFileName) can be used for locale-independent verification of a unit's class, or to look up class-related data in various global tables: RAID_CLASS_COLORS provides a standard color for each class (as seen in the default who, guild, calendar, and raid UIs) CLASS_ICON_TCOORDS provides coordinates to locate each class' icon within the "Interface\Glues\CharacterCreate\UI-CharacterCreate-Classes" texture For non-player units, the first return (class) will be the unit's name; to always get a localized class name regardless of unit type, use UnitClassBase instead. -function UnitClass(unit, name) end \ No newline at end of file +---@overload fun(name: string) +function UnitClass(unit) end \ No newline at end of file diff --git a/Meta/api/UnitExists.lua b/Meta/api/UnitExists.lua index 87b6baf..d6e7723 100644 --- a/Meta/api/UnitExists.lua +++ b/Meta/api/UnitExists.lua @@ -1,7 +1,7 @@ ---@diagnostic disable: missing-return, lowercase-global ---@param unit string ----@param name string ----@return 1nil exists +---@return boolean exists ---Returns whether a unit exists. A unit "exists" if it can be referenced by the player; e.g. party1 exists if the player is in a party with at least one other member (regardless of whether that member is nearby), target exists if the player has a target, npc exists if the player is currently interacting with an NPC, etc. +---@overload fun(name: string) function UnitExists(unit, name) end \ No newline at end of file diff --git a/Meta/api/UnitIsGroupLeader.lua b/Meta/api/UnitIsGroupLeader.lua index 0a6cb5f..b303ee1 100644 --- a/Meta/api/UnitIsGroupLeader.lua +++ b/Meta/api/UnitIsGroupLeader.lua @@ -1,7 +1,7 @@ ---@diagnostic disable: missing-return, lowercase-global ---@param unit string ----@param name string ----@return bool leader +---@return boolean leader ---Returns whether a unit is the raid leader. +---@overload fun(name: string) function UnitIsGroupLeader(unit, name) end \ No newline at end of file diff --git a/Meta/api/strsplit.lua b/Meta/api/strsplit.lua index f11ef26..0b0e6be 100644 --- a/Meta/api/strsplit.lua +++ b/Meta/api/strsplit.lua @@ -2,7 +2,7 @@ ---@param sep string ---@param text string ----@param limit number +---@param limit number? ---@return string ... ---Splits a string based on another seperator string. Also available as string.split (though not provided by the Lua standard library). function strsplit(sep, text, limit) end \ No newline at end of file diff --git a/Meta/api/strtrim.lua b/Meta/api/strtrim.lua index c168fa8..1f53c94 100644 --- a/Meta/api/strtrim.lua +++ b/Meta/api/strtrim.lua @@ -1,7 +1,7 @@ ---@diagnostic disable: missing-return, lowercase-global ---@param str string ----@param trimChars string ---@return string text ---Trims leading and trailing characters (whitespace by default) from a string. Also available as string.trim (though not provided by the Lua standard library). +---@overload fun(str: string, trimChars: string) function strtrim(str, trimChars) end \ No newline at end of file diff --git a/scratch.lua b/scratch.lua index f9911a5..e8e498d 100644 --- a/scratch.lua +++ b/scratch.lua @@ -1 +1 @@ -print(string.find("10 Gold", "%d+ ((Gold)|(Silver)|(Copper))")) +print(string.gsub("SHIFT-Y", "SHIFT%-", "S"))