Major Update - 2.0.0.143

EN: 2.0.0.143
CN: 2.0.0.142
JP: 2.0.0.145
KR: 2.0.0.150
This commit is contained in:
SL1900
2026-10-20 13:00:00 +09:00
parent 4bcada6061
commit 08b515afd9
1773 changed files with 1095195 additions and 65670 deletions
+63 -11
View File
@@ -49,6 +49,9 @@ createdelegate = util.createdelegate
state = util.state
print_func_ref_by_csharp = util.print_func_ref_by_csharp
cs_coroutine = require("xlua.cs_coroutine")
function IsNull(obj)
return obj == nil or obj:IsNull()
end
local serpent = require("serpent")
function printLog(str)
Debug.Log(str)
@@ -648,7 +651,7 @@ function AddKrParticle(str, nParticleIdx)
end
end
elseif is_al(codePoint) then
local charTag = AllEnum.KrTags[1][nParticleIdx]
local charTag = AllEnum.KrTags["1"][nParticleIdx]
if charTag ~= nil then
str = str .. charTag
end
@@ -891,6 +894,21 @@ local IsBitSet = function(tbByte, nIndex)
end
return 1 << nIndexInGroup8 - 1 & tbByte[nByteTableIndex] > 0
end
local SetBit = function(tbByte, nIndex)
assert(1 <= nIndex and nIndex % 1 == 0, "nIndex must be a positive integer")
local nGroup64 = math.ceil(nIndex / 64) - 1
local nIndexInGroup64 = nIndex - nGroup64 * 64
local nGroup8 = math.ceil(nIndexInGroup64 / 8) - 1
local nIndexInGroup8 = nIndexInGroup64 - nGroup8 * 8
local nByteTableIndex = 8 - nGroup8 + nGroup64 * 8
for nByteIndex = 1, (nGroup64 + 1) * 8 do
if tbByte[nByteIndex] == nil then
tbByte[nByteIndex] = 0
end
end
local nMask = 1 << nIndexInGroup8 - 1
tbByte[nByteTableIndex] = tbByte[nByteTableIndex] | nMask
end
local GetBuildAttributeId = function(nGroupId, nLevel)
return nGroupId * 100000 + nLevel
end
@@ -1096,35 +1114,55 @@ local SubDesc = function(str, nLevel, nCompareLevel, mapLinkParam)
local subStr = ParseHitDamageDesc(nKey, nLevel)
if nCompareLevel ~= nil then
local sCompareStr = ParseHitDamageDesc(nKey, nCompareLevel)
subStr = string.format("%s<color=#8cac59>(%s↑)</color>", subStr, sCompareStr)
if nLevel < nCompareLevel then
subStr = string.format("%s<color=#8cac59>(%s↑)</color>", subStr, sCompareStr)
else
subStr = string.format("%s<color=#e74470>(%s↓)</color>", subStr, sCompareStr)
end
end
mapWord[word] = subStr
elseif sTable == "Effect" then
local subStr = ParseEffectDesc(nKey, nLevel, nShowType)
if nCompareLevel ~= nil then
local sCompareStr = ParseEffectDesc(nKey, nCompareLevel, nShowType)
subStr = string.format("%s<color=#8cac59>(%s↑)</color>", subStr, sCompareStr)
if nLevel < nCompareLevel then
subStr = string.format("%s<color=#8cac59>(%s↑)</color>", subStr, sCompareStr)
else
subStr = string.format("%s<color=#e74470>(%s↓)</color>", subStr, sCompareStr)
end
end
mapWord[word] = subStr
elseif sTable == "Once" then
local subStr = ParseOnceDesc(nKey, nLevel, nShowType)
if nCompareLevel ~= nil then
local sCompareStr = ParseOnceDesc(nKey, nCompareLevel, nShowType)
subStr = string.format("%s<color=#8cac59>(%s↑)</color>", subStr, sCompareStr)
if nLevel < nCompareLevel then
subStr = string.format("%s<color=#8cac59>(%s↑)</color>", subStr, sCompareStr)
else
subStr = string.format("%s<color=#e74470>(%s↓)</color>", subStr, sCompareStr)
end
end
mapWord[word] = subStr
elseif sTable == "Shield" then
local subStr = ParseShieldDesc(nKey, nLevel, nShowType)
if nCompareLevel ~= nil then
local sCompareStr = ParseShieldDesc(nKey, nCompareLevel, nShowType)
subStr = string.format("%s<color=#8cac59>(%s↑)</color>", subStr, sCompareStr)
if nLevel < nCompareLevel then
subStr = string.format("%s<color=#8cac59>(%s↑)</color>", subStr, sCompareStr)
else
subStr = string.format("%s<color=#e74470>(%s↓)</color>", subStr, sCompareStr)
end
end
mapWord[word] = subStr
elseif sTable == "Script" then
local subStr = ParseSriptDesc(nKey, nLevel, nShowType)
if nCompareLevel ~= nil then
local sCompareStr = ParseSriptDesc(nKey, nCompareLevel, nShowType)
subStr = string.format("%s<color=#8cac59>(%s↑)</color>", subStr, sCompareStr)
if nLevel < nCompareLevel then
subStr = string.format("%s<color=#8cac59>(%s↑)</color>", subStr, sCompareStr)
else
subStr = string.format("%s<color=#e74470>(%s↓)</color>", subStr, sCompareStr)
end
end
mapWord[word] = subStr
else
@@ -1401,6 +1439,9 @@ local ParseDesc = function(mapDescConfig, nCompareLevelType, nCompareLevel, bSim
if (mapData.levelTypeData == GameEnum.levelTypeData.Exclusive or mapData.levelTypeData == GameEnum.levelTypeData.Note or mapData.levelTypeData == GameEnum.levelTypeData.SoldierLevel) and nOverrideLevel ~= nil then
nLevel = nOverrideLevel
end
if nCompareLevelType == GameEnum.levelTypeData.SoldierLevel and mapData.levelTypeData == GameEnum.levelTypeData.SkillSlot and nOverrideLevel ~= nil then
nLevel = nOverrideLevel
end
if sParseType == "DamageNum" and sTable == "HitDamage" then
local subStr = ParseHitDamageDesc(nKey, nLevel)
subStr = LanguagePost(lang, langIdx, subStr)
@@ -1408,7 +1449,11 @@ local ParseDesc = function(mapDescConfig, nCompareLevelType, nCompareLevel, bSim
local sCompareStr = ParseHitDamageDesc(nKey, nCompareLevel)
sCompareStr = LanguagePost(lang, langIdx, sCompareStr)
if subStr ~= sCompareStr then
subStr = string.format("%s<color=#8cac59>(%s↑)</color>", subStr, sCompareStr)
if nCompareLevel > nLevel then
subStr = string.format("%s<color=#8cac59>(%s↑)</color>", subStr, sCompareStr)
else
subStr = string.format("%s<color=#e74470>(%s↓)</color>", subStr, sCompareStr)
end
end
end
mapWord[word] = subStr
@@ -1419,7 +1464,11 @@ local ParseDesc = function(mapDescConfig, nCompareLevelType, nCompareLevel, bSim
local sCompareStr = ParseLevelUpDesc(sTable, nKey, nCompareLevel, sParameter, sShowType, sEnumType)
sCompareStr = LanguagePost(lang, langIdx, sCompareStr)
if subStr ~= sCompareStr then
subStr = string.format("%s<color=#8cac59>(%s↑)</color>", subStr, sCompareStr)
if nCompareLevel > nLevel then
subStr = string.format("%s<color=#8cac59>(%s↑)</color>", subStr, sCompareStr)
else
subStr = string.format("%s<color=#e74470>(%s↓)</color>", subStr, sCompareStr)
end
end
end
mapWord[word] = subStr
@@ -1796,6 +1845,7 @@ local GetCharDamageResult = function(tbCharId)
local actorInfo = {}
actorInfo.nCharId = nCharId
actorInfo.nDamage = nDamage
actorInfo.nSkinId = PlayerData.Build:GetBattleCharSkinId(nCharId)
table.insert(tbResult, actorInfo)
end
return tbResult
@@ -1838,7 +1888,8 @@ local CheckIsTipsPanel = function(nPanelId)
PanelId.BtnTips,
PanelId.MonsterTips,
PanelId.EquipmentTips,
PanelId.DiscSkillTips
PanelId.DiscSkillTips,
PanelId.DescTips
}
return table.indexof(tbAllTipsPanelId, nPanelId) > 0
end
@@ -2140,7 +2191,7 @@ local GetToolBoxUrl = function()
url = "https://staging-web-toolbox.stellasora.jp"
end
elseif clientPublishRegion == CS.ClientPublishRegion.US then
if sChannel == "EN" then
if sChannel == "EN" or sChannel == "EN_Steam" then
result = true
url = "https://toolbox.stellasora.global"
else
@@ -2181,7 +2232,7 @@ local GetExchangeCodeUrl = function()
url = "https://staging-web.stellasora.jp/serial_code?type=webview"
end
elseif clientPublishRegion == CS.ClientPublishRegion.US then
if sChannel == "EN" then
if sChannel == "EN" or sChannel == "EN_Steam" then
result = true
url = "https://stellasora.global/gift?type=webview"
else
@@ -2217,6 +2268,7 @@ _G.UTILS = {
GetParamStrLen = GetParamStrLen,
ParseByteString = ParseByteString,
IsBitSet = IsBitSet,
SetBit = SetBit,
GetBuildAttributeId = GetBuildAttributeId,
GetCharacterAttributeId = GetCharacterAttributeId,
GetDiscAttributeId = GetDiscAttributeId,