Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
Andrew Reed
VuhDo
Commits
974dc4de
Commit
974dc4de
authored
4 years ago
by
Ivaria
Browse files
Options
Download
Email Patches
Plain Diff
Strengthen custom flag validator sandbox
parent
f7c81647
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
129 additions
and
69 deletions
+129
-69
VuhDoBouquetValidators.lua
VuhDoBouquetValidators.lua
+79
-43
VuhDoLocalization_de.lua
VuhDoLocalization_de.lua
+3
-0
VuhDoLocalization_en.lua
VuhDoLocalization_en.lua
+3
-0
VuhDoLocalization_es.lua
VuhDoLocalization_es.lua
+16
-13
VuhDoLocalization_fr.lua
VuhDoLocalization_fr.lua
+16
-13
VuhDoLocalization_ko.lua
VuhDoLocalization_ko.lua
+3
-0
VuhDoLocalization_ru.lua
VuhDoLocalization_ru.lua
+3
-0
VuhDoLocalization_zhCN.lua
VuhDoLocalization_zhCN.lua
+3
-0
VuhDoLocalization_zhTW.lua
VuhDoLocalization_zhTW.lua
+3
-0
No files found.
VuhDoBouquetValidators.lua
View file @
974dc4de
...
...
@@ -13,19 +13,6 @@ VUHDO_FORCE_RESET = false;
local
floor
=
floor
;
local
select
=
select
;
local
twipe
=
table
.
wipe
;
local
GetRaidTargetIndex
=
GetRaidTargetIndex
;
local
UnitPower
=
UnitPower
;
local
UnitPowerMax
=
UnitPowerMax
;
local
UnitIsFriend
=
UnitIsFriend
;
local
UnitIsEnemy
=
UnitIsEnemy
;
local
UnitIsDeadOrGhost
=
UnitIsDeadOrGhost
;
local
UnitIsPlayer
=
UnitIsPlayer
;
local
UnitIsTapped
=
UnitIsTapped
;
local
UnitIsTappedByPlayer
=
UnitIsTappedByPlayer
;
local
GetTexCoordsForRole
=
GetTexCoordsForRole
;
local
UnitIsPVP
=
UnitIsPVP
;
local
UnitFactionGroup
=
UnitFactionGroup
;
local
UnitHasIncomingResurrection
=
UnitHasIncomingResurrection
;
local
_
;
local
VUHDO_RAID
=
{
};
...
...
@@ -1073,6 +1060,16 @@ local function VUHDO_pvpIconValidator(anInfo, _)
end
end
--
local
function
VUHDO_friendValidator
(
anInfo
,
_
)
return
UnitIsFriend
(
"player"
,
anInfo
[
"unit"
]),
nil
,
-
1
,
-
1
,
-
1
;
end
--
local
function
VUHDO_foeValidator
(
anInfo
,
_
)
return
not
UnitIsFriend
(
"player"
,
anInfo
[
"unit"
]),
nil
,
-
1
,
-
1
,
-
1
;
end
--
...
...
@@ -1156,23 +1153,38 @@ local VUHDO_OVERRIDE_FUNCTIONS = { };
local
VUHDO_BLOCKED_FUNCTIONS
=
{
-- Lua functions that may allow breaking out of the environment
getfenv
=
true
,
setfenv
=
true
,
loadstring
=
true
,
pcall
=
true
,
getfenv
=
true
,
setfenv
=
true
,
loadstring
=
true
,
pcall
=
true
,
xpcall
=
true
,
-- blocked WoW API
SendMail
=
true
,
SetTradeMoney
=
true
,
AddTradeMoney
=
true
,
PickupTradeMoney
=
true
,
PickupPlayerMoney
=
true
,
TradeFrame
=
true
,
MailFrame
=
true
,
EnumerateFrames
=
true
,
RunScript
=
true
,
AcceptTrade
=
true
,
SetSendMailMoney
=
true
,
EditMacro
=
true
SendMail
=
true
,
SetTradeMoney
=
true
,
AddTradeMoney
=
true
,
PickupTradeMoney
=
true
,
PickupPlayerMoney
=
true
,
TradeFrame
=
true
,
MailFrame
=
true
,
EnumerateFrames
=
true
,
RunScript
=
true
,
AcceptTrade
=
true
,
SetSendMailMoney
=
true
,
EditMacro
=
true
,
DevTools_DumpCommand
=
true
,
hash_SlashCmdList
=
true
,
CreateMacro
=
true
,
SetBindingMacro
=
true
,
GuildDisband
=
true
,
GuildUninvite
=
true
,
securecall
=
true
};
local
VUHDO_BLOCKED_TABLES
=
{
SlashCmdList
=
true
,
SendMailMailButton
=
true
,
SendMailMoneyGold
=
true
,
MailFrameTab2
=
true
};
...
...
@@ -1185,20 +1197,32 @@ end
local
env_getglobal
;
local
exec_env
=
setmetatable
({},
{
__index
=
function
(
t
,
k
)
if
k
==
"_G"
then
return
t
elseif
k
==
"getglobal"
then
return
env_getglobal
elseif
VUHDO_BLOCKED_FUNCTIONS
[
k
]
then
return
VUHDO_blockedFunction
elseif
VUHDO_OVERRIDE_FUNCTIONS
[
k
]
then
return
VUHDO_OVERRIDE_FUNCTIONS
[
k
]
else
return
_G
[
k
]
end
end
local
exec_env
=
setmetatable
({},
{
__index
=
function
(
t
,
k
)
if
k
==
"_G"
then
return
t
elseif
k
==
"getglobal"
then
return
env_getglobal
elseif
VUHDO_BLOCKED_FUNCTIONS
[
k
]
then
VUHDO_blockedFunction
()
return
function
()
end
elseif
VUHDO_BLOCKED_TABLES
[
k
]
then
VUHDO_blockedFunction
()
return
{}
elseif
VUHDO_OVERRIDE_FUNCTIONS
[
k
]
then
return
VUHDO_OVERRIDE_FUNCTIONS
[
k
]
else
return
_G
[
k
]
end
end
,
__newindex
=
function
(
t
,
k
,
v
)
VUHDO_blockedFunction
()
end
,
__metatable
=
false
});
...
...
@@ -1893,6 +1917,18 @@ VUHDO_BOUQUET_BUFFS_SPECIAL = {
[
"interests"
]
=
{
VUHDO_UPDATE_MINOR_FLAGS
},
},
[
"FRIEND"
]
=
{
[
"displayName"
]
=
VUHDO_I18N_FRIEND_STATUS
,
[
"validator"
]
=
VUHDO_friendValidator
,
[
"interests"
]
=
{
},
},
[
"FOE"
]
=
{
[
"displayName"
]
=
VUHDO_I18N_FOE_STATUS
,
[
"validator"
]
=
VUHDO_foeValidator
,
[
"interests"
]
=
{
},
},
[
"OVERFLOW_COUNTER"
]
=
{
[
"displayName"
]
=
VUHDO_I18N_DEF_COUNTER_OVERFLOW_ABSORB
,
[
"validator"
]
=
VUHDO_overflowCountValidator
,
...
...
This diff is collapsed.
Click to expand it.
VuhDoLocalization_de.lua
View file @
974dc4de
...
...
@@ -243,6 +243,7 @@ VUHDO_I18N_BOUQUET_STATUS_THREAT = "Statusbar: Bedrohung %";
VUHDO_I18N_BOUQUET_NEW_ITEM_NAME = "
-- (de)buff hier eingeben --";
VUHDO_I18N_DEF_BOUQUET_TANK_COOLDOWNS
=
"Tank-Cooldowns"
;
VUHDO_I18N_DEF_BOUQUET_PW_S_WEAKENED_SOUL
=
"Schild & Geschwächte Seele"
;
VUHDO_I18N_DEF_BOUQUET_MONK_STAGGER
=
"Mönch Staffeln"
;
VUHDO_I18N_DEF_BOUQUET_BORDER_MULTI_AGGRO
=
"Rahmen: Multi + Aggro"
;
VUHDO_I18N_DEF_BOUQUET_BORDER_MULTI
=
"Rahmen: Multi"
;
VUHDO_I18N_DEF_BOUQUET_BORDER_SIMPLE
=
"Rahmen: Einfach"
;
...
...
@@ -362,6 +363,8 @@ VUHDO_I18N_DEF_ROLE_ICON = "Rollen-Icon";
VUHDO_I18N_DEF_BOUQUET_TARGET_HEALTH = "
Leben
:
(
auto
,
Ziele
)
";
VUHDO_I18N_TAPPED_COLOR = "
Flag
:
Getappt
";
VUHDO_I18N_ENEMY_STATE_COLOR = "
Farbe
:
Freund
/
Feind
";
VUHDO_I18N_FRIEND_STATUS = "
Flag
:
Freund
";
VUHDO_I18N_FOE_STATUS = "
Flag
:
Feind
";
VUHDO_I18N_BOUQUET_STATUS_ALWAYS_FULL = "
Statusbar
:
Immer
voll
";
VUHDO_I18N_BOUQUET_STATUS_FULL_IF_ACTIVE = "
Statusbar
:
voll
wenn
aktiv
";
VUHDO_I18N_AOE_ADVICE = "
Icon
:
Gruppenheilung
";
...
...
This diff is collapsed.
Click to expand it.
VuhDoLocalization_en.lua
View file @
974dc4de
...
...
@@ -243,6 +243,7 @@ VUHDO_I18N_BOUQUET_STATUS_THREAT = "Statusbar: Threat %";
VUHDO_I18N_BOUQUET_NEW_ITEM_NAME = "-- enter (de)buff here --";
VUHDO_I18N_DEF_BOUQUET_TANK_COOLDOWNS = "Tank Cooldowns";
VUHDO_I18N_DEF_BOUQUET_PW_S_WEAKENED_SOUL = "PW:S & Weakened Soul";
VUHDO_I18N_DEF_BOUQUET_MONK_STAGGER = "Monk Stagger";
VUHDO_I18N_DEF_BOUQUET_BORDER_MULTI_AGGRO = "Border: Multi + Aggro";
VUHDO_I18N_DEF_BOUQUET_BORDER_MULTI = "Border: Multi";
VUHDO_I18N_DEF_BOUQUET_BORDER_SIMPLE = "Border: Simple";
...
...
@@ -363,6 +364,8 @@ VUHDO_I18N_DEF_BOUQUET_TARGET_HEALTH = "Health (generic, target)";
VUHDO_I18N_TAPPED_COLOR = "Flag: Tapped";
VUHDO_I18N_ENEMY_STATE_COLOR = "Color: Friend/Foe";
VUHDO_I18N_FRIEND_STATUS = "Flag: Friend";
VUHDO_I18N_FOE_STATUS = "Flag: Foe";
VUHDO_I18N_BOUQUET_STATUS_ALWAYS_FULL = "Statusbar: always full";
VUHDO_I18N_BOUQUET_STATUS_FULL_IF_ACTIVE = "Statusbar: full if active";
VUHDO_I18N_AOE_ADVICE = "Icon: AOE Advice";
...
...
This diff is collapsed.
Click to expand it.
VuhDoLocalization_es.lua
View file @
974dc4de
if
(
GetLocale
()
~=
"esES"
)
then
return
;
end
-- = \195\161
-- = \195\169
-- = \195\173
-- = \195\179
-- = \195\186
-- = \195\177
-- = \195\170
-- = \195\175
-- = \195\180
-- = \195\185
-- = \197\146
-- = \197\147
--
á
= \195\161
--
é
= \195\169
--
í
= \195\173
--
ó
= \195\179
--
ú
= \195\186
--
ñ
= \195\177
--
è
= \195\170
--
ï
= \195\175
--
ô
= \195\180
--
ù
= \195\185
--
Œ
= \197\146
--
œ
= \197\147
-- @EXACT = true: Translation has to be the exact(!) match in the clients language,
-- beacause it carries technical semantics
-- @EXACT = false: Translation can be done freely, because text is only descriptive
-- Class Names
-- @EXACT = false
VUHDO_I18N_WARRIORS
=
"Guerreros"
VUHDO_I18N_ROGUES
=
"Pcaros"
;
VUHDO_I18N_ROGUES
=
"P
\195\173
caros"
;
VUHDO_I18N_HUNTERS
=
"Cazadores"
;
VUHDO_I18N_PALADINS
=
"Paladines"
;
VUHDO_I18N_MAGES
=
"Magos"
;
...
...
@@ -256,6 +256,7 @@ VUHDO_I18N_BOUQUET_STATUS_THREAT = "Statusbar: Threat %";
VUHDO_I18N_BOUQUET_NEW_ITEM_NAME = "-- enter (de)buff here --";
VUHDO_I18N_DEF_BOUQUET_TANK_COOLDOWNS = "Tank Cooldowns";
VUHDO_I18N_DEF_BOUQUET_PW_S_WEAKENED_SOUL = "PW:S & Weakened Soul";
VUHDO_I18N_DEF_BOUQUET_MONK_STAGGER = "Monje Aplazar";
VUHDO_I18N_DEF_BOUQUET_BORDER_MULTI_AGGRO = "Border: Multi + Aggro";
VUHDO_I18N_DEF_BOUQUET_BORDER_MULTI = "Border: Multi";
VUHDO_I18N_DEF_BOUQUET_BORDER_SIMPLE = "Border: Simple";
...
...
@@ -373,6 +374,8 @@ VUHDO_I18N_DEF_ROLE_ICON = "Role Icon";
VUHDO_I18N_DEF_BOUQUET_TARGET_HEALTH = "Health (generic, target)";
VUHDO_I18N_TAPPED_COLOR = "Flag: Tapped";
VUHDO_I18N_ENEMY_STATE_COLOR = "Color: Friend/Foe";
VUHDO_I18N_FRIEND_STATUS = "Flag: Friend";
VUHDO_I18N_FOE_STATUS = "Flag: Foe";
VUHDO_I18N_BOUQUET_STATUS_ALWAYS_FULL = "Statusbar: always full";
VUHDO_I18N_BOUQUET_STATUS_FULL_IF_ACTIVE = "Statusbar: full if active";
VUHDO_I18N_AOE_ADVICE = "Icon: AOE Advice";
...
...
This diff is collapsed.
Click to expand it.
VuhDoLocalization_fr.lua
View file @
974dc4de
if
(
GetLocale
()
~=
"frFR"
)
then
return
;
end
-- = \195\160
-- = \195\162
-- = \195\166
-- = \195\167
-- = \195\168
-- = \195\169
-- = \195\170
-- = \195\175
-- = \195\180
-- = \195\185
-- = \197\146
-- = \197\147
--
à
= \195\160
--
â
= \195\162
--
æ
= \195\166
--
ç
= \195\167
--
è
= \195\168
--
é
= \195\169
--
è
= \195\170
--
ï
= \195\175
--
ô
= \195\180
--
ù
= \195\185
--
Œ
= \197\146
--
œ
= \197\147
-- @EXACT = true: Translation has to be the exact(!) match in the clients language,
-- beacause it carries technical semantics
-- @EXACT = false: Translation can be done freely, because text is only descriptive
...
...
@@ -127,7 +127,7 @@ VUHDO_I18N_BUFFC_SKIN = "Peau";
-- Mage
VUHDO_I18N_BUFFC_ARMOR_MAGE
=
"Armure"
;
-- Death Knight
VUHDO_BUFFC_PRESENCE
=
"Prsence"
;
VUHDO_BUFFC_PRESENCE
=
"Pr
\195\169
sence"
;
-- Warrior
VUHDO_I18N_BUFFC_SHOUT
=
"Cri"
;
-- Hunter
...
...
@@ -256,6 +256,7 @@ VUHDO_I18N_BOUQUET_STATUS_THREAT = "Statusbar: Threat %";
VUHDO_I18N_BOUQUET_NEW_ITEM_NAME = "-- enter (de)buff here --";
VUHDO_I18N_DEF_BOUQUET_TANK_COOLDOWNS = "Tank Cooldowns";
VUHDO_I18N_DEF_BOUQUET_PW_S_WEAKENED_SOUL = "PW:S & Weakened Soul";
VUHDO_I18N_DEF_BOUQUET_MONK_STAGGER = "Report du moine";
VUHDO_I18N_DEF_BOUQUET_BORDER_MULTI_AGGRO = "Border: Multi + Aggro";
VUHDO_I18N_DEF_BOUQUET_BORDER_MULTI = "Border: Multi";
VUHDO_I18N_DEF_BOUQUET_BORDER_SIMPLE = "Border: Simple";
...
...
@@ -372,6 +373,8 @@ VUHDO_I18N_DEF_ROLE_ICON = "Role Icon";
VUHDO_I18N_DEF_BOUQUET_TARGET_HEALTH = "Health (generic, target)";
VUHDO_I18N_TAPPED_COLOR = "Flag: Tapped";
VUHDO_I18N_ENEMY_STATE_COLOR = "Color: Friend/Foe";
VUHDO_I18N_FRIEND_STATUS = "Flag: Ami";
VUHDO_I18N_FOE_STATUS = "Flag: Ennemi";
VUHDO_I18N_BOUQUET_STATUS_ALWAYS_FULL = "Statusbar: always full";
VUHDO_I18N_BOUQUET_STATUS_FULL_IF_ACTIVE = "Statusbar: full if active";
VUHDO_I18N_AOE_ADVICE = "Icon: AOE Advice";
...
...
This diff is collapsed.
Click to expand it.
VuhDoLocalization_ko.lua
View file @
974dc4de
...
...
@@ -246,6 +246,7 @@ VUHDO_I18N_BOUQUET_STATUS_THREAT = "상태바: 위협 %";
VUHDO_I18N_BOUQUET_NEW_ITEM_NAME = "
-- 여기 (디)버프 입력 --";
VUHDO_I18N_DEF_BOUQUET_TANK_COOLDOWNS
=
"탱커 쿨다운"
;
VUHDO_I18N_DEF_BOUQUET_PW_S_WEAKENED_SOUL
=
"PW:S & 약화된 영혼"
;
VUHDO_I18N_DEF_BOUQUET_MONK_STAGGER
=
"수도사 시간차"
;
VUHDO_I18N_DEF_BOUQUET_BORDER_MULTI_AGGRO
=
"테두리: 다중 + 어그로"
;
VUHDO_I18N_DEF_BOUQUET_BORDER_MULTI
=
"테두리: 다중"
;
VUHDO_I18N_DEF_BOUQUET_BORDER_SIMPLE
=
"테두리: 단순"
;
...
...
@@ -366,6 +367,8 @@ VUHDO_I18N_DEF_BOUQUET_TARGET_HEALTH = "체력 (일반, 대상)";
VUHDO_I18N_TAPPED_COLOR = "
Flag
:
선택
";
VUHDO_I18N_ENEMY_STATE_COLOR = "
색상
:
우호적
/
적대적
";
VUHDO_I18N_FRIEND_STATUS = "
Flag
:
우호적
";
VUHDO_I18N_FOE_STATUS = "
Flag
:
적대적
";
VUHDO_I18N_BOUQUET_STATUS_ALWAYS_FULL = "
상태바
:
항상
전체
";
VUHDO_I18N_BOUQUET_STATUS_FULL_IF_ACTIVE = "
상태바
:
활성화
시
전체
";
VUHDO_I18N_AOE_ADVICE = "
Icon
:
AOE
주의
";
...
...
This diff is collapsed.
Click to expand it.
VuhDoLocalization_ru.lua
View file @
974dc4de
...
...
@@ -295,6 +295,7 @@ VUHDO_I18N_BOUQUET_NEW_ITEM_NAME = "-- введите сюда (де)баф --";
VUHDO_I18N_DEF_BOUQUET_TANK_COOLDOWNS = "Откаты танка";
VUHDO_I18N_DEF_BOUQUET_PW_S_WEAKENED_SOUL = "СС:Щ и Ослабленная душа";
VUHDO_I18N_DEF_BOUQUET_MONK_STAGGER = "Монах Пошатывание";
VUHDO_I18N_DEF_BOUQUET_BORDER_MULTI_AGGRO = "Границы: Комплексная + угроза";
VUHDO_I18N_DEF_BOUQUET_BORDER_MULTI = "Границы: Комплексная";
VUHDO_I18N_DEF_BOUQUET_BORDER_SIMPLE = "Границы: Простая";
...
...
@@ -437,6 +438,8 @@ VUHDO_I18N_DEF_ROLE_ICON = "Иконка роли";
VUHDO_I18N_DEF_BOUQUET_TARGET_HEALTH = "
Здоровье
(
общее
,
цель
)
";
VUHDO_I18N_TAPPED_COLOR = "
Флаг
:
Присоединенный
";
VUHDO_I18N_ENEMY_STATE_COLOR = "
Цвет
:
Союзник
/
Враг
";
VUHDO_I18N_FRIEND_STATUS = "
Флаг
:
Союзник
";
VUHDO_I18N_FOE_STATUS = "
Флаг
:
Враг
";
VUHDO_I18N_BOUQUET_STATUS_ALWAYS_FULL = "
Полоса
состояния
:
всегда
полная
";
VUHDO_I18N_BOUQUET_STATUS_FULL_IF_ACTIVE = "
Полоса
состояния
:
полная
при
активности
";
VUHDO_I18N_AOE_ADVICE = "
Иконка
:
AOE
Советник
";
...
...
This diff is collapsed.
Click to expand it.
VuhDoLocalization_zhCN.lua
View file @
974dc4de
...
...
@@ -245,6 +245,7 @@ VUHDO_I18N_BOUQUET_STATUS_THREAT = "状态列: 仇恨 %";
VUHDO_I18N_BOUQUET_NEW_ITEM_NAME = "
-- 在此输入增益或减益 --";
VUHDO_I18N_DEF_BOUQUET_TANK_COOLDOWNS
=
"坦克冷却"
;
VUHDO_I18N_DEF_BOUQUET_PW_S_WEAKENED_SOUL
=
"真言盾 & 虚弱灵魂"
;
VUHDO_I18N_DEF_BOUQUET_MONK_STAGGER
=
"Monk Stagger"
;
VUHDO_I18N_DEF_BOUQUET_BORDER_MULTI_AGGRO
=
"边框: 多边 + 仇恨"
;
VUHDO_I18N_DEF_BOUQUET_BORDER_MULTI
=
"边框: 多边"
;
VUHDO_I18N_DEF_BOUQUET_BORDER_SIMPLE
=
"边框: 简单"
;
...
...
@@ -365,6 +366,8 @@ VUHDO_I18N_DEF_BOUQUET_TARGET_HEALTH = "血量 (通用,目标)";
VUHDO_I18N_TAPPED_COLOR = "
标志
:
无效目标
";
VUHDO_I18N_ENEMY_STATE_COLOR = "
颜色
:
友方
/
敌方
";
VUHDO_I18N_FRIEND_STATUS = "
标志
:
友方
";
VUHDO_I18N_FOE_STATUS = "
标志
:
敌方
";
VUHDO_I18N_BOUQUET_STATUS_ALWAYS_FULL = "
状态列
:
永远满的
";
VUHDO_I18N_BOUQUET_STATUS_FULL_IF_ACTIVE = "
状态列
:
启动时满的
";
VUHDO_I18N_AOE_ADVICE = "
图标
:
辅助建议
";
...
...
This diff is collapsed.
Click to expand it.
VuhDoLocalization_zhTW.lua
View file @
974dc4de
...
...
@@ -245,6 +245,7 @@ VUHDO_I18N_BOUQUET_STATUS_THREAT = "狀態列: 仇恨 %";
VUHDO_I18N_BOUQUET_NEW_ITEM_NAME = "
-- 在此輸入增益或減益 --";
VUHDO_I18N_DEF_BOUQUET_TANK_COOLDOWNS
=
"坦克冷卻"
;
VUHDO_I18N_DEF_BOUQUET_PW_S_WEAKENED_SOUL
=
"真言盾 & 虛弱靈魂"
;
VUHDO_I18N_DEF_BOUQUET_MONK_STAGGER
=
"Monk Stagger"
;
VUHDO_I18N_DEF_BOUQUET_BORDER_MULTI_AGGRO
=
"邊框: 多邊 + 仇恨"
;
VUHDO_I18N_DEF_BOUQUET_BORDER_MULTI
=
"邊框: 多邊"
;
VUHDO_I18N_DEF_BOUQUET_BORDER_SIMPLE
=
"邊框: 簡單"
;
...
...
@@ -366,6 +367,8 @@ VUHDO_I18N_DEF_ROLE_ICON = "Role Icon";
VUHDO_I18N_DEF_BOUQUET_TARGET_HEALTH = "
Health
(
generic
,
target
)
";
VUHDO_I18N_TAPPED_COLOR = "
Flag
:
Tapped
";
VUHDO_I18N_ENEMY_STATE_COLOR = "
Color
:
Friend
/
Foe
";
VUHDO_I18N_FRIEND_STATUS = "
Flag
:
Friend
";
VUHDO_I18N_FOE_STATUS = "
Flag
:
Foe
";
VUHDO_I18N_BOUQUET_STATUS_ALWAYS_FULL = "
Statusbar
:
always
full
";
VUHDO_I18N_BOUQUET_STATUS_FULL_IF_ACTIVE = "
Statusbar
:
full
if
active
";
VUHDO_I18N_AOE_ADVICE = "
Icon
:
AOE
Advice
";
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment