Implemented russian translation and added translated name support
This commit is contained in:
1 parent
070efdf17e
commit
695bf11478
3 files changed
+870
-844
No files matched your search
+825
-812
File diff suppressed because it is too large.
Load diff
+27
-8
@@ -109,12 +109,17 @@ function EID:getDescriptionTable(objTable)
|
||||
end
|
||||
|
||||
-- returns the description object of the specified object table translated with the current language
|
||||
-- falls back to english if the key isnt available
|
||||
function EID:getDescriptionObj(objTable, key)
|
||||
return EID.descriptions[EIDConfig["Language"]][objTable][key] or EID.descriptions["en_us"][objTable][key]
|
||||
-- falls back to english if the objID isnt available
|
||||
function EID:getDescriptionObj(objTable, objID)
|
||||
local tableEntry = EID.descriptions[EIDConfig["Language"]][objTable][tonumber(objID)] or EID.descriptions["en_us"][objTable][tonumber(objID)]
|
||||
local description = {}
|
||||
description.ID = tableEntry[1] or objID
|
||||
description.Name = EID:getObjectName(objID, objTable) or objTable
|
||||
description.Description = tableEntry[4] or tableEntry[3] or ""
|
||||
description.Transformation = tableEntry[2] or "0"
|
||||
return description
|
||||
end
|
||||
|
||||
|
||||
--Get the name of the given transformation by its ID
|
||||
function EID:getTransformationName(id)
|
||||
local str = "Custom"
|
||||
@@ -126,13 +131,26 @@ end
|
||||
|
||||
-- tries to get the ingame name of an item based on its ID
|
||||
function EID:getObjectName(objID, objType)
|
||||
if objType == "collectible" then
|
||||
local tableEntry = EID.descriptions[EIDConfig["Language"]][objType][tonumber(objID)] or EID.descriptions["en_us"][objType][tonumber(objID)]
|
||||
if objType == "collectibles" then
|
||||
if EIDConfig["Language"]~="en_us" and #tableEntry==4 then
|
||||
return tableEntry[3]
|
||||
end
|
||||
return EID.itemConfig:GetCollectible(objID).Name
|
||||
elseif objType == "trinket" then
|
||||
elseif objType == "trinkets" then
|
||||
if EIDConfig["Language"]~="en_us" and #tableEntry==3 then
|
||||
return tableEntry[2]
|
||||
end
|
||||
return EID.itemConfig:GetTrinket(objID).Name
|
||||
elseif objType == "card" then
|
||||
elseif objType == "cards" then
|
||||
if EIDConfig["Language"]~="en_us" and #tableEntry==3 then
|
||||
return tableEntry[2]
|
||||
end
|
||||
return EID.itemConfig:GetCard(objID).Name
|
||||
elseif objType == "pill" then
|
||||
elseif objType == "pills" then
|
||||
if EIDConfig["Language"]~="en_us" and #tableEntry==3 then
|
||||
return tableEntry[2]
|
||||
end
|
||||
return EID.itemConfig:GetPillEffect(objID).Name
|
||||
elseif objType == "sacrifice" then
|
||||
return EID:getDescriptionTable("sacrificeHeader")
|
||||
@@ -185,6 +203,7 @@ end
|
||||
-- Returns the inlineIcon object of a given Iconstring
|
||||
-- can be used to validate an iconstring
|
||||
function EID:getIcon(str)
|
||||
if str == nil then return nil end
|
||||
local strTrimmed = string.gsub(str, "{{(.-)}}", function(a) return a end)
|
||||
if #strTrimmed < #str then
|
||||
return EID.InlineIcons[strTrimmed] or nil
|
||||
|
||||
@@ -30,7 +30,7 @@ require("descriptions.ab+.bul")
|
||||
require("descriptions.ab+.fr")
|
||||
--require("descriptions.ab+.pl") -- WIP
|
||||
require("descriptions.ab+.pt")
|
||||
--require("descriptions.ab+.ru") -- WIP
|
||||
require("descriptions.ab+.ru") -- WIP
|
||||
require("descriptions.ab+.spa")
|
||||
|
||||
require("eid_data")
|
||||
@@ -83,9 +83,8 @@ local function posY()
|
||||
end
|
||||
|
||||
function printDescription(desc)
|
||||
local Description = desc[3]
|
||||
local padding = posY()
|
||||
local itemType = EID.itemConfig:GetCollectible(desc[1]).Type
|
||||
local itemType = EID.itemConfig:GetCollectible(desc.ID).Type
|
||||
|
||||
--Display ItemType / Charge
|
||||
if EIDConfig["ShowItemType"] and (itemType == 3 or itemType == 4) then
|
||||
@@ -102,7 +101,7 @@ function printDescription(desc)
|
||||
Vector(0, 0)
|
||||
)
|
||||
if itemType == 3 then -- Display Charge
|
||||
IconSprite:Play(EID.itemConfig:GetCollectible(desc[1]).MaxCharges)
|
||||
IconSprite:Play(EID.itemConfig:GetCollectible(desc.ID).MaxCharges)
|
||||
IconSprite:Update()
|
||||
IconSprite:Render(
|
||||
Vector(EIDConfig["XPosition"], padding + offsetY),
|
||||
@@ -125,7 +124,7 @@ function printDescription(desc)
|
||||
end
|
||||
end
|
||||
EID:renderString(
|
||||
EID:getObjectName(desc[1], "collectible"),
|
||||
desc.Name,
|
||||
Vector(EIDConfig["XPosition"] + offset * EIDConfig["Scale"], padding - 4),
|
||||
Vector(EIDConfig["Scale"], EIDConfig["Scale"]),
|
||||
EID:getNameColor(),
|
||||
@@ -136,8 +135,8 @@ function printDescription(desc)
|
||||
end
|
||||
|
||||
--Display Transformation
|
||||
if not (desc[2] == "0" or desc[2] == "" or desc[2] == nil) then
|
||||
local transformationName = EID:getTransformationName(desc[2])
|
||||
if not (desc.Transformation == "0" or desc.Transformation == "" or desc.Transformation == nil) then
|
||||
local transformationName = EID:getTransformationName(desc.Transformation)
|
||||
local transformSprite = EID.TransformationIcons[transformationName]
|
||||
if transformSprite == nil then
|
||||
transformSprite = EID.TransformationIcons["Custom"]
|
||||
@@ -167,21 +166,16 @@ function printDescription(desc)
|
||||
padding = padding + lineHeight * EIDConfig["Scale"]
|
||||
end
|
||||
end
|
||||
printBulletPoints(Description, padding)
|
||||
printBulletPoints(desc.Description, padding)
|
||||
end
|
||||
|
||||
function printTrinketDescription(desc, objType)
|
||||
local Description = desc[2]
|
||||
local padding = posY()
|
||||
--Display Itemname
|
||||
if EIDConfig["ShowItemName"] then
|
||||
local name = EID:getObjectName(desc[1], objType)
|
||||
if objType == "custom" then
|
||||
name = desc[2][1]
|
||||
Description = desc[2][2]
|
||||
end
|
||||
|
||||
EID:renderString(
|
||||
name,
|
||||
desc.Name,
|
||||
Vector(EIDConfig["XPosition"], padding - 4),
|
||||
Vector(EIDConfig["Scale"], EIDConfig["Scale"]),
|
||||
EID:getNameColor(),
|
||||
@@ -190,7 +184,7 @@ function printTrinketDescription(desc, objType)
|
||||
|
||||
padding = padding + lineHeight * EIDConfig["Scale"]
|
||||
end
|
||||
printBulletPoints(Description, padding)
|
||||
printBulletPoints(desc.Description, padding)
|
||||
end
|
||||
|
||||
function printBulletPoints(description, padding)
|
||||
@@ -205,7 +199,7 @@ function printBulletPoints(description, padding)
|
||||
if EID:getIcon(word) ~= nil then
|
||||
wordLength = EID:getIcon(word)[3]
|
||||
end
|
||||
if curLength + wordLength <= textboxWidth then
|
||||
if curLength + wordLength <= textboxWidth or curLength < 25 then
|
||||
text = text .. word .. " "
|
||||
curLength = curLength + wordLength
|
||||
else
|
||||
@@ -368,10 +362,10 @@ local function onRender(t)
|
||||
if EID:getModDescription(__eidTrinketDescriptions, closest.SubType) then
|
||||
printTrinketDescription(
|
||||
{closest.SubType, EID:getModDescription(__eidTrinketDescriptions, closest.SubType)},
|
||||
"trinket"
|
||||
"trinkets"
|
||||
)
|
||||
elseif closest.SubType <= 128 then
|
||||
printTrinketDescription(EID:getDescriptionObj("trinkets",closest.SubType), "trinket")
|
||||
printTrinketDescription(EID:getDescriptionObj("trinkets",closest.SubType), "trinkets")
|
||||
else
|
||||
printTrinketDescription({closest.SubType, EID.itemConfig:GetTrinket(closest.SubType).Description})
|
||||
end
|
||||
@@ -409,9 +403,9 @@ local function onRender(t)
|
||||
return
|
||||
end
|
||||
if EID:getModDescription(__eidCardDescriptions, closest.SubType) then
|
||||
printTrinketDescription({closest.SubType, EID:getModDescription(__eidCardDescriptions, closest.SubType)}, "card")
|
||||
printTrinketDescription({closest.SubType, EID:getModDescription(__eidCardDescriptions, closest.SubType)}, "cards")
|
||||
elseif closest.SubType <= 54 then
|
||||
printTrinketDescription(EID:getDescriptionObj("cards", closest.SubType), "card")
|
||||
printTrinketDescription(EID:getDescriptionObj("cards", closest.SubType), "cards")
|
||||
CardSprite:Play(tostring(closest.SubType))
|
||||
CardSprite.Scale = Vector(EIDConfig["Scale"], EIDConfig["Scale"])
|
||||
CardSprite:Update()
|
||||
@@ -439,9 +433,9 @@ local function onRender(t)
|
||||
local identified = pool:IsPillIdentified(pillColor)
|
||||
if (identified or EIDConfig["ShowUnidentifiedPillDescriptions"]) then
|
||||
if EID:getModDescription(__eidPillDescriptions, pillEffect) then
|
||||
printTrinketDescription({pillEffect, EID:getModDescription(__eidPillDescriptions, pillEffect)}, "pill")
|
||||
printTrinketDescription({pillEffect, EID:getModDescription(__eidPillDescriptions, pillEffect)}, "pills")
|
||||
elseif pillEffect < 47 then
|
||||
printTrinketDescription(EID:getDescriptionObj("pills", pillEffect + 1), "pill")
|
||||
printTrinketDescription(EID:getDescriptionObj("pills", pillEffect + 1), "pills")
|
||||
else
|
||||
EID:renderString(
|
||||
EIDConfig["ErrorMessage"],
|
||||
@@ -509,4 +503,4 @@ if ModConfigMenu then
|
||||
EID:AddCallback(ModCallbacks.MC_PRE_GAME_EXIT, SaveGame)
|
||||
end
|
||||
|
||||
--require("eid_debugging")
|
||||
require("eid_debugging")
|
||||
Reference in new issue
Block a user