From fb98bcdc163685bd94db9c51c2b6a37e05a471c7 Mon Sep 17 00:00:00 2001 From: SL1900 <43700351+SL1900@users.noreply.github.com> Date: Thu, 23 Jul 2026 17:00:00 +0900 Subject: [PATCH] Hotfix - 1.13.0.126 EN: 1.13.0.126 CN: 1.13.0.126 JP: 1.13.0.130 KR: 1.13.0.132 --- data/bin/Item.json | 8 +-- data/bin/TravelerDuelChallengeDifficulty.json | 4 +- data/bin/item.bytes | Bin 245278 -> 245278 bytes .../bin/travelerduelchallengedifficulty.bytes | Bin 3481 -> 3482 bytes data/language/en_us/soldierstrategycard.json | 4 +- data/language/ja_jp/soldierpartner.json | 2 +- data/language/ja_jp/soldierstartercard.json | 4 +- data/language/ja_jp/uitext.json | 2 +- data/language/ko_kr/miningcontrol.json | 2 +- data/language/ko_kr/miningquestgroup.json | 4 +- data/language/ko_kr/soldierpartner.json | 10 +-- data/language/ko_kr/soldierstrategycard.json | 4 +- data/language/ko_kr/talent.json | 2 +- data/language/zh_cn/uitext.json | 2 +- lua/game/spine/spinemanager.lua | 22 +++--- lua/game/ui/avg/_kr/config/stev_10_02.lua | 2 +- .../icecreamlevelgroupctrl.lua | 2 +- .../icecreamlevelsselectctrl.lua | 7 +- .../play/icecreamresultctrl.lua | 6 +- .../play/icecreamtruckgamectrl.lua | 2 + .../play/icecreamtruckpausectrl.lua | 12 ++-- .../play_penguincard/penguincarditemctrl.lua | 68 +++++++++++------- .../ui/soldier/battle/soldierroominfoctrl.lua | 1 + .../sandtable/soldiersandtablectrl.lua | 3 +- lua/game/ui/tracehunt/tracehuntctrl.lua | 6 +- .../soldier/playersoldierrecommenddata.lua | 3 + versions.txt | 8 +-- 27 files changed, 101 insertions(+), 89 deletions(-) diff --git a/data/bin/Item.json b/data/bin/Item.json index 71d12760..500c06aa 100644 --- a/data/bin/Item.json +++ b/data/bin/Item.json @@ -14412,7 +14412,7 @@ "Literary": "Item.514225.3", "Type": 6, "Stype": 41, - "Rarity": 1, + "Rarity": 2, "Stack": true, "PositionLimit": 9999, "ExpireType": 0, @@ -14433,7 +14433,7 @@ "Literary": "Item.514226.3", "Type": 6, "Stype": 41, - "Rarity": 2, + "Rarity": 1, "Stack": true, "PositionLimit": 9999, "ExpireType": 0, @@ -14538,7 +14538,7 @@ "Literary": "Item.514231.3", "Type": 6, "Stype": 41, - "Rarity": 1, + "Rarity": 2, "Stack": true, "PositionLimit": 9999, "ExpireType": 0, @@ -14580,7 +14580,7 @@ "Literary": "Item.514233.3", "Type": 6, "Stype": 41, - "Rarity": 2, + "Rarity": 1, "Stack": true, "PositionLimit": 9999, "ExpireType": 0, diff --git a/data/bin/TravelerDuelChallengeDifficulty.json b/data/bin/TravelerDuelChallengeDifficulty.json index 01a64546..0999f004 100644 --- a/data/bin/TravelerDuelChallengeDifficulty.json +++ b/data/bin/TravelerDuelChallengeDifficulty.json @@ -476,7 +476,7 @@ }, "40": { "Id": 40, - "Attr": 60, + "Attr": 40, "EffectId": [ 29121040, 29122040, @@ -596,7 +596,7 @@ }, "50": { "Id": 50, - "Attr": 100, + "Attr": 150, "EffectId": [ 29121050, 29122050, diff --git a/data/bin/item.bytes b/data/bin/item.bytes index f6fc51dd8286749fbc9d1e7b15e360280156a2c3..28535c36f55a39177da4680067c4d7019c1bdc02 100644 GIT binary patch delta 86 zcmbRDhi~2=zJ@J~6MQG{+AKBwfH$Mi^a;&C;+!v|_4EjLMvcjJ;u70E{TS7lrgOe# m1S{d6tj{hoeN6!4&dFXpx|0*G2(~W{WCUWS?TZ7Mt8)OZ*B|i! delta 84 zcmbRDhi~2=zJ@J~6MQFo-IJW=#>hW?9W#^Y^s~N%=9td-^e|F-?zf mXVjRi$1Xa3O#tK0$v@9(O?LPo(!My55r~<#FAij`&H(@hRUShC diff --git a/data/bin/travelerduelchallengedifficulty.bytes b/data/bin/travelerduelchallengedifficulty.bytes index aae0796fc779c7382b203006ecf9c0ede4c7bf6a..aa47c28ec7e4a67481007f482041a6edd1a24372 100644 GIT binary patch delta 27 jcmbO!Jxh8+2rHw;=1|rEMs`^S4kLkSjGI@py<-CaX50r? delta 26 icmbOwJyUu^2rHw_=1|rEMm8A+4kLk-&1=}+u>k;L0|z$% diff --git a/data/language/en_us/soldierstrategycard.json b/data/language/en_us/soldierstrategycard.json index eaeec88c..ab04a49f 100644 --- a/data/language/en_us/soldierstrategycard.json +++ b/data/language/en_us/soldierstrategycard.json @@ -84,8 +84,8 @@ "SoldierStrategyCard.2010215.2": "2★ pieces can appear in the Shop.", "SoldierStrategyCard.2010215.3": "2★ pieces can appear in the Shop.", "SoldierStrategyCard.2010216.1": "Romantic Lineup", - "SoldierStrategyCard.2010216.2": "Once the Shop reaches Lv. 7, upon entering each new node, transform the leftmost piece on the bench into a random piece of the same cost.", - "SoldierStrategyCard.2010216.3": "Once the Shop reaches Lv. 7, upon entering each new node, transform the leftmost piece on the bench into a random piece of the same cost.", + "SoldierStrategyCard.2010216.2": "Once the Shop reaches Lv. 8, upon entering each new node, transform the leftmost piece on the bench into a random piece of the same cost.", + "SoldierStrategyCard.2010216.3": "Once the Shop reaches Lv. 8, upon entering each new node, transform the leftmost piece on the bench into a random piece of the same cost.", "SoldierStrategyCard.2010217.1": "Fortune Overload", "SoldierStrategyCard.2010217.2": "Automatically sells all deployed pieces for double their value, and halves the current HP of all pieces for the next 3 battles.", "SoldierStrategyCard.2010217.3": "Automatically sells all deployed pieces for double their value, and halves the current HP of all pieces for the next 3 battles.", diff --git a/data/language/ja_jp/soldierpartner.json b/data/language/ja_jp/soldierpartner.json index d0651c81..7844402c 100644 --- a/data/language/ja_jp/soldierpartner.json +++ b/data/language/ja_jp/soldierpartner.json @@ -78,7 +78,7 @@ "SoldierPartner.11701.1": "魅力全開", "SoldierPartner.11701.2": "毎回「魅惑」を1付与(上限2)", "SoldierPartner.11702.1": "魅力全開", - "SoldierPartner.11702.2": "毎回「魅惑」を1付与(上限5)", + "SoldierPartner.11702.2": "毎回「魅惑」を2付与(上限5)", "SoldierPartner.11703.1": "魅力全開", "SoldierPartner.11703.2": "「魅惑」の上限数がなくなる", "SoldierPartner.11801.1": "数は力なり", diff --git a/data/language/ja_jp/soldierstartercard.json b/data/language/ja_jp/soldierstartercard.json index 51c30dda..485ff73c 100644 --- a/data/language/ja_jp/soldierstartercard.json +++ b/data/language/ja_jp/soldierstartercard.json @@ -111,8 +111,8 @@ "SoldierStarterCard.1010138.2": "挑戦開始時に理性が20になり、賢者コインを20枚獲得する。", "SoldierStarterCard.1010138.3": "挑戦開始時に理性が20になり、賢者コインを20枚獲得する。", "SoldierStarterCard.1010139.1": "富の採掘", - "SoldierStarterCard.1010139.2": "非人間型ユニット以外のユニットを☆2に合成するたび、賢者コインを1枚獲得する。", - "SoldierStarterCard.1010139.3": "非人間型ユニット以外のユニットを☆2に合成するたび、賢者コインを1枚獲得する。", + "SoldierStarterCard.1010139.2": "非人間型ユニットを☆2に合成するたび、賢者コインを1枚獲得する。", + "SoldierStarterCard.1010139.3": "非人間型ユニットを☆2に合成するたび、賢者コインを1枚獲得する。", "SoldierStarterCard.1010140.1": "広く賢才を募る", "SoldierStarterCard.1010140.2": "1コストユニットを5体購入するたび、賢者コインを3枚獲得する。", "SoldierStarterCard.1010140.3": "1コストユニットを5体購入するたび、賢者コインを3枚獲得する。" diff --git a/data/language/ja_jp/uitext.json b/data/language/ja_jp/uitext.json index 361cde60..50e88276 100644 --- a/data/language/ja_jp/uitext.json +++ b/data/language/ja_jp/uitext.json @@ -3037,7 +3037,7 @@ "UIText.Soldier_FinishTitle.1": "撤退", "UIText.Soldier_Go.1": "挑戦", "UIText.Soldier_GoldTips_BasicReward.1": "基本報酬", - "UIText.Soldier_GoldTips_Desc.1": "賢者のコインはユニットの購入、チームレベルのアップグレード、ショップ更新に使用する通貨です。\nノードごとのコイン収入=基礎コインド+連勝/連敗ゴールド+利息\nラウンド開始時に{0}コインを所持するごとに、{1}コインの利息を獲得できる(上限{2}コイン)。", + "UIText.Soldier_GoldTips_Desc.1": "賢者のコインはユニットの購入、チームレベルのアップグレード、ショップ更新に使用する通貨です。\nノードごとのコイン収入=基礎コイン+連勝/連敗コイン+利息\nラウンド開始時に{0}コインを所持するごとに、{1}コインの利息を獲得できる(上限{2}コイン)。", "UIText.Soldier_GoldTips_Income.1": "獲得予想", "UIText.Soldier_GoldTips_Interest.1": "利息", "UIText.Soldier_GoldTips_Losingingstreak.1": "連敗", diff --git a/data/language/ko_kr/miningcontrol.json b/data/language/ko_kr/miningcontrol.json index 8f33747a..780d3be3 100644 --- a/data/language/ko_kr/miningcontrol.json +++ b/data/language/ko_kr/miningcontrol.json @@ -1,3 +1,3 @@ { - "MiningControl.400014.1": "\u000b「이벤트 기간」\u000b2026/08/04 13:00~2026/08/11 4:59 \u000b\u000b「참여 조건」 \u000b권한 레벨 5 이상\u000b\u000b「이벤트 안내」 \u000b1. 이벤트 임무를 완료하면 행운의 보물삽을 획득할 수 있습니다. \u000b2. 보물삽을 사용해 포인트를 획득하고, 이번 시즌 보상과 교환할 수 있습니다." + "MiningControl.400014.1": "\u000b「이벤트 기간」\u000b2026/08/04 13:00~2026/08/11 04:59 \u000b\u000b「참여 조건」 \u000b권한 레벨 5 이상\u000b\u000b「이벤트 안내」 \u000b1. 이벤트 임무를 완료하면 행운의 보물삽을 획득할 수 있습니다. \u000b2. 보물삽을 사용해 포인트를 획득하고, 이번 시즌 보상과 교환할 수 있습니다." } \ No newline at end of file diff --git a/data/language/ko_kr/miningquestgroup.json b/data/language/ko_kr/miningquestgroup.json index df621e33..910f1bc2 100644 --- a/data/language/ko_kr/miningquestgroup.json +++ b/data/language/ko_kr/miningquestgroup.json @@ -1,5 +1,5 @@ { "MiningQuestGroup.101.1": "일일 출석", - "MiningQuestGroup.102.1": "비 오듯 흐르는 땀", - "MiningQuestGroup.103.1": "수확의 시간" + "MiningQuestGroup.102.1": "근면성실", + "MiningQuestGroup.103.1": "수확 시간" } \ No newline at end of file diff --git a/data/language/ko_kr/soldierpartner.json b/data/language/ko_kr/soldierpartner.json index e013a26d..152a3c56 100644 --- a/data/language/ko_kr/soldierpartner.json +++ b/data/language/ko_kr/soldierpartner.json @@ -8,11 +8,11 @@ "SoldierPartner.10201.1": "요로즈 택배", "SoldierPartner.10201.2": "매회 「물안개」 1스택 부여. 최대 5스택 중첩", "SoldierPartner.10202.1": "요로즈 택배", - "SoldierPartner.10202.2": "매회 「물안개」 2스택 부여. 최대 10스택 중첩. 「물안개」 10스택 달성 시 「응결」 1스택으로 전환. \n「응결」: 기절하고, 받는 피해 50% 증가. 5초간 지속.", + "SoldierPartner.10202.2": "매회 「물안개」 2스택 부여. 최대 10스택 중첩. 「물안개」 10스택 달성 시 「응결」 1스택으로 전환. \n「응결」: 기절하고, 받는 피해 50% 증가. 5초간 지속", "SoldierPartner.10301.1": "하나사키 여단", "SoldierPartner.10301.2": " 6 획득, 3% 증가", "SoldierPartner.10302.1": "하나사키 여단", - "SoldierPartner.10302.2": " 12 획득, 5% 증가.", + "SoldierPartner.10302.2": " 12 획득, 5% 증가", "SoldierPartner.10401.1": "은혜의지", "SoldierPartner.10401.2": "「제재의 낙인」 1스택 부여, 최대 2스택 중첩", "SoldierPartner.10402.1": "은혜의지", @@ -24,11 +24,11 @@ "SoldierPartner.10502.1": "돌아가는 톱니바퀴", "SoldierPartner.10502.2": " 5% 증가, 20% 증가\n돌아가는 톱니바퀴 말이 스킬을 시전할 때마다 메인 슬롯에 있는 말 1개가 「무나 쉴드」 획득, 최대 1스택 중첩. \n지원 슬롯에 있는 돌아가는 톱니바퀴 말이 스킬을 3회 시전할 때마다 「무나 차징」을 1회 발동. \n「무나 쉴드」: 자신의 최대 HP 5%의 보호막, 6초간 지속. \n「무나 차징」: 모든 말 최대 HP 3% 회복", "SoldierPartner.10601.1": "제국 호위대", - "SoldierPartner.10601.2": "전투 시작 시 20 증가, 20% 증가.", + "SoldierPartner.10601.2": "전투 시작 시 20 증가, 20% 증가", "SoldierPartner.10602.1": "제국 호위대", - "SoldierPartner.10602.2": "전투 시작 시 60 증가, 50% 증가.", + "SoldierPartner.10602.2": "전투 시작 시 60 증가, 50% 증가", "SoldierPartner.10603.1": "제국 호위대", - "SoldierPartner.10603.2": "전투 시작 시 50%(최소 60), 50% 획득.\n디버프를 보유한 적 말 공격 시 피해 50% 증가", + "SoldierPartner.10603.2": "전투 시작 시 50%(최소 60), 50% 획득\n디버프를 보유한 적 말 공격 시 피해 50% 증가", "SoldierPartner.10604.1": "제국 호위대", "SoldierPartner.10604.2": "전투 시작 시 50%(최소60), 50% 획득\n디버프를 보유한 적 말 공격 시 피해 50% 증가\n전투 결산 시 참전한 제국 호위대 말 1개마다 금화 1개 추가 획득", "SoldierPartner.10701.1": "지리 협회", diff --git a/data/language/ko_kr/soldierstrategycard.json b/data/language/ko_kr/soldierstrategycard.json index df8a1455..c90df20f 100644 --- a/data/language/ko_kr/soldierstrategycard.json +++ b/data/language/ko_kr/soldierstrategycard.json @@ -84,8 +84,8 @@ "SoldierStrategyCard.2010215.2": "상점에서 일정 확률로 ★2 말 1개 출현", "SoldierStrategyCard.2010215.3": "상점에서 일정 확률로 ★2 말 1개 출현", "SoldierStrategyCard.2010216.1": "낭만의 조합", - "SoldierStrategyCard.2010216.2": "상점 7레벨 이상 달성 후, 새로운 노드 진입 시마다 대기석 가장 왼쪽의 말이 같은 코스트의 랜덤 말로 변경", - "SoldierStrategyCard.2010216.3": "상점 7레벨 이상 달성 후, 새로운 노드 진입 시마다 대기석 가장 왼쪽의 말이 같은 코스트의 랜덤 말로 변경", + "SoldierStrategyCard.2010216.2": "상점 8레벨 이상 달성 후, 새로운 노드 진입 시마다 대기석 가장 왼쪽의 말이 같은 코스트의 랜덤 말로 변경", + "SoldierStrategyCard.2010216.3": "상점 8레벨 이상 달성 후, 새로운 노드 진입 시마다 대기석 가장 왼쪽의 말이 같은 코스트의 랜덤 말로 변경", "SoldierStrategyCard.2010217.1": "넘치는 부", "SoldierStrategyCard.2010217.2": "필드의 모든 말을 두 배 가격으로 자동 판매, 이후 3번의 전투 동안 출전하는 말의 HP가 절반으로 감소", "SoldierStrategyCard.2010217.3": "필드의 모든 말을 두 배 가격으로 자동 판매, 이후 3번의 전투 동안 출전하는 말의 HP가 절반으로 감소", diff --git a/data/language/ko_kr/talent.json b/data/language/ko_kr/talent.json index 5a09337b..1a255563 100644 --- a/data/language/ko_kr/talent.json +++ b/data/language/ko_kr/talent.json @@ -3974,7 +3974,7 @@ "Talent.1600342.1": "필살기 피해 증가", "Talent.1600342.2": "필살기 피해가 &Param1& 증가한다.", "Talent.1600348.1": "적당한 행복", - "Talent.1600348.2": "팀 전체가 ##물 속성 표식#1018#을 보유한 목표에게 피해를 입힌 후 윌로(여름)이 입히는 치명타 피해가 &Param1& 증가한다. &Param2&초간 지속된다.", + "Talent.1600348.2": "팀 전체가 ##물 속성 표식#1018#을 보유한 목표에게 피해를 입힌 후 윌로가 입히는 치명타 피해가 &Param1& 증가한다. &Param2&초간 지속된다.", "Talent.1600449.1": "공격 강화", "Talent.1600449.2": "기본 공격이 &Param1& 증가한다.", "Talent.1600450.1": "방어 강화", diff --git a/data/language/zh_cn/uitext.json b/data/language/zh_cn/uitext.json index 9854b28e..5b803358 100644 --- a/data/language/zh_cn/uitext.json +++ b/data/language/zh_cn/uitext.json @@ -900,7 +900,7 @@ "UIText.Double_Drops_Quest_Title.1": "奖励任务", "UIText.Double_Drops_Triple_Count_1.1": "今日三倍奖励次数:{0}/{1}", "UIText.Double_Drops_Triple_Count_2.1": "今日三倍奖励次数", - "UIText.Double_Drops_WorldClass_Lock.1": "权限等级{0}解锁", + "UIText.Double_Drops_WorldClass_Lock.1": "权限等级{0}解锁", "UIText.DropRate_0.1": "掉落", "UIText.DropRate_1.1": "罕见掉落", "UIText.DropRate_2.1": "小概率掉落", diff --git a/lua/game/spine/spinemanager.lua b/lua/game/spine/spinemanager.lua index 45bb56e5..213838b4 100644 --- a/lua/game/spine/spinemanager.lua +++ b/lua/game/spine/spinemanager.lua @@ -3,17 +3,12 @@ local GameResourceLoader = require("Game.Common.Resource.GameResourceLoader") local ResTypeAny = GameResourceLoader.ResType.Any local typeof = typeof local mapInstance = {} -local mapPrefab = {} local nNextId = 1 local LoadPrefab = function(sPath) - local prefab = mapPrefab[sPath] + prefab = GameResourceLoader.LoadAsset(ResTypeAny, Settings.AB_ROOT_PATH .. sPath, typeof(Object)) if prefab == nil then - prefab = GameResourceLoader.LoadAsset(ResTypeAny, Settings.AB_ROOT_PATH .. sPath, typeof(Object)) - if prefab == nil then - printError("[SpineManager] 加载预制体失败, path = " .. tostring(sPath)) - return nil - end - mapPrefab[sPath] = prefab + printError("[SpineManager] 加载预制体失败, path = " .. tostring(sPath)) + return nil end return prefab end @@ -59,7 +54,8 @@ function SpineManager.Create(nId, trParent) skel = skeleton, sPath = sPath, bPaused = false, - fLastTimeScale = 1 + fLastTimeScale = 1, + bBound = false } return id end @@ -80,7 +76,8 @@ function SpineManager.Bind(go) skel = skeleton, sPath = nil, bPaused = false, - fLastTimeScale = 1 + fLastTimeScale = 1, + bBound = true } return id end @@ -102,15 +99,12 @@ function SpineManager.Unbind(id) end function SpineManager.ClearAll() for _, tb in pairs(mapInstance) do - if tb.go ~= nil and tb.go:IsNull() == false then + if tb.bBound ~= true and tb.go ~= nil and tb.go:IsNull() == false then destroyImmediate(tb.go) end end mapInstance = {} end -function SpineManager.ReleasePrefabCache() - mapPrefab = {} -end function SpineManager.PlayAnim(id, sAnimName, bLoop, nTrackIndex) local tb = GetInstance(id) if tb == nil or tb.skel == nil then diff --git a/lua/game/ui/avg/_kr/config/stev_10_02.lua b/lua/game/ui/avg/_kr/config/stev_10_02.lua index 77a18390..d22c103a 100644 --- a/lua/game/ui/avg/_kr/config/stev_10_02.lua +++ b/lua/game/ui/avg/_kr/config/stev_10_02.lua @@ -13207,7 +13207,7 @@ return { "", false, "", - "코하쿠, 나개 가르쳐 줄게~", + "코하쿠, 내가 가르쳐 줄게~", "" } }, diff --git a/lua/game/ui/play_icecreamtruck/icecreamlevelgroupctrl.lua b/lua/game/ui/play_icecreamtruck/icecreamlevelgroupctrl.lua index cccf08b1..e299caa2 100644 --- a/lua/game/ui/play_icecreamtruck/icecreamlevelgroupctrl.lua +++ b/lua/game/ui/play_icecreamtruck/icecreamlevelgroupctrl.lua @@ -197,7 +197,7 @@ function IceCreamLevelGroupCtrl:RegisterNewRedNode(nActId, nIndex) RedDotManager.RegisterNode(RedDotDefine.Activity_IceCreamTruck_NewType, {nActId, nIndex}, self._mapNode.redH) end function IceCreamLevelGroupCtrl:UnRegisterNewRedNode() - RedDotManager.UnRegisterNode(RedDotDefine.Activity_IceCreamTruck_NewLevel, { + RedDotManager.UnRegisterNode(RedDotDefine.Activity_IceCreamTruck_NewType, { nActId, nIndex }, self._mapNode.redH) diff --git a/lua/game/ui/play_icecreamtruck/icecreamlevelsselectctrl.lua b/lua/game/ui/play_icecreamtruck/icecreamlevelsselectctrl.lua index f7b7a058..ab81959f 100644 --- a/lua/game/ui/play_icecreamtruck/icecreamlevelsselectctrl.lua +++ b/lua/game/ui/play_icecreamtruck/icecreamlevelsselectctrl.lua @@ -1,5 +1,6 @@ local TimerManager = require("GameCore.Timer.TimerManager") local IceCreamLevelsSelectCtrl = class("IceCreamLevelsSelectCtrl", BaseCtrl) +local SpineManager = require("Game.Spine.SpineManager") IceCreamLevelsSelectCtrl._mapNodeConfig = { TopBar = { sNodeName = "TopBarPanel", @@ -44,6 +45,10 @@ function IceCreamLevelsSelectCtrl:OnDisable() TimerManager.Remove(self._tmrSwitchDetail, false) self._tmrSwitchDetail = nil end + SpineManager.ClearAll() +end +function IceCreamLevelsSelectCtrl:OnDestroy() + SpineManager.ClearAll() end function IceCreamLevelsSelectCtrl:InitLevel(nActId) self.IceCreamActData = PlayerData.Activity:GetActivityDataById(nActId) @@ -73,8 +78,6 @@ end function IceCreamLevelsSelectCtrl:OnRefreshLevelGroup(gridIndex, tbLevels) self._mapNode.LevelGroup[gridIndex]:InitData(self.nActId, gridIndex, tbLevels, self) end -function IceCreamLevelsSelectCtrl:OnDestroy() -end function IceCreamLevelsSelectCtrl:OpenLevelDetail_Animator(nTypeIndex) if nTypeIndex < 1 or 4 < nTypeIndex then return diff --git a/lua/game/ui/play_icecreamtruck/play/icecreamresultctrl.lua b/lua/game/ui/play_icecreamtruck/play/icecreamresultctrl.lua index 11cb9134..0d547852 100644 --- a/lua/game/ui/play_icecreamtruck/play/icecreamresultctrl.lua +++ b/lua/game/ui/play_icecreamtruck/play/icecreamresultctrl.lua @@ -44,14 +44,12 @@ IceCreamResultCtrl._mapNodeConfig = { btn_InRestart = { sComponentName = "NaviButton", callback = "OnBtn_InRestart", - sAction = "Giveup", - sActionIconType = "Dark" + sAction = "Giveup" }, btn_InNext = { sComponentName = "NaviButton", callback = "OnBtn_InNext", - sAction = "Giveup", - sActionIconType = "Dark" + sAction = "Giveup" }, txtBtnClose = { nCount = 4, diff --git a/lua/game/ui/play_icecreamtruck/play/icecreamtruckgamectrl.lua b/lua/game/ui/play_icecreamtruck/play/icecreamtruckgamectrl.lua index fb56c385..599c429f 100644 --- a/lua/game/ui/play_icecreamtruck/play/icecreamtruckgamectrl.lua +++ b/lua/game/ui/play_icecreamtruck/play/icecreamtruckgamectrl.lua @@ -257,6 +257,7 @@ function IceCreamTruckGameCtrl:OnDisable() self.timerFeverCutinDeactivate = nil end self._nRestartGen = (self._nRestartGen or 0) + 1 + SpineManager.ClearAll() end function IceCreamTruckGameCtrl:ReInitData() self:InitData() @@ -1786,6 +1787,7 @@ function IceCreamTruckGameCtrl:_TeardownForRestart() self:_GuideClearGarbage() self._goGarbageGuide = nil self:UnregisterCondimentSpines() + self:_UnregisterFeverCatSpine() self:_DestroyAllSauceInstances() end function IceCreamTruckGameCtrl:_ClearSafeHitQueue() diff --git a/lua/game/ui/play_icecreamtruck/play/icecreamtruckpausectrl.lua b/lua/game/ui/play_icecreamtruck/play/icecreamtruckpausectrl.lua index 6ffbe92b..8d47bba3 100644 --- a/lua/game/ui/play_icecreamtruck/play/icecreamtruckpausectrl.lua +++ b/lua/game/ui/play_icecreamtruck/play/icecreamtruckpausectrl.lua @@ -24,20 +24,17 @@ IceCreamTruckPauseCtrl._mapNodeConfig = { btn_exit = { sComponentName = "NaviButton", callback = "OnBtnClick_Exit", - sAction = "Giveup", - sActionIconType = "Dark" + sAction = "Giveup" }, btn_restart = { sComponentName = "NaviButton", callback = "OnBtnClick_Restart", - sAction = "Retry", - sActionIconType = "Dark" + sAction = "Retry" }, btn_continue = { sComponentName = "NaviButton", callback = "OnBtnClick_Continue", - sAction = "Back", - sActionIconType = "Dark" + sAction = "Back" }, txt_SettleScoreTitle = { sComponentName = "TMP_Text", @@ -63,8 +60,7 @@ IceCreamTruckPauseCtrl._mapNodeConfig = { btn_dic = { sComponentName = "NaviButton", callback = "OnBtnClick_OpenDic", - sAction = "Depot", - sActionIconType = "Dark" + sAction = "Depot" }, txt_dic = { nCount = 2, diff --git a/lua/game/ui/play_penguincard/penguincarditemctrl.lua b/lua/game/ui/play_penguincard/penguincarditemctrl.lua index 61129d9a..1ad23d27 100644 --- a/lua/game/ui/play_penguincard/penguincarditemctrl.lua +++ b/lua/game/ui/play_penguincard/penguincarditemctrl.lua @@ -32,7 +32,6 @@ PenguinCardItemCtrl._mapEventConfig = { PenguinCardGrowth = "OnEvent_Growth" } function PenguinCardItemCtrl:Refresh_Select(mapCard, nSelectIndex, bRoll) - self.mapCard = mapCard self.nSelectIndex = nSelectIndex self._mapNode.txtLevel.gameObject:SetActive(false) self._mapNode.txtName.gameObject:SetActive(true) @@ -51,10 +50,10 @@ function PenguinCardItemCtrl:Refresh_Select(mapCard, nSelectIndex, bRoll) self._mapNode.AnimRoot:Play("PengUinCard_Bd_Shopin", 0, 0) end function PenguinCardItemCtrl:Refresh_Slot(mapCard) - self.mapCard = mapCard + self.nSlotIndex = mapCard.nSlotIndex self.nEffectCount = 0 self.bWaitPlay = false - local bAble = self.mapCard:GetActiveState() + local bAble = mapCard:GetActiveState() self._mapNode.txtLevel.gameObject:SetActive(bAble) self._mapNode.txtName.gameObject:SetActive(false) self._mapNode.imgBg:SetActive(false) @@ -76,7 +75,11 @@ function PenguinCardItemCtrl:Refresh_Slot(mapCard) end end function PenguinCardItemCtrl:RefreshUpgrade(nGroupId) - if self.mapCard.nGroupId == nGroupId then + if self.nSelectIndex == nil then + return + end + local mapCard = self._panel.mapLevel.tbSelectablePenguinCard[self.nSelectIndex] + if mapCard.nGroupId == nGroupId then self._mapNode.imgUp:SetActive(false) end end @@ -145,40 +148,44 @@ function PenguinCardItemCtrl:PlayTriggerAni() self:PlayEffectAni() end function PenguinCardItemCtrl:PlayEffectAni() + if self.nSlotIndex == nil then + return + end + local mapCard = self._panel.mapLevel.tbPenguinCard[self.nSlotIndex] if self.nEffectCount == nil then self.nEffectCount = 0 end local sDesc = "" - if self.mapCard.nEffectType == GameEnum.PenguinCardEffectType.IncreaseBasicChips then - local nValue = self.mapCard.tbEffectParam[1] - if self.mapCard.nGrowthType ~= GameEnum.PenguinCardGrowthType.None then - nValue = nValue + self.mapCard.nGrowthLayer * self.mapCard.tbGrowthEffectParam[1] + if mapCard.nEffectType == GameEnum.PenguinCardEffectType.IncreaseBasicChips then + local nValue = mapCard.tbEffectParam[1] + if mapCard.nGrowthType ~= GameEnum.PenguinCardGrowthType.None then + nValue = nValue + mapCard.nGrowthLayer * mapCard.tbGrowthEffectParam[1] end self.nEffectCount = self.nEffectCount + nValue sDesc = orderedFormat(ConfigTable.GetUIText("PenguinCard_Trigger_AddScore"), self.nEffectCount) - elseif self.mapCard.nEffectType == GameEnum.PenguinCardEffectType.IncreaseMultiplier then - local nValue = self.mapCard.tbEffectParam[1] - if self.mapCard.nGrowthType ~= GameEnum.PenguinCardGrowthType.None then - nValue = nValue + self.mapCard.nGrowthLayer * self.mapCard.tbGrowthEffectParam[1] + elseif mapCard.nEffectType == GameEnum.PenguinCardEffectType.IncreaseMultiplier then + local nValue = mapCard.tbEffectParam[1] + if mapCard.nGrowthType ~= GameEnum.PenguinCardGrowthType.None then + nValue = nValue + mapCard.nGrowthLayer * mapCard.tbGrowthEffectParam[1] end self.nEffectCount = self.nEffectCount + nValue sDesc = orderedFormat(ConfigTable.GetUIText("PenguinCard_Trigger_AddRatio"), self.nEffectCount) - elseif self.mapCard.nEffectType == GameEnum.PenguinCardEffectType.MultiMultiplier then - local nValue = self.mapCard.tbEffectParam[1] - if self.mapCard.nGrowthType ~= GameEnum.PenguinCardGrowthType.None then - nValue = nValue + self.mapCard.nGrowthLayer * self.mapCard.tbGrowthEffectParam[1] + elseif mapCard.nEffectType == GameEnum.PenguinCardEffectType.MultiMultiplier then + local nValue = mapCard.tbEffectParam[1] + if mapCard.nGrowthType ~= GameEnum.PenguinCardGrowthType.None then + nValue = nValue + mapCard.nGrowthLayer * mapCard.tbGrowthEffectParam[1] end self.nEffectCount = self.nEffectCount + nValue sDesc = orderedFormat(ConfigTable.GetUIText("PenguinCard_Trigger_MultiRatio"), self.nEffectCount) end self._mapNode.goTrigger:SetActive(sDesc ~= "") - if self.mapCard.nEffectType == GameEnum.PenguinCardEffectType.IncreaseBasicChips then + if mapCard.nEffectType == GameEnum.PenguinCardEffectType.IncreaseBasicChips then self._mapNode.txtTrigger[1].gameObject:SetActive(false) self._mapNode.txtTrigger[2].gameObject:SetActive(true) NovaAPI.SetTMPText(self._mapNode.txtTrigger[2], sDesc) self._mapNode.aniTrigger[2]:Play("PengUinCard_Bd_Trigger_in", 0, 0) self._mapNode.aniTrigger[2].speed = self._panel.mapLevel.nSpeed - elseif self.mapCard.nEffectType == GameEnum.PenguinCardEffectType.IncreaseMultiplier or self.mapCard.nEffectType == GameEnum.PenguinCardEffectType.MultiMultiplier then + elseif mapCard.nEffectType == GameEnum.PenguinCardEffectType.IncreaseMultiplier or mapCard.nEffectType == GameEnum.PenguinCardEffectType.MultiMultiplier then self._mapNode.txtTrigger[1].gameObject:SetActive(true) self._mapNode.txtTrigger[2].gameObject:SetActive(false) NovaAPI.SetTMPText(self._mapNode.txtTrigger[1], sDesc) @@ -193,26 +200,37 @@ end function PenguinCardItemCtrl:OnDisable() end function PenguinCardItemCtrl:OnBtnClick_OpenInfo() - if self.nSelectIndex and self._panel.mapLevel.bSelectedPenguinCard then - return + if self.nSelectIndex and not self._panel.mapLevel.bSelectedPenguinCard then + local mapCard = self._panel.mapLevel.tbSelectablePenguinCard[self.nSelectIndex] + EventManager.Hit("PenguinCard_OpenInfo", mapCard, self.nSelectIndex) + elseif self.nSlotIndex then + local mapCard = self._panel.mapLevel.tbPenguinCard[self.nSlotIndex] + EventManager.Hit("PenguinCard_OpenInfo", mapCard) end - EventManager.Hit("PenguinCard_OpenInfo", self.mapCard, self.nSelectIndex) end function PenguinCardItemCtrl:OnEvent_Triggered(nSlotIndex) - if not (self.mapCard and self.mapCard ~= 0 and self.mapCard.nSlotIndex) or nSlotIndex ~= self.mapCard.nSlotIndex then + if self.nSlotIndex == nil then return end - if self.mapCard.nTriggerPhase == GameEnum.PenguinCardTriggerPhase.Settlement then + local mapCard = self._panel.mapLevel.tbPenguinCard[self.nSlotIndex] + if mapCard == 0 or nSlotIndex ~= mapCard.nSlotIndex then + return + end + if mapCard.nTriggerPhase == GameEnum.PenguinCardTriggerPhase.Settlement then self.bWaitPlay = true return end self:PlayTriggerAni() end function PenguinCardItemCtrl:OnEvent_Growth(nSlotIndex) - if not (self.mapCard and self.mapCard ~= 0 and self.mapCard.nSlotIndex) or nSlotIndex ~= self.mapCard.nSlotIndex then + if self.nSlotIndex == nil then return end - local bAble = self.mapCard:GetActiveState() + local mapCard = self._panel.mapLevel.tbPenguinCard[self.nSlotIndex] + if mapCard == 0 or nSlotIndex ~= mapCard.nSlotIndex then + return + end + local bAble = mapCard:GetActiveState() self._mapNode.goDisable:SetActive(not bAble) self._mapNode.txtLevel.gameObject:SetActive(bAble) end diff --git a/lua/game/ui/soldier/battle/soldierroominfoctrl.lua b/lua/game/ui/soldier/battle/soldierroominfoctrl.lua index 43b19ba5..a4a61388 100644 --- a/lua/game/ui/soldier/battle/soldierroominfoctrl.lua +++ b/lua/game/ui/soldier/battle/soldierroominfoctrl.lua @@ -529,6 +529,7 @@ function SoldierRoomInfoCtrl:OnEvent_ClearSoldier() inst.imgDamage.sizeDelta = Vector2(0, 16) end end + self.tbDamage = {} end function SoldierRoomInfoCtrl:CacheSoldierEnergyData(dataId, nEnergy, nMaxEnergy, nRecoverRate, nDeath) self.tbCacheSoldierEnergy[dataId] = { diff --git a/lua/game/ui/soldier/sandtable/soldiersandtablectrl.lua b/lua/game/ui/soldier/sandtable/soldiersandtablectrl.lua index 86522c04..648cea8e 100644 --- a/lua/game/ui/soldier/sandtable/soldiersandtablectrl.lua +++ b/lua/game/ui/soldier/sandtable/soldiersandtablectrl.lua @@ -1290,8 +1290,7 @@ function SoldierSandtableCtrl:OnEvent_SoldierExpUpdate() expAnimator:Play("ExperienceContainer") CS.WwiseAudioManager.Instance:PostEvent("mode_900001_chess_ingame_ExperienceReward") self._mapNode.MiddleContainer:Play("LevelUpGrade") - end - if 0 < nOldExp and nOldExp ~= self.nCacheExp then + elseif nOldExp ~= self.nCacheExp then expAnimator:Play("ExperienceContainer") CS.WwiseAudioManager.Instance:PostEvent("mode_900001_chess_ingame_ExperienceReward") end diff --git a/lua/game/ui/tracehunt/tracehuntctrl.lua b/lua/game/ui/tracehunt/tracehuntctrl.lua index df1f23c5..525e2c0c 100644 --- a/lua/game/ui/tracehunt/tracehuntctrl.lua +++ b/lua/game/ui/tracehunt/tracehuntctrl.lua @@ -645,8 +645,7 @@ function TraceHuntCtrl:UpdateTraceLogCount() return nNewLogStart end function TraceHuntCtrl:RefreshTraceLogEmpty() - local nProgress = PlayerData.TraceHunt:GetTraceProgress() - self._mapNode.goTraceLogEmpty:SetActive(self.nTraceLogCount == 0 and nProgress == 0) + self._mapNode.goTraceLogEmpty:SetActive(self.nTraceLogCount == 0) self._mapNode.goHuntLogEmpty:SetActive(false) end function TraceHuntCtrl:RefreshHunt() @@ -718,9 +717,8 @@ function TraceHuntCtrl:RefreshHuntLog() self:RefreshHuntLogEmpty() end function TraceHuntCtrl:RefreshHuntLogEmpty() - local nProgress = PlayerData.TraceHunt:GetHuntProgress() self._mapNode.goTraceLogEmpty:SetActive(false) - self._mapNode.goHuntLogEmpty:SetActive(self.nHuntLogCount == 0 and nProgress == 0) + self._mapNode.goHuntLogEmpty:SetActive(self.nHuntLogCount == 0) end function TraceHuntCtrl:RefreshHuntAddLog() local tbLog = PlayerData.TraceHunt:GetHuntLog() diff --git a/lua/gamecore/data/dataclass/soldier/playersoldierrecommenddata.lua b/lua/gamecore/data/dataclass/soldier/playersoldierrecommenddata.lua index 02be0445..874dbfaa 100644 --- a/lua/gamecore/data/dataclass/soldier/playersoldierrecommenddata.lua +++ b/lua/gamecore/data/dataclass/soldier/playersoldierrecommenddata.lua @@ -116,6 +116,9 @@ function PlayerSoldierRecommendData:GetRecommendData(bInSoldier) end end function PlayerSoldierRecommendData:SaveData() + self.nRecommendId = self:GetRecommendId() + self.nInSoldierRecommendId = self:GetInSoldierRecommendId() + self.bInSoldierChanged = self:GetInSoldierChanged() LocalData.SetPlayerLocalData("SoldierRecommend_Id", tostring(self.nRecommendId)) LocalData.SetPlayerLocalData("SoldierInSoldierRecommend_Id", tostring(self.nInSoldierRecommendId)) LocalData.SetPlayerLocalData("SoldierInSoldierChanged", self.bInSoldierChanged) diff --git a/versions.txt b/versions.txt index e29bec5f..29f6be1a 100644 --- a/versions.txt +++ b/versions.txt @@ -1,4 +1,4 @@ -EN: 1.13.0.124 -CN: 1.13.0.124 -JP: 1.13.0.128 -KR: 1.13.0.130 +EN: 1.13.0.126 +CN: 1.13.0.126 +JP: 1.13.0.130 +KR: 1.13.0.132