I planned on adding the refresh button back. I guess I'll crack the whip at Mikk, see if he can make a good one.
As for the ressurection event mumbojumbo. Do as I said and dep on oRA2. Also you can't guarantee that you will receive the resurrection events. So the best course of action would be to make a proper external oRA2 module out of yours with the CTRACompatlayer mixed in and register the correct checks.
Minor issue, I have my cooldowns window locked, when I log in it's slightly offset:
Unlocking & Relocking returns it to the correct position, but it won't persist on a logout/login:
same thats why i just have it unlocked for now :)
issue with latest revision when enabling:
[2007/07/13 13:55:47-4172-x1]: oRA2\Core.lua:1063: attempt to perform arithmetic on field 'posx' (a nil value)
oRA2\Core.lua:530: in function <Interface\AddOns\oRA2\Core.lua:525>
<in C code>: ?
AceEvent-2.0-40601 (Ace2):269: in function `TriggerEvent'
oRA2\LoadOnDemand.lua:89: in function <Interface\AddOns\oRA2\LoadOnDemand.lua:69>
<in C code>: ?
AceEvent-2.0-40601 (Ace2):269: in function `TriggerEvent'
oRA2\Core.lua:398: in function <Interface\AddOns\oRA2\Core.lua:379>
<in C code>: in function `pcall'
AceDB-2.0-43167 (Ace2):24: in function <Interface\AddOns\Ace2\AceDB-2.0\AceDB-2.0.lua:23>
AceDB-2.0-43167 (Ace2):1821: in function `ToggleActive'
oRA2\Options.lua:188: in function `OnClick'
FuBarPlugin-2.0-40928:935: in function <...\FuBarPlugin-2.0\FuBarPlugin-2.0\FuBarPlugin-2.0.lua:932>
FuBar-33424\FuBar.lua:1120: in function <Interface\AddOns\FuBar\FuBar.lua:1118>
Hi,
yesterday I switched WowAceUpdater from !!!StandAloneLibraries to Automatic Dependancy Mode.
After examining the source, it refers to http://files.wowace.com/latest-noext.xml for which libraries are needed (this file is probably autogenerated via the TOC-files).
oRA2 states in X-Embeds, that it needs "Window-1.0", but the official name is "WindowLib".
Please update the TOC so that Automatic Dependancy Mode works for that library.
Thanks a lot and a big "thumbs up" for your great addons :)
Hi,
yesterday I switched WowAceUpdater from !!!StandAloneLibraries to Automatic Dependancy Mode.
After examining the source, it refers to http://files.wowace.com/latest-noext.xml for which libraries are needed (this file is probably autogenerated via the TOC-files).
oRA2 states in X-Embeds, that it needs "Window-1.0", but the official name is "WindowLib".
Please update the TOC so that Automatic Dependancy Mode works for that library.
Thanks a lot and a big "thumbs up" for your great addons :)
I've been taking a look at the german translations within oRA2.
I found some things that were still missing, or needed to be corrected.
So here's what I got, feel free to add it.
Invite:
L:RegisterTranslations("deDE", function() return {
["Leader/Invite"] = "Anf\195\188hrer/Einladung",
["<oRA> Sorry, the group is full."] = "<oRA2> Sorry, die Gruppe ist voll",
["Inviting: "] = "Einladen von: ",
["Autopromoting: "] = "Autobef\195\182rderung: ",
["Keyword inviting disabled."] = "Einladungen per Schl\195\188sselwort deaktiviert.",
["Invitation keyword set to: "] = "Einladungs-Schl\195\188sselwort gesetzt auf: ",
["To turn off keyword inviting set it to 'off'."] = "Auf 'off' setzen um Schl\195\188sselwort-Einladungen zu deaktivieren",
["<oRA> Raid disbanding on request by: "] = "<oRA2> Schlachtzug wird aufgel\195\182st auf Anforderung von: ",
["Disabling Auto-Promote for: "] = "Autobef\195\182rdung deaktiviert f\195\188r: ",
["Enabling Auto-Promote for: "] = "Autobef\195\182rdung aktiviert f\195\188r: ",
["Autopromoting: "] = "Autobef\195\182rdung: ",
["You have no-one in your Auto-Promote list"] = "Ihr habt niemanden in eurer Autobef\195\182rderungsliste",
["Options for invite."] = "Optionen f\195\188r Schlachtzugs-Einladungen.",
["Autopromote"] = "Autobef\195\182rdung",
["Set/Unset an autopromotion."] = "Autobef\195\182rdung festlegen/l\195\182schen",
["Keyword"] = "Schl\195\188sselwort",
["Set/Unset an invitation keyword."] = "Ein Einladungs-Schl\195\188sselwort festlegen/l\195\182schen",
["Disband"] = "Aufl\195\182sen",
["Disband the raid."] = "Den Schlachtzug aufl\195\182sen",
["List"] = "Auflisten",
["List autopromotions."] = "Autobef\195\182rderungen auflisten",
["Invite Guild"] = "Gilde einladen",
["Invite all characters of the specified level in the guild to raid."] = "Alle Gildenmitglieder mit angegebenen Level in den Schlachtzug einladen.",
["Invite Zone"] = "Zone einladen",
["Invite all characters in guild in your current zone to raid."] = "Alle Charaktere deiner Gilde, die sich in deiner aktuellen Zone/Gebiet befinden, zum Raid einladen.",
["You are not in a guild."] = "Ihr seid in keiner Gilde.",
["All level %d or higher characters will be invited to raid in 10 seconds. Please leave your groups."] = "Alle Charakter der Stufe %d und h\195\182her werden in 10 Sekunden in den Schlachtzug eingeladen. Bitte verlasst eure Gruppen.",
["All characters in %s will be invited to raid in 10 seconds. Please leave your groups."] = "Alle Charaktere in %s werden in 10 Sekunden zum Raid geladen. Bitte verlasst eure Gruppen.",
} end )
CoolDown:
L:RegisterTranslations("deDE", function() return {
["CoolDown Monitor"] = "CoolDown-Monitor",
["Optional/CoolDown"] = "Wahlweise/Cooldown",
["Options for CoolDown."] = "Optionen f\195\188r den CoolDown-Monitor.",
["Toggle"] = "Ein/Ausschalten",
["Toggle the CoolDown Monitor."] = "Den CoolDown-Monitor ein- bzw. ausschalten.",
["Lock"] = "Sperren",
["Lock the CoolDown Monitor."] = "Den CoolDown-Monitor sperren.",
["Size"] = "Gr\195\182\195\159e",
["Change the size of the CoolDown Monitor."] = "Die Gr\195\182\195\159e des CoolDown-Monitors \195\164ndern.",
} end )
7/18 21:17:30-1143-x1]: oRA2_Optional\CoolDown.lua:114: CTRACompatLayer-1.0: The check "CD" has already been registered to the event "oRA_Cooldown" - can't register it to the event "oRA_CoolDown" as well.
<in C code>: ?
AceEvent-2.0-40601 (AutoBar):269: in function `TriggerEvent'
oRA2\Core.lua:405: in function <Interface\AddOns\oRA2\Core.lua:384>
<in C code>: in function `pcall'
AceDB-2.0-43167 (AutoBar):24: in function <...nterface\AddOns\AutoBar\libs\AceDB-2.0\AceDB-2.0.lua:23>
AceDB-2.0-43167 (AutoBar):1821: in function `ToggleActive'
oRA2\LoadOnDemand.lua:109: in function <Interface\AddOns\oRA2\LoadOnDemand.lua:108>
<in C code>: ?
AceEvent-2.0-40601 (AutoBar):269: in function `TriggerEvent'
oRA2\LoadOnDemand.lua:100: in function <Interface\AddOns\oRA2\LoadOnDemand.lua:97>
<in C code>: ?
AceEvent-2.0-40601 (AutoBar):269: in function `TriggerEvent'
AceEvent-2.0-40601 (AutoBar):910: in function <...ce\AddOns\AutoBar\libs\AceEvent-2.0\AceEvent-2.0.lua:903>
---
The lack of shaman reincarnation timers has been bothering me for a while, so today I had a look at why it wasnt working and what it would take to get it working.
It seems that the existing method is to hook into UseSoulstone - but that doesnt seem to be working, so ive borrowed a bunch of code/ideas from AnkhTimerFu, and built up a working Ankh cooldown notifier for oRA.
First, we need to register some new events in OnEnable :
elseif c == "SHAMAN" then
self:RegisterEvent("PLAYER_ALIVE")
self:RegisterEvent("SpecialEvents_BagSlotUpdate")
self.numAnkh = self:GetAnkhs()
end
Then the code to handle these events :
function mod:PLAYER_ALIVE()
self.resTime = GetTime()
end
function mod:SpecialEvents_BagSlotUpdate(bag,slot,itemlink,stack,oldlink,oldstack)
local t = GetTime()
-- check to see if we came to life less than a second ago
if (GetTime() - (self.resTime or 0)) > 1 then
return
end
local id = string.gsub(itemlink, ".*item:(%d+):.*","%1")
if id == "17030" then
local ankh = self:GetAnkhs()
if ankh == self.numAnkh-1 then
local cooldown = 60
for tab = 1, GetNumTalentTabs(), 1 do
for talent = 1, GetNumTalents(tab), 1 do
local name, _, _, _, rank = GetTalentInfo(tab, talent)
if name == BS["Improved Reincarnation"] then
cooldown = cooldown - (rank*10)
break
end
end
end
oRA:SendMessage("CD 2 " .. cooldown )
end
self.numAnkh = ankh
end
end
And a new support function :
function mod:GetAnkhs()
local ankh = 0
for bag = 4,0,-1 do
local size = GetContainerNumSlots(bag)
if size>0 then
for slot=1,size, 1 do
local texture, itemCount = GetContainerItemInfo(bag, slot)
if (itemCount) then
local itemid = string.gsub(GetContainerItemLink(bag, slot), ".*item:(%d+):.*","%1")
if itemid == "17030" then
ankh = ankh + itemCount
end
end
end
end
end
return ankh
end
Basically, what it does, is for shamans it waits to see when you receive the PLAYER_ALIVE event (which isnt triggered if you rez from a ghost) when you receive the event it stores the time.
We also register for bag updates, and if we receive an update within 1 second of the PLAYER_ALIVE event, and our inventory count of Ankh's decreases by one, we assume thats a reincarnation and send the cooldown message.
Ive attached a modified Participant\Participant.lua (based on r44075 of oRA2)
It doesnt seem to catch the event - will try and find out why in 40 mins when my shamans CD is up again.
Ahh... looking at the code :
if newankhs == ankhs - 1 then
local cooldown = 60
for tab = 1, GetNumTalentTabs(), 1 do
for talent = 1, GetNumTalents(tab), 1 do
local name, _, _, _, rank = GetTalentInfo(tab, talent)
if name == BS["Improved Reincarnation"] then
cooldown = cooldown - (rank*10)
break
end
end
if cooldown then break end
oRA:SendMessage("CD 2 " .. cooldown )
end
end
ankhs = newankhs
I think the oRA:SendMessage needs to move up a level - as it stands I dont think it will ever get called, it and the end on the next line need to swap places - so that SendMessage is done when the for tab loop is finished. Im also not convinced by that if cooldown then return end - since cooldown will be set when it gets there (as I said some of this was lifted direct from ankhtimerfu) I guess its original purpose was to stop scanning talents once the cooldown one was found - but since its set at the outside of the loop, it'll be set whenever it gets tehre.
if newankhs == ankhs - 1 then
local cooldown = 60
for tab = 1, GetNumTalentTabs(), 1 do
for talent = 1, GetNumTalents(tab), 1 do
local name, _, _, _, rank = GetTalentInfo(tab, talent)
if name == BS["Improved Reincarnation"] then
cooldown = cooldown - (rank*10)
break
end
end
end
oRA:SendMessage("CD 2 " .. cooldown )
end
ankhs = newankhs
Just been able to test with my suiciding shaman, and the above successfully sent a CD message to the raid.
would it be possible to update oRA2's list of reagents? Currently, it only displays the lvl 60 reagent for druids. Also, could you add in support for multiple reagents per class? I know druids use one for MotW and one for rebirth, pallies use one for DI and blessings, etc.
simle chinese translation,according to the newest version:
Core:
L:RegisterTranslations("zhCN", function() return {
["You have to be Raid Leader or Assistant to do that."] = "只有团队领袖/队长才可以",
["Requested a status update."] = "请求更新状态",
["Request status"] = "获取状态",
["Request a status update"] = "获取状态更新",
["Textures"] = "框体材质",
["Set all statusbar textures."] = "设置所有状态条的材质",
Invite:
L:RegisterTranslations("zhCN", function() return {
["Invite"] = "组团邀请",
["Leader/Invite"] = "组队邀请",
["<oRA> Sorry, the group is full."] = "<oRA>抱歉,团队已满",
["Inviting: "] = "邀请:",
["Autopromoting: "] = "自动提升:",
["Keyword inviting disabled."] = "禁止关键字邀请",
["Invitation keyword set to: "] = "邀请关键字设置为:",
["To turn off keyword inviting set it to 'off'."] = "要关掉关键词邀请的话,选择'关'",
["<oRA> Raid disbanding on request by: "] = "<oRA>解散团队请求:",
["Disabling Auto-Promote for: "] = "禁止自动提升对:",
["Enabling Auto-Promote for: "] = "允许自动提升:",
["Autopromoting: "] = "自动提升:",
["You have no-one in your Auto-Promote list"] = "你的自动提升列表为空",
["Options for invite."] = "邀请助手选项",
["Autopromote"] = "自动提升",
["Set/Unset an autopromotion."] = "设定/取消自动提升",
["<name>"] = "<名字>",
["Keyword"] = "根据关键字邀请",
["Set/Unset an invitation keyword."] = "设定/取消邀请关键字",
["<keyword>"] = "<关键词>",
["Disband"] = "解散团队",
["Disband the raid."] = "解散团队",
["List"] = "提升列表",
["List autopromotions."] = "如果队长掉线了,则会自动提升列表中的玩家为队长",
["Invite Guild"] = "根据等级邀请",
["Invite all characters of the specified level in the guild to raid."] = "邀请公会中所有的特定等级的玩家加入队伍",
["Invite Zone"] = "根据区域邀请",
["Invite all characters in guild in your current zone to raid."] = "邀请你当前区域中的所有公会成员加入团队",
["<level or empty>"] = "<等级或者留空>",
["You are not in a guild."] = "你不在一个公会中",
["All level %d or higher characters will be invited to raid in 10 seconds. Please leave your groups."] = "所有%d级的人物都将在10秒后邀请到团队中。请离开你的当前队伍。",
["All characters in %s will be invited to raid in 10 seconds. Please leave your groups."] = "所有%s区域的人物都将在10秒后被邀请到团队中。请离开你当前队伍。",
["off"] = "关闭",
} end )
Group:
L:RegisterTranslations("zhCN", function() return {
["Group"] = "队伍变更提醒",
["Optional/Group"] = "队伍变更",
["Options for Group."] = "队伍变更提醒选项",
["%s has joined your group."] = "%s加入了团队",
["%s has left your group."] = "%s离开了团队",
["You have joined group %d."] = "你加入了%d 的团队",
["Group Change"] = "小队变更提醒",
["Notify for group change."] = "当你的小队发生变化时通知你。",
["Members Change"] = "队友变更提醒",
["Notify for group members change."] = "当你的队友发生变化时通知你。",
["You are now in group %d."] = "你现在在第%d小队",
["%s has left your group."] = "%s离开了小队",
["%s has joined your group."] = "%s加入了小队",
} end )
MainTank:
L:RegisterTranslations("zhCN", function() return {
["MainTank"] = "MT目标(MTT)",
["Optional/MainTank"] = "MTT设置",
["Options for the maintanks."] = "MTT选项",
["Targettarget"] = "目标的目标",
["Toggle TargetTarget frames."] = "显示框体:目标的目标",
["Scale"] = "大小",
["Set frame scale."] = "设定框体大小",
["Alpha"] = "透明度",
["Set frame alpha."] = "设置框体透明度",
["Raidicon"] = "团队锁定图示",
["Toggle raid icons."] = "显示团队锁定图示",
["Frames"] = "MTT框体设定",
["Options for the maintank frames."] = "MT框体选项",
["Growup"] = "往上增添",
["Toggle growup."] = "选择MTT逐渐往上增添",
["Inverse"] = "翻转",
["Toggle inverse healthbar."] = "选择翻转血条",
["Deficit"] = "损失血量",
["Toggle deficit health."] = "显示损失血量",
["Clickcast"] = "点击施法",
["Toggle clickcast support."] = "选择点击施法支持",
["Clicktarget"] = "点击设定目标",
["Define clicktargets."] = "定义点击设定目标",
["Define the clicktarget for maintank."] = "定义点击MT设定的目标",
["Define the clicktarget for target."] = "定义点击MTT设定的目标",
["Define the clicktarget for targettarget."] = "定义点击MTTT设定的目标",
["Target"] = "目标",
["Maintank"] = "MT",
["TargetTarget"] = "目标的目标",
["Nr of Maintanks shown."] = "显示的MT数量",
["Nr Maintanks"] = "MT数量",
["Classcolor"] = "职业颜色",
["Color healthbars by class."] = "把血条着色为职业颜色",
["Enemycolor"] = "敌人颜色",
["Set the color for enemies. (used when classcolor is enabled)"] = "为敌人设置颜色(需要激活职业颜色)",
["Color Aggro"] = "仇恨颜色",
["Color aggro status for MTs on their names. Orange has target, Green is tanking, Red has no aggro."] = "MT的名字边框用颜色来显示仇恨的状态。橘红是有目标,绿色是正在坦克,红色是没有仇恨",
["Backdrop"] = "背景",
["Toggle the backdrop."] = "显示背景",
["Highlight"] = "高亮",
["Toggle highlighting your target."] = "高亮显示你的目标",
["Reverse"] = "逆转",
["Numbers"] = "数量",
["Toggle showing of MT numbers."] = "显示MT的数量",
["Tooltips"] = "提示",
["Toggle showing of tooltips."] = "选择显示提示",
["Show"] = "显示",
["Show maintank."] = "显示MT",
["Show target."] = "显示目标",
["Show targettarget."] = "显示目标的目标",
["Define which frames you want to see."] = "定义想要看到的框架",
["Layout"] = "布局",
["Set the layout for the MT frames."] = "设置MTT框架的布局",
["Vertical"] = "垂直",
["Horizontal"] = "水平",
MainTank:
L:RegisterTranslations("zhCN", function() return {
["MainTank"] = "MT目标(MTT)",
["Options for the maintanks."] = "MT选项",
["The local maintank list has been refreshed."] = "本地MT名单已刷新",
["Refresh Maintanks"] = "刷新MT",
["Refresh the local maintank list."] = "刷新本地MT名单",
["Participant/MainTank"] = "成员/MT目标",
["Notify deaths"] = "死亡通知",
["Notifies you when a main tank dies."] = "当MT死亡时通知你",
["Tank %s has died!"] = "MT %s 已死亡!",
maintankdies = "^(.+)死亡了.",
} end )
Participant:
L:RegisterTranslations("zhCN", function() return {
["^Corpse of (.+)$"] = "^([^%s]+)的尸体",
} end )
RaidWarn:
L:RegisterTranslations("zhCN", function() return {
["Raidwarning"] = "团队警告",
["Options for raid warning."] = "团队警告选项",
["Participant/RaidWarn"] = "成员/团队警告",
["Bossblock"] = "阻止bossmod预警",
["Block messages from Bossmods."] = "阻止bossmod预警",
} end )
Ready:
L:RegisterTranslations("zhCN", function() return {
["Options for ready checks and votes."] = "就位确认和投票的选项",
["Sound"] = "声音",
["Toggle an audio warning upon a ready check or vote."] = "准备检查或投票时发声",
["Ready"] = "就绪检查",
["Not Ready"] = "未准备好",
["Are you Ready?"] = "准备好了么?",
["Yes"] = "是",
["No"] = "否",
["Ready Check"] = "就位确认",
["check"] = "确认",
["Vote"] = "投票",
["Participant/Ready"] = "成员/就位",
["Closing Vote"] = "关闭投票",
["Closing Check"] = "关闭检查",
} end)
Would it be possible to add combatlog browser or something to ora2?
When someone died in the raid with ora2, other people in the raid can request the log of the last 20 seconds or something and can read it then.
Would be a remote log off from promoted people possible?
Would it be possible to add combatlog browser or something to ora2?
When someone died in the raid with ora2, other people in the raid can request the log of the last 20 seconds or something and can read it then.
Would be a remote log off from promoted people possible?
Talk to Cryect about getting it in Relog instead.
Rollback Post to RevisionRollBack
To post a comment, please login or register a new account.
As for the ressurection event mumbojumbo. Do as I said and dep on oRA2. Also you can't guarantee that you will receive the resurrection events. So the best course of action would be to make a proper external oRA2 module out of yours with the CTRACompatlayer mixed in and register the correct checks.
-Ammo
-Ammo
Unlocking & Relocking returns it to the correct position, but it won't persist on a logout/login:
same thats why i just have it unlocked for now :)
issue with latest revision when enabling:
[2007/07/13 13:55:47-4172-x1]: oRA2\Core.lua:1063: attempt to perform arithmetic on field 'posx' (a nil value)
oRA2\Core.lua:530: in function <Interface\AddOns\oRA2\Core.lua:525>
<in C code>: ?
AceEvent-2.0-40601 (Ace2):269: in function `TriggerEvent'
oRA2\LoadOnDemand.lua:89: in function <Interface\AddOns\oRA2\LoadOnDemand.lua:69>
<in C code>: ?
AceEvent-2.0-40601 (Ace2):269: in function `TriggerEvent'
oRA2\Core.lua:398: in function <Interface\AddOns\oRA2\Core.lua:379>
<in C code>: in function `pcall'
AceDB-2.0-43167 (Ace2):24: in function <Interface\AddOns\Ace2\AceDB-2.0\AceDB-2.0.lua:23>
AceDB-2.0-43167 (Ace2):1821: in function `ToggleActive'
oRA2\Options.lua:188: in function `OnClick'
FuBarPlugin-2.0-40928:935: in function <...\FuBarPlugin-2.0\FuBarPlugin-2.0\FuBarPlugin-2.0.lua:932>
FuBar-33424\FuBar.lua:1120: in function <Interface\AddOns\FuBar\FuBar.lua:1118>
---
yesterday I switched WowAceUpdater from !!!StandAloneLibraries to Automatic Dependancy Mode.
After examining the source, it refers to http://files.wowace.com/latest-noext.xml for which libraries are needed (this file is probably autogenerated via the TOC-files).
oRA2 states in X-Embeds, that it needs "Window-1.0", but the official name is "WindowLib".
Please update the TOC so that Automatic Dependancy Mode works for that library.
Thanks a lot and a big "thumbs up" for your great addons :)
Has been fixed on svn by Kemayo.
-Ammo
I found some things that were still missing, or needed to be corrected.
So here's what I got, feel free to add it.
Invite:
CoolDown:
Based on r43741.
-Ammo
-Ammo
It seems that the existing method is to hook into UseSoulstone - but that doesnt seem to be working, so ive borrowed a bunch of code/ideas from AnkhTimerFu, and built up a working Ankh cooldown notifier for oRA.
First, we need to register some new events in OnEnable :
Then the code to handle these events :
And a new support function :
Basically, what it does, is for shamans it waits to see when you receive the PLAYER_ALIVE event (which isnt triggered if you rez from a ghost) when you receive the event it stores the time.
We also register for bag updates, and if we receive an update within 1 second of the PLAYER_ALIVE event, and our inventory count of Ankh's decreases by one, we assume thats a reincarnation and send the cooldown message.
Ive attached a modified Participant\Participant.lua (based on r44075 of oRA2)
-Ammo
Ahh... looking at the code :
I think the oRA:SendMessage needs to move up a level - as it stands I dont think it will ever get called, it and the end on the next line need to swap places - so that SendMessage is done when the for tab loop is finished. Im also not convinced by that if cooldown then return end - since cooldown will be set when it gets there (as I said some of this was lifted direct from ankhtimerfu) I guess its original purpose was to stop scanning talents once the cooldown one was found - but since its set at the outside of the loop, it'll be set whenever it gets tehre.
Just been able to test with my suiciding shaman, and the above successfully sent a CD message to the raid.
Core:
L:RegisterTranslations("zhCN", function() return {
["You have to be Raid Leader or Assistant to do that."] = "只有团队领袖/队长才可以",
["Requested a status update."] = "请求更新状态",
["Request status"] = "获取状态",
["Request a status update"] = "获取状态更新",
["Textures"] = "框体材质",
["Set all statusbar textures."] = "设置所有状态条的材质",
-- standard draggable window texts
["Toggle"] = "激活",
["Lock"] = "锁定",
["Size"] = "尺寸",
["Transparency"] = "透明度",
} end)
Options:
L:RegisterTranslations("zhCN", function() return {
tablethint = "|cffeda55fCtrl-Alt-点击|r 来关闭oRA.|cffeda55f按住Alt-拖动|r来移动MT,PT和监视器",
tablethint_disabled = "|cffeda55f点击|r来激活。",
["oRA is currently disabled."] = "oRA已关闭。",
["Active boss modules"] = "激活boss模块",
["Hidden"] = "隐藏",
["Shown"] = "显示",
["Minimap"] = "小地图",
["Toggle the minimap button."] = "显示小地图按钮。",
} end)
---------------------------------------------------------------------
-------------------------------Leader--------------------------------
---------------------------------------------------------------------
Durability:
L:RegisterTranslations("zhCN", function() return {
["Durability"] = "装备耐久度检查",
["Leader/Durability"] = "耐久度检查",
["Options for durability checks."] = "耐久度选项",
["Perform durability check"] = "执行耐久度检查",
["Check the raid's durability."] = "检查团队装备耐久度",
["Name"] = "姓名",
["Percent"] = "百分比",
["Broken"] = "已损坏",
["Perc"] = "百分比",
["Close"] = "关闭",
["Refresh"] = "刷新",
} end )
Invite:
L:RegisterTranslations("zhCN", function() return {
["Invite"] = "组团邀请",
["Leader/Invite"] = "组队邀请",
["<oRA> Sorry, the group is full."] = "<oRA>抱歉,团队已满",
["Inviting: "] = "邀请:",
["Autopromoting: "] = "自动提升:",
["Keyword inviting disabled."] = "禁止关键字邀请",
["Invitation keyword set to: "] = "邀请关键字设置为:",
["To turn off keyword inviting set it to 'off'."] = "要关掉关键词邀请的话,选择'关'",
["<oRA> Raid disbanding on request by: "] = "<oRA>解散团队请求:",
["Disabling Auto-Promote for: "] = "禁止自动提升对:",
["Enabling Auto-Promote for: "] = "允许自动提升:",
["Autopromoting: "] = "自动提升:",
["You have no-one in your Auto-Promote list"] = "你的自动提升列表为空",
["Options for invite."] = "邀请助手选项",
["Autopromote"] = "自动提升",
["Set/Unset an autopromotion."] = "设定/取消自动提升",
["<name>"] = "<名字>",
["Keyword"] = "根据关键字邀请",
["Set/Unset an invitation keyword."] = "设定/取消邀请关键字",
["<keyword>"] = "<关键词>",
["Disband"] = "解散团队",
["Disband the raid."] = "解散团队",
["List"] = "提升列表",
["List autopromotions."] = "如果队长掉线了,则会自动提升列表中的玩家为队长",
["Invite Guild"] = "根据等级邀请",
["Invite all characters of the specified level in the guild to raid."] = "邀请公会中所有的特定等级的玩家加入队伍",
["Invite Zone"] = "根据区域邀请",
["Invite all characters in guild in your current zone to raid."] = "邀请你当前区域中的所有公会成员加入团队",
["<level or empty>"] = "<等级或者留空>",
["You are not in a guild."] = "你不在一个公会中",
["All level %d or higher characters will be invited to raid in 10 seconds. Please leave your groups."] = "所有%d级的人物都将在10秒后邀请到团队中。请离开你的当前队伍。",
["All characters in %s will be invited to raid in 10 seconds. Please leave your groups."] = "所有%s区域的人物都将在10秒后被邀请到团队中。请离开你当前队伍。",
["off"] = "关闭",
} end )
Item:
L:RegisterTranslations("zhCN", function() return {
["Options for item checks."] = "物品检查选项",
["Checks Disabled"] = "禁止检查",
["Items"] = "物品检查",
["Reagents"] = "施法材料",
["Close"] = "关闭",
["Refresh"] = "刷新",
["Name"] = "姓名",
["Item"] = "物品",
["Amount"] = "数量",
["Nr"] = "数量",
["Perform item check"] = "进行物品检查",
["Check the raid for an item."] = "对团队进行物品检查",
["<item>"] = "<物品>",
["Perform reagent check"] = "进行施法材料检查",
["Check the raid for reagents."] = "对团队进行施法材料检查",
["Leader/Item"] = "材料检查",
["SacredCandle"] = "神圣蜡烛",
["ArcanePowder"] = "魔粉",
["WildThornroot"] = "野生棘根草",
["Ankh"] = "十字章",
["SymbolofDivinity"] = "神圣符印",
["FlashPowder"] = "闪光粉",
["SoulShard"] = "灵魂碎片",
} end )
Loot:
L:RegisterTranslations("zhCN", function() return {
["Loot"] = "战利品分配",
["Leader/Loot"] = "战利品分配",
["Options for loot."] = "分配方式",
["Method"] = "方式",
["Threshold"] = "物品品质",
["Set the loot method."] = "设定分配方式",
["Set the loot threshold."] = "设定最低分配品质",
["Free for all"] = "自由拾取",
["Round robin"] = "轮流拾取",
["Master looter"] = "队长分配",
["Group loot"] = "队伍分配",
["Need before greed"] = "需求优先",
["<method>"] = "<分配方式>",
["<threshold>"] = "<物品品质>",
} end )
MainTank:
L:RegisterTranslations("zhCN", function() return {
["MainTank"] = "MT目标(MTT)",
["Options for the maintanks."] = "MT目标选项",
["Set Maintank"] = "设定MT",
["Set a maintank."]= "设定MT",
["<nr> <name>"] = "<数量> <名字>",
["<nr>"] = "<数量>",
["<name>"] = "<名字>",
["Remove Maintank"] = "移除MT",
["Remove a maintank."] = "移除MT",
["Removed maintank: "] = "移除MT:",
["Set maintank: "] = "设定MT",
["Leader/MainTank"] = "MT设置",
["Broadcast"] = "广播",
["Broadcast Maintanks"] = "广播MT",
["Send the raid your maintanks."] = "向团队广播MT",
["(%S+)%s*(.*)"] = "(%d+)%s*(.*)",
["Set target on a free mt-slot"] = "设定当前目标为下一个空MT位置",
["Free"] = "空位",
["All"] = "全部",
["Delete all Maintanks"] = "移除所有MT",
["<Not Assigned>"] = "<还未设定>",
} end )
RaidWarn:
L:RegisterTranslations("zhCN", function() return {
["Raidwarning"] = "BOSS警报设置",
["Options for raid warning."] = "BOSS警报设置",
["Leader/RaidWarn"] = "BOSS预警设置",
["Send"] = "发送",
["Send an RS Message."] = "发送RS消息",
["<message>"] = "<消息>",
["To Raid"] = "发送到团队频道",
["Old Style"] = "使用团队助手频道发送",
["Send RS Messages to Raid as well."] = "发送RS信息时也发送到团队助手频道",
["Use CTRA RS Messages instead of RaidWarning."] = "使用CTRA消息取代团队警报",
} end )
Ready:
L:RegisterTranslations("zhCN", function() return {
["Options for ready checks and votes."] = "就位确认与投票设置",
["Ready"] = "就位确认",
["Not Ready"] = "未准备好",
["Are you Ready?"] = "准备好了么?",
["Yes"] = "是",
["No"] = "否",
["Ready Check"] = "就位确认",
["Perform a ready check."] = "进行检查",
["Close"] = "关闭",
["<CTRaid> %s has performed a ready check."] = "<CTRaid>%s正在进行就位检查",
["AFK: "] = "暂离: ",
["Not Ready: "] = "未就绪",
["Yes: %d No: %d AFK: %d"] = "是:%d 否:%d 暂离:%d",
["Vote Results for: "] = "投票结果:",
["<CTRaid> %s has performed a vote: %s"] = "<CTRaid>%s开始一场投票:%s",
["Vote"] = "投票",
["Perform a vote."] = "进行投票",
["<vote>"] = "<投票>",
["Leader/Ready"] = "就位确认",
} end)
Resist:
L:RegisterTranslations("zhCN", function() return {
["Options for resistance checks."] = "抗性助手选项",
["Leader/Resist"] = "抗性检查",
["Name"] = "姓名",
["Fire"] = "火焰",
["Nature"] = "自然",
["Frost"] = "冰霜",
["Shadow"] = "暗影",
["Arcane"] = "奥术",
["Resistance checks disabled."] = "禁止抗性检查",
["Resistances"] = "抗性检查",
["Fr"] = "火",
["Ft"] = "冰",
["N"] = "自",
["A"] = "奥",
["S"] = "暗",
["Refresh"] = "刷新",
["Close"] = "关闭",
["Perform resistance check"] = "进行抗性检查",
["Check the raid's resistances."] = "检查团队抗性",
} end )
---------------------------------------------------------------------
-------------------------------Optional------------------------------
---------------------------------------------------------------------
CoolDown:
L:RegisterTranslations("zhCN", function() return {
["CoolDown Monitor"] = "冷却监视器",
["Optional/CoolDown"] = "冷却监视",
["Options for CoolDown."] = "冷却监视器的选项",
} end )
Group:
L:RegisterTranslations("zhCN", function() return {
["Group"] = "队伍变更提醒",
["Optional/Group"] = "队伍变更",
["Options for Group."] = "队伍变更提醒选项",
["%s has joined your group."] = "%s加入了团队",
["%s has left your group."] = "%s离开了团队",
["You have joined group %d."] = "你加入了%d 的团队",
["Group Change"] = "小队变更提醒",
["Notify for group change."] = "当你的小队发生变化时通知你。",
["Members Change"] = "队友变更提醒",
["Notify for group members change."] = "当你的队友发生变化时通知你。",
["You are now in group %d."] = "你现在在第%d小队",
["%s has left your group."] = "%s离开了小队",
["%s has joined your group."] = "%s加入了小队",
} end )
MainTank:
L:RegisterTranslations("zhCN", function() return {
["MainTank"] = "MT目标(MTT)",
["Optional/MainTank"] = "MTT设置",
["Options for the maintanks."] = "MTT选项",
["Targettarget"] = "目标的目标",
["Toggle TargetTarget frames."] = "显示框体:目标的目标",
["Scale"] = "大小",
["Set frame scale."] = "设定框体大小",
["Alpha"] = "透明度",
["Set frame alpha."] = "设置框体透明度",
["Raidicon"] = "团队锁定图示",
["Toggle raid icons."] = "显示团队锁定图示",
["Frames"] = "MTT框体设定",
["Options for the maintank frames."] = "MT框体选项",
["Growup"] = "往上增添",
["Toggle growup."] = "选择MTT逐渐往上增添",
["Inverse"] = "翻转",
["Toggle inverse healthbar."] = "选择翻转血条",
["Deficit"] = "损失血量",
["Toggle deficit health."] = "显示损失血量",
["Clickcast"] = "点击施法",
["Toggle clickcast support."] = "选择点击施法支持",
["Clicktarget"] = "点击设定目标",
["Define clicktargets."] = "定义点击设定目标",
["Define the clicktarget for maintank."] = "定义点击MT设定的目标",
["Define the clicktarget for target."] = "定义点击MTT设定的目标",
["Define the clicktarget for targettarget."] = "定义点击MTTT设定的目标",
["Target"] = "目标",
["Maintank"] = "MT",
["TargetTarget"] = "目标的目标",
["Nr of Maintanks shown."] = "显示的MT数量",
["Nr Maintanks"] = "MT数量",
["Classcolor"] = "职业颜色",
["Color healthbars by class."] = "把血条着色为职业颜色",
["Enemycolor"] = "敌人颜色",
["Set the color for enemies. (used when classcolor is enabled)"] = "为敌人设置颜色(需要激活职业颜色)",
["Color Aggro"] = "仇恨颜色",
["Color aggro status for MTs on their names. Orange has target, Green is tanking, Red has no aggro."] = "MT的名字边框用颜色来显示仇恨的状态。橘红是有目标,绿色是正在坦克,红色是没有仇恨",
["Backdrop"] = "背景",
["Toggle the backdrop."] = "显示背景",
["Highlight"] = "高亮",
["Toggle highlighting your target."] = "高亮显示你的目标",
["Reverse"] = "逆转",
["Numbers"] = "数量",
["Toggle showing of MT numbers."] = "显示MT的数量",
["Tooltips"] = "提示",
["Toggle showing of tooltips."] = "选择显示提示",
["Show"] = "显示",
["Show maintank."] = "显示MT",
["Show target."] = "显示目标",
["Show targettarget."] = "显示目标的目标",
["Define which frames you want to see."] = "定义想要看到的框架",
["Layout"] = "布局",
["Set the layout for the MT frames."] = "设置MTT框架的布局",
["Vertical"] = "垂直",
["Horizontal"] = "水平",
["Style"] = "风格",
["Set the frame style."] = "订制框体风格",
["<style>"] = "<风格>",
["Default"] = "默认",
["Compact"] = "小巧",
["Backwards"] = "倒排",
["Order MT|MTT|MTTT Backwards."] = "MT|MTT|MTTT顺序倒着排列",
["Lock"] = "锁定",
["Lock the MT frames."] = "锁定MT框体",
} end )
PlayerTarget:
L:RegisterTranslations("zhCN", function() return {
["Player"] = "玩家",
["PlayerTarget"] = "玩家目标(PT)",
["Optional/PlayerTarget"] = "玩家目标",
["Options for the playertargets."] = "玩家目标选项",
["Targettarget"] = "目标的目标",
["Toggle TargetTarget frames."] = "显示目标的目标框体",
["Scale"] = "大小",
["Set frame scale."] = "设定框体大小",
["Alpha"] = "透明度",
["Set frame alpha."] = "设置框体透明度",
["Raidicon"] = "raid图标",
["Toggle raid icons."] = "显示raid图标",
["Frames"] = "PT框体设定",
["Options for the playertarget frames."] = "玩家目标框体选项",
["Growup"] = "往上增添",
["Toggle growup."] = "选择PT逐渐往上增添",
["Inverse"] = "翻转",
["Toggle inverse healthbar."] = "选择翻转血条",
["Deficit"] = "损失血量",
["Toggle deficit health."] = "显示损失血量",
["Target"] = "目标",
["TargetTarget"] = "目标的目标",
["Nr of Players shown."] = "显示的PT数量",
["Nr Players"] = "PT数量",
["Classcolor"] = "职业颜色",
["Color healthbars by class."] = "把血条着色为职业颜色",
["Enemycolor"] = "敌人颜色",
["Set the color for enemies. (used when classcolor is enabled)"] = "为敌人设置颜色(需要激活职业颜色)",
["Color Aggro"] = "仇恨颜色",
["Color aggro status for PTs on their names. Orange has target, Green is tanking, Red has no aggro."] = "PT的名字边框用颜色来显示仇恨的状态。橘红是有目标,绿色是正在坦克,红色是没有仇恨",
["Backdrop"] = "背景",
["Toggle the backdrop."] = "显示背景",
["Highlight"] = "高亮",
["Toggle highlighting your target."] = "高亮显示你的目标",
["Reverse"] = "上下翻转框体",
["Numbers"] = "数量",
["Toggle showing of PT numbers."] = "显示PT的数量",
["Tooltips"] = "提示",
["Toggle showing of tooltips."] = "显示提示",
["Show"] = "显示",
["Show player."] = "显示PT",
["Show target."] = "显示目标",
["Show targettarget."] = "显示目标的目标",
["Define which frames you want to see."] = "定义想要看到的框架",
["Layout"] = "布局",
["Set the layout for the PT frames."] = "设置PT框架的布局",
["Vertical"] = "垂直",
["Horizontal"] = "水平",
["Set Player"] = "设定PT",
["Set a player."]= "设定PT",
["<nr> <name>"] = "<数量> <名字>",
["<nr>"] = "<数量>",
["<name>"] = "<姓名>",
["Remove Player"] = "移除PT",
["Remove a player."] = "移除PT",
["Removed player: "] = "移除PT:",
["Set player: "] = "设置PT:",
["(%S+)%s*(.*)"] = "(%d+)%s*(.*)",
["<Not Assigned>"] = "<还未设定>",
["Style"] = "风格",
["Set the frame style."] = "订制框体风格",
["<style>"] = "<风格>",
["Default"] = "默认",
["Compact"] = "紧凑",
["Backwards"] = "倒排",
["Order PT|PTT|PTTT Backwards."] = "PT|PTT|PTTT顺序倒着排列",
["Lock"] = "锁定",
["Lock the PT frames."] = "锁定玩家目标框体",
} end )
Resurrection:
L:RegisterTranslations("zhCN", function() return {
["Resurrection Monitor"] = "复活监视器",
["Optional/Resurrection"] = "复活监视器",
["Options for resurrection."] = "复活选项",
} end )
Version:
L:RegisterTranslations("zhCN", function() return {
["Version"] = "版本",
["Options for version checks."] = "版本检查选项",
["Refresh"] = "刷新",
["Close"] = "关闭",
["Unknown"] = "未知",
["Name"] = "姓名",
["Optional/Version"] = "版本检查",
["Perform version check"] = "进行版本检查",
["Check the raid's versions."] = "检查团员的团队助手版本",
["CTRA"] = "CTRA",
["oRA"] = "oRA",
["n/a"] = "未安装",
} end )
Zone:
L:RegisterTranslations("zhCN", function() return {
["Zone"] = "区域检查",
["Options for zone checks."] = "区域检查选项",
["Refresh"] = "刷新",
["Close"] = "关闭",
["Unknown"] = "未知",
["Name"] = "姓名",
["Optional/Zone"] = "区域检查",
["Perform zone check"] = "区域检查",
["Check the raid's location."] = "检查团员所在区域",
} end )
---------------------------------------------------------------------
-------------------------------Participant---------------------------
---------------------------------------------------------------------
Item:
L:RegisterTranslations("zhCN", function() return {
["Item"] = "物品检查",
["Options for item checks."] = "物品检查选项",
["Participant/Item"] = "物品检查",
["Disable Item Checks"] = "关闭物品检查",
["Disable Responding to Item Checks."] = "停止回应物品检查",
["Disable Reagent Checks"] = "关闭施法材料检查",
["Disable Responding to Reagent Checks."] = "停止回应施法材料检查",
} end )
MainTank:
L:RegisterTranslations("zhCN", function() return {
["MainTank"] = "MT目标(MTT)",
["Options for the maintanks."] = "MT选项",
["The local maintank list has been refreshed."] = "本地MT名单已刷新",
["Refresh Maintanks"] = "刷新MT",
["Refresh the local maintank list."] = "刷新本地MT名单",
["Participant/MainTank"] = "成员/MT目标",
["Notify deaths"] = "死亡通知",
["Notifies you when a main tank dies."] = "当MT死亡时通知你",
["Tank %s has died!"] = "MT %s 已死亡!",
maintankdies = "^(.+)死亡了.",
} end )
Participant:
L:RegisterTranslations("zhCN", function() return {
["^Corpse of (.+)$"] = "^([^%s]+)的尸体",
} end )
RaidWarn:
L:RegisterTranslations("zhCN", function() return {
["Raidwarning"] = "团队警告",
["Options for raid warning."] = "团队警告选项",
["Participant/RaidWarn"] = "成员/团队警告",
["Bossblock"] = "阻止bossmod预警",
["Block messages from Bossmods."] = "阻止bossmod预警",
} end )
Ready:
L:RegisterTranslations("zhCN", function() return {
["Options for ready checks and votes."] = "就位确认和投票的选项",
["Sound"] = "声音",
["Toggle an audio warning upon a ready check or vote."] = "准备检查或投票时发声",
["Ready"] = "就绪检查",
["Not Ready"] = "未准备好",
["Are you Ready?"] = "准备好了么?",
["Yes"] = "是",
["No"] = "否",
["Ready Check"] = "就位确认",
["check"] = "确认",
["Vote"] = "投票",
["Participant/Ready"] = "成员/就位",
["Closing Vote"] = "关闭投票",
["Closing Check"] = "关闭检查",
} end)
When someone died in the raid with ora2, other people in the raid can request the log of the last 20 seconds or something and can read it then.
Would be a remote log off from promoted people possible?
Talk to Cryect about getting it in Relog instead.