V0.7.3c2
This commit is contained in:
parent
9afa17872d
commit
aa53413768
@ -754,7 +754,7 @@
|
||||
</article>
|
||||
<article class="style-card">
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/style-07-shield-wall.png" alt="维京盾墙和圆盾配色参考">
|
||||
<img src="assets/viking-wonders/style-07-shield-wall.jpg" alt="维京盾墙和圆盾配色参考">
|
||||
</figure>
|
||||
<h3><a href="https://commons.wikimedia.org/wiki/File:Viking_reenactment_at_Arrowe_Park_1.png">彩色圆盾墙</a></h3>
|
||||
<p>红、黄、蓝、黑白圆盾可以作为环形堡、议会场、贸易港的边缘小色块。</p>
|
||||
@ -770,7 +770,7 @@
|
||||
</article>
|
||||
<article class="style-card">
|
||||
<figure>
|
||||
<img src="assets/viking-wonders/style-09-colored-runestone.png" alt="彩色符文石纹样参考">
|
||||
<img src="assets/viking-wonders/style-09-colored-runestone.jpg" alt="彩色符文石纹样参考">
|
||||
</figure>
|
||||
<h3><a href="https://commons.wikimedia.org/wiki/File:U_871_%C3%96lsta_(PNG_version).png">高饱和符文线</a></h3>
|
||||
<p>适合提炼“红石面 + 蓝色缠绕纹 + 浅色符文”的图标化语言,远看更有装饰性。</p>
|
||||
|
||||
File diff suppressed because one or more lines are too long
@ -19931,6 +19931,7 @@
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] [[Assembly-CSharp] Logic.Skill.YuugiMovePlusSkill] Analyse Type References in Custom Attribute References...
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] [[Assembly-CSharp] Logic.Skill.YuugiMoveSkill/YuugiMoveSkillFormatter] Analyse Type References in Custom Attribute References...
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] [[Assembly-CSharp] Logic.Skill.YuugiMoveSkill] Analyse Type References in Custom Attribute References...
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] [[Assembly-CSharp] Logic.Skill.YuugiPushResult] Analyse Type References in Custom Attribute References...
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] [[Assembly-CSharp] Logic.Skill.YuugiPushSkill/YuugiPushSkillFormatter] Analyse Type References in Custom Attribute References...
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] [[Assembly-CSharp] Logic.Skill.YuugiPushSkill] Analyse Type References in Custom Attribute References...
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] [[Assembly-CSharp] Logic.Skill.SkillBase/SkillBaseFormatter] Analyse Type References in Custom Attribute References...
|
||||
@ -22882,6 +22883,7 @@
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] [[Assembly-CSharp] Logic.Skill.YuugiMovePlusSkill] Analyse Type References in Custom Attribute References...
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] [[Assembly-CSharp] Logic.Skill.YuugiMoveSkill/YuugiMoveSkillFormatter] Analyse Type References in Custom Attribute References...
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] [[Assembly-CSharp] Logic.Skill.YuugiMoveSkill] Analyse Type References in Custom Attribute References...
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] [[Assembly-CSharp] Logic.Skill.YuugiPushResult] Analyse Type References in Custom Attribute References...
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] [[Assembly-CSharp] Logic.Skill.YuugiPushSkill/YuugiPushSkillFormatter] Analyse Type References in Custom Attribute References...
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] [[Assembly-CSharp] Logic.Skill.YuugiPushSkill] Analyse Type References in Custom Attribute References...
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] [[Assembly-CSharp] Logic.Skill.SkillBase/SkillBaseFormatter] Analyse Type References in Custom Attribute References...
|
||||
@ -26980,6 +26982,7 @@
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] Skip Method [[Assembly-CSharp] System.Void Logic.Skill.YuugiMoveSkill/YuugiMoveSkillFormatter::.ctor()] Because of compatibility component: .Net Framework - Compatibility : Is Special.
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] Skip Method [[Assembly-CSharp] System.Void Logic.Skill.YuugiMoveSkill::.ctor()] Because of compatibility component: .Net Framework - Compatibility : Is Special.
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] Skip Method [[Assembly-CSharp] System.Void Logic.Skill.YuugiMoveSkill::.cctor()] Because of compatibility component: .Net Framework - Compatibility : Is Special.
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] Skip Method [[Assembly-CSharp] System.Void Logic.Skill.YuugiPushResult::.ctor()] Because of compatibility component: .Net Framework - Compatibility : Is Special.
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] Skip Method [[Assembly-CSharp] System.Void Logic.Skill.YuugiPushSkill/YuugiPushSkillFormatter::.ctor()] Because of compatibility component: .Net Framework - Compatibility : Is Special.
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] Skip Method [[Assembly-CSharp] System.Void Logic.Skill.YuugiPushSkill::.ctor()] Because of compatibility component: .Net Framework - Compatibility : Is Special.
|
||||
[Info][OPS.OBF][OnAnalyse_Assemblies] Skip Method [[Assembly-CSharp] System.Void Logic.Skill.YuugiPushSkill::.cctor()] Because of compatibility component: .Net Framework - Compatibility : Is Special.
|
||||
@ -38579,6 +38582,7 @@
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found a looked up Type Namespace [[Assembly-CSharp] Logic.Skill.YuugiDashSkill] :
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found a looked up Type Namespace [[Assembly-CSharp] Logic.Skill.YuugiMovePlusSkill] :
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found a looked up Type Namespace [[Assembly-CSharp] Logic.Skill.YuugiMoveSkill] :
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found a new Type Namespace [[Assembly-CSharp] Logic.Skill.YuugiPushResult] :
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found a looked up Type Namespace [[Assembly-CSharp] Logic.Skill.YuugiPushSkill] :
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found a looked up Type Namespace [[Assembly-CSharp] Logic.Skill.SkillBase] :
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found a looked up Type Namespace [[Assembly-CSharp] Logic.Skill.ISkill] :
|
||||
@ -39637,6 +39641,7 @@
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found a looked up Type Name [[Assembly-CSharp] Logic.Skill.YuugiDashSkill] : ivk
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found a looked up Type Name [[Assembly-CSharp] Logic.Skill.YuugiMovePlusSkill] : ivl
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found a looked up Type Name [[Assembly-CSharp] Logic.Skill.YuugiMoveSkill] : iyl
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found a new Type Name [[Assembly-CSharp] Logic.Skill.YuugiPushResult] : bgi
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found a looked up Type Name [[Assembly-CSharp] Logic.Skill.YuugiPushSkill] : jkg
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found a looked up Type Name [[Assembly-CSharp] Logic.Skill.SkillBase] : fpx
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found a looked up Type Name [[Assembly-CSharp] Logic.Skill.ISkill] : ha
|
||||
@ -40316,10 +40321,10 @@
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.View.Top.UITopTopBarView::CancelTopBarAnim()] : zw
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.View.Top.UITopTopBarView::SelfCheckCoinText()] : zx
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.View.Top.UITopTopBarView::UpdateCoinPerTurn()] : eqb
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Void TH1_UI.View.Top.UITopTopBarView::RebuildCoinPanelLayout()] : bpx
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Void TH1_UI.View.Top.UITopTopBarView::SetTopBarAnimText(TMPro.TextMeshProUGUI,System.Int32,TH1_UI.View.Top.UITopTopBarView/TopBarPanelType)] : dfp
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Void TH1_UI.View.Top.UITopTopBarView::SetCoinText(System.Int32)] : dfq
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Void TH1_UI.View.Top.UITopTopBarView::RebuildTopBarLayout(UnityEngine.RectTransform[])] : dgd
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.View.Top.UITopTopBarView::RebuildCoinPanelLayout()] : bpx
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.View.Top.UITopTopBarView::SetTopBarAnimText(TMPro.TextMeshProUGUI,System.Int32,TH1_UI.View.Top.UITopTopBarView/TopBarPanelType)] : dfp
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.View.Top.UITopTopBarView::SetCoinText(System.Int32)] : dfq
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.View.Top.UITopTopBarView::RebuildTopBarLayout(UnityEngine.RectTransform[])] : dgd
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] System.Void TH1_UI.View.Top.UITopWinView::OnInit()] : uo
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.View.Top.UITopWinView::OnMatchStart()] : bat
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.View.Top.UITopWinView::SetContent()] : bau
|
||||
@ -41277,7 +41282,7 @@
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.HintUI.HeroHintPanel::<InitializeButtons>b__40_1()] : pz
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.HintUI.HeroHintPanel::<InitializeButtons>b__40_2()] : qa
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.HintUI.HeroHintPanel::<InitializeButtons>b__40_3()] : ty
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] UnityEngine.Color TH1_UI.HintUI.HeroHintPanelCommonCircleMono::get_DefaultActionBgColor()] : dge
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] UnityEngine.Color TH1_UI.HintUI.HeroHintPanelCommonCircleMono::get_DefaultActionBgColor()] : dge
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.HintUI.HeroHintPanelCommonCircleMono::SetContent(SkillType,RuntimeData.UnitFullType)] : jvo
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.HintUI.HeroHintPanelCommonCircleMono::SetContent(Logic.Action.CommonActionId)] : jvp
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.HintUI.HeroHintPanelCommonCircleMono::ResetContent()] : jvq
|
||||
@ -41326,14 +41331,14 @@
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Boolean TH1_UI.Core.UIInfoTask::CanCloseByEsc()] : jcy
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] TH1_UI.Controller.Base.IViewControllerInterface TH1_UI.Core.UIInfoTask::GetViewController()] : jcz
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.Core.UIInfoTask::CancelMapHighlights()] : jda
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Boolean TH1_UI.Core.UIInfoTask::IsShow()] : dgf
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Boolean TH1_UI.Core.UIInfoTask::IsShow()] : dgf
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.Core.UIInfoManager/<>c__DisplayClass4_0::<StartNewTask>b__0()] : bov
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.Core.UIInfoManager::OnMatchStart()] : hjn
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.Core.UIInfoManager::OnMatchEnd()] : bow
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.Core.UIInfoManager::StartNewTask(TH1_UI.Core.UIInfoTask)] : exg
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.Core.UIInfoManager::HideCurTask()] : exh
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Boolean TH1_UI.Core.UIInfoManager::TryCloseCurTaskByEsc()] : jdb
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Boolean TH1_UI.Core.UIInfoManager::TryHandleCurTaskByEsc()] : dgg
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Boolean TH1_UI.Core.UIInfoManager::TryHandleCurTaskByEsc()] : dgg
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.Core.UIInfoManager::OnChoiceHeroInfo()] : dgq
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.Core.UIInfoManager::OnTaskCompleted(TH1_UI.Core.UIInfoTask)] : ins
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1_UI.Core.UIInfoManager::Update()] : exj
|
||||
@ -41863,7 +41868,7 @@
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1Renderer.MapRenderer::RenderUpdateGridMap()] : bgg
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1Renderer.MapRenderer::RenderUpdateCityMap()] : bgh
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1Renderer.MapRenderer::UpdateCityInfoAllCoinTech()] : eum
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Void TH1Renderer.MapRenderer::RenderUpdateUnitMap(System.Boolean)] : dgh
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1Renderer.MapRenderer::RenderUpdateUnitMap(System.Boolean)] : dgh
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1Renderer.MapRenderer::RepairUnitRenderersToData(RuntimeData.MapData,System.Collections.Generic.List`1<System.UInt32>,System.Collections.Generic.List`1<System.UInt32>)] : jqs
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1Renderer.MapRenderer::RenderUpdateProjectileMap()] : bgj
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void TH1Renderer.MapRenderer::FirstRenderMap()] : bgk
|
||||
@ -44088,8 +44093,8 @@
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Boolean Logic.InputLogic::ShouldIgnoreClick(UnityEngine.GameObject)] : biy
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.InputLogic::LockInput()] : biz
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.InputLogic::UnlockInput()] : bja
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Boolean Logic.InputLogic::IsCancelShortcutDown()] : dgi
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Boolean Logic.InputLogic::TryHandleCancelShortcut(System.Boolean)] : dhc
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Boolean Logic.InputLogic::IsCancelShortcutDown()] : dgi
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Boolean Logic.InputLogic::TryHandleCancelShortcut(System.Boolean)] : dhc
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.InputLogic::Update()] : bjc
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.InputLogic::SimulateButtonClick(UnityEngine.UI.Button)] : bjf
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.InputLogic::OnTabAction()] : jhu
|
||||
@ -44269,9 +44274,10 @@
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Boolean Logic.UnitLogic::CheckIsSelfPlayer(RuntimeData.MapData,System.UInt32)] : bnz
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.UnitLogic::MoveTo(RuntimeData.MapData,RuntimeData.PlayerData,RuntimeData.UnitData,RuntimeData.GridData)] : gze
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] System.Boolean Logic.UnitLogic::MoveToLogic(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.GridData,MoveType,System.Collections.Generic.List`1<UnityEngine.Vector2Int>)] : jmm
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Boolean Logic.UnitLogic::CanCounterByRules(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.UnitData)] : dlm
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Boolean Logic.UnitLogic::CanCounterByRules(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.UnitData)] : dlm
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Boolean Logic.UnitLogic::CanCounter(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.UnitData)] : boa
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] System.Void Logic.UnitLogic::Attack(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.UnitData,System.Int32&,System.Int32&,TH1_Anim.FragmentType&)] : gzd
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Void Logic.UnitLogic::Attack(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.UnitData,System.Int32&,System.Int32&,TH1_Anim.FragmentType&,Logic.Skill.YuugiPushResult&)] : fcl
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] Logic.SettlementInfo Logic.UnitLogic::DamageSettlement(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.UnitData,System.Int32,Logic.DamageType)] : boc
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Int32 Logic.UnitLogic::RecoverHealth_Legacy(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.UnitData,System.Int32)] : dby
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Int32 Logic.UnitLogic::RecoverHealth(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.UnitData,System.Int32,Logic.HealType)] : dbz
|
||||
@ -44590,8 +44596,8 @@
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] System.Void Logic.Skill.KomeijiRiderKillSkill::BeforeDamageOther(RuntimeData.MapData,Logic.SettlementInfo)] : dcg
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] SkillType Logic.Skill.KomeijiRiderTransSkill::GetSkillType()] : bps
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] System.Void Logic.Skill.KomeijiRiderTransSkill::OnDamageOther(RuntimeData.MapData,Logic.SettlementInfo)] : feb
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Void Logic.Skill.KomeijiRiderTransSkill::ReportBoatOnLandTransform(RuntimeData.MapData,Logic.SettlementInfo,RuntimeData.UnitFullType,System.String)] : dpf
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.String Logic.Skill.KomeijiRiderTransSkill::FormatUnitFullType(RuntimeData.UnitFullType)] : dro
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.Skill.KomeijiRiderTransSkill::ReportBoatOnLandTransform(RuntimeData.MapData,Logic.SettlementInfo,RuntimeData.UnitFullType,System.String)] : dpf
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.String Logic.Skill.KomeijiRiderTransSkill::FormatUnitFullType(RuntimeData.UnitFullType)] : dro
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] SkillType Logic.Skill.LaevatainPreySkill::GetSkillType()] : bps
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] System.Void Logic.Skill.LaevatainPreySkill::OnDamaged(RuntimeData.MapData,Logic.SettlementInfo)] : jzj
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] SkillType Logic.Skill.LaevatainSkill::GetSkillType()] : bps
|
||||
@ -45050,7 +45056,10 @@
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] SkillType Logic.Skill.YuugiMoveSkill::GetSkillType()] : bps
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] System.Single Logic.Skill.YuugiMoveSkill::GetAttackAdditionParam(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.UnitData)] : jzg
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] SkillType Logic.Skill.YuugiPushSkill::GetSkillType()] : bps
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Boolean Logic.Skill.YuugiPushSkill::YuugiPushAttack(RuntimeData.UnitData,RuntimeData.UnitData,RuntimeData.MapData,System.Int32&,System.Int32&,TH1_Anim.FragmentType&,System.Boolean&)] : kap
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Boolean Logic.Skill.YuugiPushSkill::YuugiPushAttack(RuntimeData.UnitData,RuntimeData.UnitData,RuntimeData.MapData,System.Int32&,System.Int32&,TH1_Anim.FragmentType&,Logic.Skill.YuugiPushResult&)] : fuc
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Void Logic.Skill.YuugiPushSkill::TryCreateBonePile(RuntimeData.MapData,RuntimeData.PlayerData,RuntimeData.CityData,RuntimeData.CityData,RuntimeData.UnitData,RuntimeData.GridData,RuntimeData.UnitFullType)] : fvq
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Boolean Logic.Skill.YuugiPushSkill::TryGetBonePileReviveType(RuntimeData.UnitData,RuntimeData.UnitFullType&)] : ggx
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Boolean Logic.Skill.YuugiPushSkill::YuugiPushRepositionWithoutMoveSideEffects(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.GridData)] : ggy
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Boolean Logic.Skill.YuugiPushSkill::CanCounterForPush(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.UnitData)] : fcq
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Collections.Generic.List`1<RuntimeData.GridData> Logic.Skill.SkillBase::RentAroundBuf()] : ddi
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.Skill.SkillBase::ReturnAroundBuf()] : ddj
|
||||
@ -45653,13 +45662,13 @@
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.Action.ActionLogicBase::ReportBoatUnitOnLandBeforeAction(Logic.Action.CommonActionParams)] : mrt
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.Action.ActionLogicBase::ReportUnitRendererMismatchBeforeAction(Logic.Action.CommonActionParams)] : mru
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.Action.ActionLogicBase::AppendPreviousActionsLog(System.Text.StringBuilder,RuntimeData.MapData)] : mrv
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Void Logic.Action.ActionLogicBase::AppendRecentActionsLog(System.Text.StringBuilder,RuntimeData.MapData,System.Int32)] : eme
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.Action.ActionLogicBase::AppendRecentActionsLog(System.Text.StringBuilder,RuntimeData.MapData,System.Int32)] : eme
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.Action.ActionLogicBase::AppendActionNetDataLog(System.Text.StringBuilder,Logic.AI.ActionNetData)] : mrw
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.Action.ActionLogicBase::AppendBoatUnitsOnLandLog(System.Text.StringBuilder,RuntimeData.MapData)] : mrx
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.Action.ActionLogicBase::AppendRendererOnlyUnitsLog(System.Text.StringBuilder,RuntimeData.MapData,TH1Renderer.MapRenderer)] : mry
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.Action.ActionLogicBase::AppendDataOnlyUnitsLog(System.Text.StringBuilder,RuntimeData.MapData,TH1Renderer.MapRenderer)] : mrz
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.Action.ActionLogicBase::AppendUnitDataLog(System.Text.StringBuilder,RuntimeData.MapData,RuntimeData.UnitData)] : mzb
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Void Logic.Action.ActionLogicBase::ReportUnitAttackRendererMissingAfterKill(Logic.Action.CommonActionParams,Logic.Action.CommonActionId,TH1_Anim.FragmentType,System.Int32,System.Int32,System.Boolean,System.Boolean,System.Boolean,System.Boolean,RuntimeData.GridData,RuntimeData.GridData,TH1_Renderer.UnitRenderer,TH1_Renderer.UnitRenderer)] : eoy
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.Action.ActionLogicBase::ReportUnitAttackRendererMissingAfterKill(Logic.Action.CommonActionParams,Logic.Action.CommonActionId,TH1_Anim.FragmentType,System.Int32,System.Int32,System.Boolean,System.Boolean,System.Boolean,System.Boolean,RuntimeData.GridData,RuntimeData.GridData,TH1_Renderer.UnitRenderer,TH1_Renderer.UnitRenderer)] : eoy
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.Action.ActionLogicBase::AfterExecute(Logic.Action.CommonActionParams)] : hap
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] System.Boolean Logic.Action.ActionLogicBase::CheckCan(Logic.Action.CommonActionParams)] : fcn
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] System.Boolean Logic.Action.ActionLogicBase::CheckShow(Logic.Action.CommonActionParams,ShowType&)] : hxc
|
||||
@ -45685,7 +45694,7 @@
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] System.Boolean Logic.Action.UnitPassiveMoveAction::Execute(Logic.Action.CommonActionParams)] : guo
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] System.Boolean Logic.Action.UnitPassiveMoveAction::CheckCan(Logic.Action.CommonActionParams)] : fcn
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] System.Boolean Logic.Action.UnitPassiveMoveAction::CheckShow(Logic.Action.CommonActionParams,ShowType&)] : hxc
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Void Logic.Action.ActiveAttackActionRecorder::MarkStarted(RuntimeData.MapData,RuntimeData.PlayerData)] : ezr
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.Action.ActiveAttackActionRecorder::MarkStarted(RuntimeData.MapData,RuntimeData.PlayerData)] : ezr
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.Action.ActiveAttackActionRecorder::MarkStarted(RuntimeData.MapData,RuntimeData.UnitData)] : ftf
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] System.Boolean Logic.Action.UnitAttackAction::Execute(Logic.Action.CommonActionParams)] : guo
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] System.Boolean Logic.Action.UnitAttackAction::CheckCan(Logic.Action.CommonActionParams)] : fcn
|
||||
@ -45723,7 +45732,7 @@
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] System.Boolean Logic.Action.BuyCultureCardAction::CheckCan(Logic.Action.CommonActionParams)] : fcn
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Method Name [[Assembly-CSharp] System.Boolean Logic.Action.BuyCultureCardAction::CheckShow(Logic.Action.CommonActionParams,ShowType&)] : hxc
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.Action.ActionVisualEventCollector/<>c__DisplayClass19_0::<AddDamageStep>b__0()] : ftw
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Void Logic.Action.ActionVisualEventCollector/<>c__DisplayClass19_0::<AddDamageStep>g__RunVisual|1()] : fcl
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Method Name [[Assembly-CSharp] System.Void Logic.Action.ActionVisualEventCollector/<>c__DisplayClass19_0::<AddDamageStep>g__RunVisual|1()] : ghc
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] Logic.Action.ActionVisualEventCollector Logic.Action.ActionVisualEventCollector::get_Current()] : fxb
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Void Logic.Action.ActionVisualEventCollector::set_Current(Logic.Action.ActionVisualEventCollector)] : fxu
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Method Name [[Assembly-CSharp] System.Boolean Logic.Action.ActionVisualEventCollector::get_MainTargetKilledBeforeAttack()] : gex
|
||||
@ -48552,6 +48561,11 @@
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Field Name [[Assembly-CSharp] System.Collections.Generic.List`1<UnityEngine.Vector2Int> Logic.Skill.UtsuhoDelayActSkill::Path] : jpz
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Field Name [[Assembly-CSharp] TH1_Renderer.UnitRenderer Logic.Skill.VampireProSkill/<>c__DisplayClass2_0::unitRenderer] : jqx
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Field Name [[Assembly-CSharp] TH1_Renderer.UnitRenderer Logic.Skill.VampireSkill/<>c__DisplayClass3_0::unitRenderer] : jqy
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Field Name [[Assembly-CSharp] System.Boolean Logic.Skill.YuugiPushResult::Pushed] : ghh
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Field Name [[Assembly-CSharp] System.Boolean Logic.Skill.YuugiPushResult::TargetKilledAfterPush] : glc
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Field Name [[Assembly-CSharp] RuntimeData.GridData Logic.Skill.YuugiPushResult::OriginGridBeforePush] : gns
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Field Name [[Assembly-CSharp] RuntimeData.GridData Logic.Skill.YuugiPushResult::TargetGridBeforePush] : gzn
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Field Name [[Assembly-CSharp] RuntimeData.GridData Logic.Skill.YuugiPushResult::TargetGridAfterPush] : hjz
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Field Name [[Assembly-CSharp] System.Collections.Generic.Dictionary`2<System.Type,System.UInt16> Logic.Skill.SkillBase/SkillBaseFormatter::__typeToTag] : gth
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Field Name [[Assembly-CSharp] System.Collections.Generic.List`1<System.Collections.Generic.List`1<RuntimeData.GridData>> Logic.Skill.SkillBase::_aroundBufPool] : jtp
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Field Name [[Assembly-CSharp] System.Int32 Logic.Skill.SkillBase::_poolTop] : jtq
|
||||
@ -48775,7 +48789,7 @@
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Field Name [[Assembly-CSharp] System.Text.StringBuilder Logic.Action.ActionLogicBase::_sharedRendererUnitMismatchLogBuilder] : nci
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Field Name [[Assembly-CSharp] System.Boolean Logic.Action.ActionLogicBase::_boatUnitOnLandDiagnosticFailedLogged] : ncj
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Field Name [[Assembly-CSharp] System.Boolean Logic.Action.ActionLogicBase::_unitRendererMismatchDiagnosticFailedLogged] : nck
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Field Name [[Assembly-CSharp] System.Boolean Logic.Action.ActionLogicBase::_unitAttackRendererMissingAfterKillDiagnosticFailedLogged] : frb
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Field Name [[Assembly-CSharp] System.Boolean Logic.Action.ActionLogicBase::_unitAttackRendererMissingAfterKillDiagnosticFailedLogged] : frb
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Field Name [[Assembly-CSharp] System.Int32 Logic.Action.ActionLogicBase::MaxRendererUnitMismatchLogCount] : ncl
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Field Name [[Assembly-CSharp] RuntimeData.GridData Logic.Action.ActionVisualEventCollector/<>c__DisplayClass19_0::targetGrid] : gzm
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Field Name [[Assembly-CSharp] Logic.Action.ActionVisualEventCollector Logic.Action.ActionVisualEventCollector/<>c__DisplayClass19_0::<>4__this] : gzo
|
||||
@ -49216,7 +49230,7 @@
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Property Name [[Assembly-CSharp] System.UInt64 TH1_UI.View.Bottom.UIBottomNetRowMono::MemberId()] : iwe
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Property Name [[Assembly-CSharp] UnityEngine.Canvas TH1_UI.View.Base.View::ViewCanvas()] : fnp
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Property Name [[Assembly-CSharp] System.Boolean TH1_UI.HintUI.HeroHintPanel::IsPinned()] : kef
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found new Property Name [[Assembly-CSharp] UnityEngine.Color TH1_UI.HintUI.HeroHintPanelCommonCircleMono::DefaultActionBgColor()] : frv
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Property Name [[Assembly-CSharp] UnityEngine.Color TH1_UI.HintUI.HeroHintPanelCommonCircleMono::DefaultActionBgColor()] : frv
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Property Name [[Assembly-CSharp] UnityEngine.GameObject TH1_UI.Core.BaseUIView`1::Instance()] : fig
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found looked up Property Name [[Assembly-CSharp] TData TH1_UI.Core.BaseUIView`1::Data()] : fih
|
||||
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Found group Property Name [[Assembly-CSharp] System.String TH1_UI.Core.BaseUIView`1::PrefabPath()] :
|
||||
@ -50868,6 +50882,7 @@
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Type Namespace [[Assembly-CSharp] Logic.Skill.YuugiMovePlusSkill] to
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Update Reference Type [[Assembly-CSharp] Logic.Skill.YuugiMoveSkill]
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Type Namespace [[Assembly-CSharp] Logic.Skill.YuugiMoveSkill] to
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Type Namespace [[Assembly-CSharp] Logic.Skill.YuugiPushResult] to
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Update Reference Type [[Assembly-CSharp] Logic.Skill.YuugiPushSkill]
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Type Namespace [[Assembly-CSharp] Logic.Skill.YuugiPushSkill] to
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Type Namespace [[Assembly-CSharp] Logic.Skill.SkillBase] to
|
||||
@ -52320,6 +52335,7 @@
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Type [[Assembly-CSharp] Logic.Skill.YuugiMovePlusSkill] to ivl
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Update Reference Type [[Assembly-CSharp] Logic.Skill.YuugiMoveSkill]
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Type [[Assembly-CSharp] Logic.Skill.YuugiMoveSkill] to iyl
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Type [[Assembly-CSharp] Logic.Skill.YuugiPushResult] to bgi
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Update Reference Type [[Assembly-CSharp] Logic.Skill.YuugiPushSkill]
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Type [[Assembly-CSharp] Logic.Skill.YuugiPushSkill] to jkg
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Type [[Assembly-CSharp] Logic.Skill.SkillBase] to fpx
|
||||
@ -58309,6 +58325,7 @@
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Boolean Logic.UnitLogic::CanCounterByRules(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.UnitData)] to dlm
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Boolean Logic.UnitLogic::CanCounter(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.UnitData)] to boa
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Void Logic.UnitLogic::Attack(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.UnitData,System.Int32&,System.Int32&,TH1_Anim.FragmentType&)] to gzd
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Void Logic.UnitLogic::Attack(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.UnitData,System.Int32&,System.Int32&,TH1_Anim.FragmentType&,Logic.Skill.YuugiPushResult&)] to fcl
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] Logic.SettlementInfo Logic.UnitLogic::DamageSettlement(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.UnitData,System.Int32,Logic.DamageType)] to boc
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Int32 Logic.UnitLogic::RecoverHealth_Legacy(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.UnitData,System.Int32)] to dby
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Int32 Logic.UnitLogic::RecoverHealth(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.UnitData,System.Int32,Logic.HealType)] to dbz
|
||||
@ -59087,7 +59104,10 @@
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] SkillType Logic.Skill.YuugiMoveSkill::GetSkillType()] to bps
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Single Logic.Skill.YuugiMoveSkill::GetAttackAdditionParam(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.UnitData)] to jzg
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] SkillType Logic.Skill.YuugiPushSkill::GetSkillType()] to bps
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Boolean Logic.Skill.YuugiPushSkill::YuugiPushAttack(RuntimeData.UnitData,RuntimeData.UnitData,RuntimeData.MapData,System.Int32&,System.Int32&,TH1_Anim.FragmentType&,System.Boolean&)] to kap
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Boolean Logic.Skill.YuugiPushSkill::YuugiPushAttack(RuntimeData.UnitData,RuntimeData.UnitData,RuntimeData.MapData,System.Int32&,System.Int32&,TH1_Anim.FragmentType&,Logic.Skill.YuugiPushResult&)] to fuc
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Void Logic.Skill.YuugiPushSkill::TryCreateBonePile(RuntimeData.MapData,RuntimeData.PlayerData,RuntimeData.CityData,RuntimeData.CityData,RuntimeData.UnitData,RuntimeData.GridData,RuntimeData.UnitFullType)] to fvq
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Boolean Logic.Skill.YuugiPushSkill::TryGetBonePileReviveType(RuntimeData.UnitData,RuntimeData.UnitFullType&)] to ggx
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Boolean Logic.Skill.YuugiPushSkill::YuugiPushRepositionWithoutMoveSideEffects(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.GridData)] to ggy
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Boolean Logic.Skill.YuugiPushSkill::CanCounterForPush(RuntimeData.MapData,RuntimeData.UnitData,RuntimeData.UnitData)] to fcq
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Collections.Generic.List`1<RuntimeData.GridData> Logic.Skill.SkillBase::RentAroundBuf()] to ddi
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Void Logic.Skill.SkillBase::ReturnAroundBuf()] to ddj
|
||||
@ -59862,7 +59882,7 @@
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Boolean Logic.Action.BuyCultureCardAction::CheckCan(Logic.Action.CommonActionParams)] to fcn
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Boolean Logic.Action.BuyCultureCardAction::CheckShow(Logic.Action.CommonActionParams,ShowType&)] to hxc
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Void Logic.Action.ActionVisualEventCollector/<>c__DisplayClass19_0::<AddDamageStep>b__0()] to ftw
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Void Logic.Action.ActionVisualEventCollector/<>c__DisplayClass19_0::<AddDamageStep>g__RunVisual|1()] to fcl
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Void Logic.Action.ActionVisualEventCollector/<>c__DisplayClass19_0::<AddDamageStep>g__RunVisual|1()] to ghc
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] Logic.Action.ActionVisualEventCollector Logic.Action.ActionVisualEventCollector::get_Current()] to fxb
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Void Logic.Action.ActionVisualEventCollector::set_Current(Logic.Action.ActionVisualEventCollector)] to fxu
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Method [[Assembly-CSharp] System.Boolean Logic.Action.ActionVisualEventCollector::get_MainTargetKilledBeforeAttack()] to gex
|
||||
@ -62890,6 +62910,11 @@
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Field [[Assembly-CSharp] System.Collections.Generic.List`1<UnityEngine.Vector2Int> Logic.Skill.UtsuhoDelayActSkill::Path] to jpz
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Field [[Assembly-CSharp] TH1_Renderer.UnitRenderer Logic.Skill.VampireProSkill/<>c__DisplayClass2_0::unitRenderer] to jqx
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Field [[Assembly-CSharp] TH1_Renderer.UnitRenderer Logic.Skill.VampireSkill/<>c__DisplayClass3_0::unitRenderer] to jqy
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Field [[Assembly-CSharp] System.Boolean Logic.Skill.YuugiPushResult::Pushed] to ghh
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Field [[Assembly-CSharp] System.Boolean Logic.Skill.YuugiPushResult::TargetKilledAfterPush] to glc
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Field [[Assembly-CSharp] RuntimeData.GridData Logic.Skill.YuugiPushResult::OriginGridBeforePush] to gns
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Field [[Assembly-CSharp] RuntimeData.GridData Logic.Skill.YuugiPushResult::TargetGridBeforePush] to gzn
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Field [[Assembly-CSharp] RuntimeData.GridData Logic.Skill.YuugiPushResult::TargetGridAfterPush] to hjz
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Field [[Assembly-CSharp] System.Collections.Generic.Dictionary`2<System.Type,System.UInt16> Logic.Skill.SkillBase/SkillBaseFormatter::__typeToTag] to gth
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Field [[Assembly-CSharp] System.Collections.Generic.List`1<System.Collections.Generic.List`1<RuntimeData.GridData>> Logic.Skill.SkillBase::_aroundBufPool] to jtp
|
||||
[Info][OPS.OBF][OnObfuscate_Assemblies] Rename Field [[Assembly-CSharp] System.Int32 Logic.Skill.SkillBase::_poolTop] to jtq
|
||||
@ -65199,7 +65224,7 @@
|
||||
[Debug][OPS.OBF][Setup] Load Pipeline
|
||||
[Info][OPS.OBF][OnPostBuild] Process component Post Process Unity MonoBehaviour Assets
|
||||
[Info][OPS.OBF][OnPostBuild] Assets are not bundled. Obfuscating globalgamemanagers.assets file.
|
||||
[Info][OPS.OBF][OnPostBuild] Obfuscating globalgamemanagers.assets file 'C:\TH1\Pack\073c\TOHOTOPIA_Data\globalgamemanagers.assets'.
|
||||
[Info][OPS.OBF][OnPostBuild] Obfuscating globalgamemanagers.assets file 'C:\TH1\Pack\073c2\TOHOTOPIA_Data\globalgamemanagers.assets'.
|
||||
[Debug][OPS.OBF][OnPostBuild] Loaded globalgamemanagers.assets file successfully.
|
||||
[Debug][OPS.OBF][OnPostBuild] Obfuscated '97' MonoScripts in assets file 'globalgamemanagers.assets'.
|
||||
[Debug][OPS.OBF][OnPostBuild] Updated globalgamemanagers.assets file successfully.
|
||||
|
||||
@ -2390,7 +2390,7 @@ namespace Logic.Action
|
||||
|
||||
//Step #2 处理逻辑计算,提前存储anim使用到的数据
|
||||
bool targetCanNotBeKilled = !actionParams.TargetUnitData.CanBeKilled(actionParams.MapData);
|
||||
Main.UnitLogic.Attack(actionParams.MapData, actionParams.UnitData, actionParams.TargetUnitData, out var attackDmg,out var counterDmg,out var fragmentType);
|
||||
Main.UnitLogic.Attack(actionParams.MapData, actionParams.UnitData, actionParams.TargetUnitData, out var attackDmg,out var counterDmg,out var fragmentType, out var yuugiPushResult);
|
||||
var originKilledByAttack = originAliveBeforeAttack && !actionParams.UnitData.IsAlive();
|
||||
var targetKilledByAttack = targetAliveBeforeAttack && !actionParams.TargetUnitData.IsAlive();
|
||||
|
||||
@ -2434,18 +2434,20 @@ namespace Logic.Action
|
||||
return false;
|
||||
}
|
||||
|
||||
//Step #3-1 检测YuugiPush是否发生了推动(origin移动到了targetGrid的位置)
|
||||
var originGridAfter = actionParams.UnitData.Grid(Main.MapData);
|
||||
//Step #3-1 检测YuugiPush是否发生了推动。推击致死时 target 已经从数据层移除,
|
||||
//不能再靠 target 当前 grid 推断,必须使用 YuugiPushSkill 返回的移动结果。
|
||||
var targetGridAfter = actionParams.TargetUnitData.Grid(Main.MapData);
|
||||
bool pushed = originGridAfter != null && originGridAfter.Id != originGrid.Id && originGridAfter.Id == targetGrid.Id;
|
||||
bool pushed = yuugiPushResult is { Pushed: true, TargetGridAfterPush: not null };
|
||||
if (pushed && targetGridAfter == null)
|
||||
targetGridAfter = yuugiPushResult.TargetGridAfterPush;
|
||||
|
||||
//如果在视野,播放动画
|
||||
if (Main.MapData?.PlayerMap?.SelfPlayerData?.Sight != null &&
|
||||
(Main.MapData.PlayerMap.SelfPlayerData.Sight.CheckIsInSight(originGrid.Id) ||
|
||||
Main.MapData.PlayerMap.SelfPlayerData.Sight.CheckIsInSight(targetGrid.Id)))
|
||||
{
|
||||
//如果发生了推动,先播放双方的移动动画,再播放攻击动画
|
||||
//推击保证不会击杀target,所以targetGridAfter!=null可以正确区分推击和MoveKill
|
||||
//如果发生了推动,先播放双方的移动动画,再播放攻击动画。
|
||||
//推击可能致死:targetGridAfter 可能来自存活单位的当前格,也可能来自 YuugiPushResult 中记录的死亡格。
|
||||
if (pushed && targetGridAfter != null)
|
||||
{
|
||||
//target往后退一格的移动动画
|
||||
@ -2497,7 +2499,7 @@ namespace Logic.Action
|
||||
actionParams.UnitData.Player(actionParams.MapData)?.Sight.UpdateSightByPath(actionParams.UnitData,originPlayer,targetGrid.Pos.V2(),actionParams.MapData);
|
||||
//如果YuugiPush推动发生了,攻击者也移动了,需要更新视野
|
||||
else if(pushed)
|
||||
actionParams.UnitData.Player(actionParams.MapData)?.Sight.UpdateSightByPath(actionParams.UnitData,originPlayer,targetGrid.Pos.V2(),actionParams.MapData);
|
||||
originPlayer?.Sight.UpdateSightByPath(actionParams.UnitData,originPlayer,targetGrid.Pos.V2(),actionParams.MapData);
|
||||
|
||||
|
||||
//Step #5 更新攻击前后两个格子的显示,比如学者攻击了在城市里的角色,那么城市里会有fire
|
||||
|
||||
@ -17,6 +17,25 @@ using UnityEngine;
|
||||
|
||||
namespace Logic.Skill
|
||||
{
|
||||
/// <summary>
|
||||
/// YuugiPush 专用的本次攻击结果。普通攻击不使用这个对象。
|
||||
/// 这里保存的是逻辑结算前后的关键格子,供 UnitAttackAction 在目标死亡、
|
||||
/// 攻击者被反击杀死等情况下仍能播放正确的推击动画。
|
||||
/// </summary>
|
||||
public class YuugiPushResult
|
||||
{
|
||||
/// <summary>本次是否真的发生了推击位移。</summary>
|
||||
public bool Pushed;
|
||||
/// <summary>target 是否在被推到 TargetGridAfterPush 后被本次推击伤害击杀。</summary>
|
||||
public bool TargetKilledAfterPush;
|
||||
/// <summary>攻击开始前 self 所在格。</summary>
|
||||
public GridData OriginGridBeforePush;
|
||||
/// <summary>攻击开始前 target 所在格,也是 self 推击后前进到的格子。</summary>
|
||||
public GridData TargetGridBeforePush;
|
||||
/// <summary>target 被推到的格子;target 死亡后数据层会移除单位,所以动画层必须缓存这个格子。</summary>
|
||||
public GridData TargetGridAfterPush;
|
||||
}
|
||||
|
||||
public partial class YuugiPushSkill : SkillBase
|
||||
{
|
||||
public YuugiPushSkill()
|
||||
@ -32,16 +51,34 @@ namespace Logic.Skill
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 推击攻击逻辑(纯数据),动画由UnitAttackAction.Execute负责
|
||||
/// 勇仪推击的权威数据规则,动画由 UnitAttackAction.Execute 按 YuugiPushResult 播放。
|
||||
///
|
||||
/// 预期矩阵:
|
||||
/// 1. canPush = true 且不致死:
|
||||
/// target: targetGrid -> nextGrid;self: selfGrid -> targetGrid;
|
||||
/// 然后在移动后的格子上结算伤害。target 存活且满足反击规则时,从 nextGrid 反击。
|
||||
/// 2. canPush = true 且致死:
|
||||
/// 仍然必须先执行同样的推击位移;target 死在 nextGrid,self 停在 targetGrid。
|
||||
/// 动画层必须播放 target 后退、self 前进,然后在 nextGrid 播放死亡;
|
||||
/// 绝不能退化成普通 MoveKill,也不能因为 target 死亡后无 grid 而丢掉动画。
|
||||
/// 注意:这两个位移是本次攻击内部的站位调整,不是独立移动行为;
|
||||
/// 它们不触发 BeforeMove/OnMove/OnAnyUnitMove,避免 STOMP、GridRadiation 等移动副作用
|
||||
/// 抢在 PushAttack 伤害前杀死目标。但仍必须处理 BoatToLand/LandToBoat 形态合法化。
|
||||
/// 3. canPush = false:
|
||||
/// 背后有单位、越界、地形/港口不合法等都会进入该分支;不发生任何推击位移,
|
||||
/// 伤害使用基础伤害 +2。target 存活且满足反击规则时,按普通攻击反击。
|
||||
/// 4. canPush = false 且致死:
|
||||
/// self 能合法进入 targetGrid 时走普通 MoveKill;不能进入时走 NotMoveKill。
|
||||
/// 两者都必须清理 target renderer,避免死亡单位贴图残留。
|
||||
/// </summary>
|
||||
/// <returns>true表示推击已执行,false表示不满足推击条件应走普通攻击</returns>
|
||||
/// <returns>true 表示推击规则已接管本次攻击;false 表示不满足推击技能前置条件,应走普通攻击。</returns>
|
||||
public bool YuugiPushAttack(UnitData self, UnitData target, MapData map,
|
||||
out int outAttackDmg, out int outCounterDmg, out FragmentType outFragmentType, out bool outPushed)
|
||||
out int outAttackDmg, out int outCounterDmg, out FragmentType outFragmentType, out YuugiPushResult outResult)
|
||||
{
|
||||
outAttackDmg = 0;
|
||||
outCounterDmg = 0;
|
||||
outFragmentType = FragmentType.Attack;
|
||||
outPushed = false;
|
||||
outResult = null;
|
||||
|
||||
if (self == null || target == null) return false;
|
||||
var fullType = new UnitFullType();
|
||||
@ -65,86 +102,98 @@ namespace Logic.Skill
|
||||
// 使用 CheckUnitAbleForGrid_OfflineStatus 而非 CheckLandTypeForGrid:
|
||||
// 前者会对 LandAndPort 单位检查港口归属(必须同联盟),后者只看地形 LandType。
|
||||
// 之前用纯 LandType 判定会让勇仪(LandAndPort)合法走进敌方港口。
|
||||
// self 只需要能进入 targetGrid;被推到 nextGrid 的是 target,不要求 self 也能进入 nextGrid。
|
||||
// 因此岸边推船只允许 targetGrid 是桥、陆地、我方/盟友港口等 self 合法格,不能隔着普通海格推船。
|
||||
bool canPush = nextGrid != null && !nextGrid.RealUnit(map, out _)
|
||||
&& Main.UnitLogic.CheckUnitAbleForGrid_OfflineStatus(map, targetPlayer, target, nextGrid)
|
||||
&& Main.UnitLogic.CheckUnitAbleForGrid_OfflineStatus(map, player, self, targetGrid)
|
||||
&& Main.UnitLogic.CheckUnitAbleForGrid_OfflineStatus(map, player, self, nextGrid);
|
||||
&& Main.UnitLogic.CheckUnitAbleForGrid_OfflineStatus(map, player, self, targetGrid);
|
||||
// 能推→无额外伤害;不能推→+2伤害
|
||||
int actualDmg = canPush ? dmg : dmg + 2;
|
||||
|
||||
// 只有能推动且实际伤害不会击杀,才走推人
|
||||
if (canPush && actualDmg < target.Health)
|
||||
if (canPush)
|
||||
{
|
||||
// 推击:先移动数据,再攻击,可能有反击
|
||||
outPushed = true;
|
||||
if (!Main.UnitLogic.MoveToLogic(map, target, nextGrid, MoveType.PushMove))
|
||||
// 推击:无论是否击杀,都先执行 target 后退和 self 前进。是否死亡只决定后续攻击 fragment。
|
||||
outResult = new YuugiPushResult
|
||||
{
|
||||
Pushed = true,
|
||||
OriginGridBeforePush = selfGrid,
|
||||
TargetGridBeforePush = targetGrid,
|
||||
TargetGridAfterPush = nextGrid,
|
||||
};
|
||||
|
||||
if (!YuugiPushRepositionWithoutMoveSideEffects(map, target, nextGrid))
|
||||
{
|
||||
LogSystem.LogError($"YuugiPush target move failed. self={self.Id}, target={target.Id}, from={targetGrid.Id}, to={nextGrid.Id}");
|
||||
outPushed = false;
|
||||
outResult = null;
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!target.IsValidOnMap(map) || !target.IsAlive() || !map.GetGridDataByUnitId(target.Id, out var targetGridAfterMove) || targetGridAfterMove.Id != nextGrid.Id)
|
||||
{
|
||||
LogSystem.LogError($"YuugiPush aborted after target move. self={self.Id}, target={target.Id}, expectedTargetGrid={nextGrid.Id}");
|
||||
outPushed = false;
|
||||
outResult = null;
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!self.IsValidOnMap(map) || !self.IsAlive())
|
||||
{
|
||||
LogSystem.LogError($"YuugiPush aborted: self invalid after target move. self={self.Id}, target={target.Id}");
|
||||
outPushed = false;
|
||||
outResult = null;
|
||||
return true;
|
||||
}
|
||||
|
||||
if (targetGrid.RealUnit(map, out var targetGridOccupant) && targetGridOccupant.Id != self.Id)
|
||||
{
|
||||
LogSystem.LogError($"YuugiPush aborted: target origin grid occupied after push. self={self.Id}, target={target.Id}, grid={targetGrid.Id}, occupant={targetGridOccupant.Id}");
|
||||
outPushed = false;
|
||||
outResult = null;
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!Main.UnitLogic.MoveToLogic(map, self, targetGrid, MoveType.AttackMove))
|
||||
if (!YuugiPushRepositionWithoutMoveSideEffects(map, self, targetGrid))
|
||||
{
|
||||
LogSystem.LogError($"YuugiPush self move failed. self={self.Id}, target={target.Id}, to={targetGrid.Id}");
|
||||
outPushed = false;
|
||||
outResult = null;
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!self.IsValidOnMap(map) || !self.IsAlive() || !map.GetGridDataByUnitId(self.Id, out var selfGridAfterMove) || selfGridAfterMove.Id != targetGrid.Id)
|
||||
{
|
||||
LogSystem.LogError($"YuugiPush aborted after self move. self={self.Id}, target={target.Id}, expectedSelfGrid={targetGrid.Id}");
|
||||
outPushed = false;
|
||||
outResult = null;
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!target.IsValidOnMap(map) || !target.IsAlive() || !map.GetGridDataByUnitId(target.Id, out targetGridAfterMove) || targetGridAfterMove.Id != nextGrid.Id)
|
||||
{
|
||||
LogSystem.LogError($"YuugiPush aborted before damage. self={self.Id}, target={target.Id}, expectedTargetGrid={nextGrid.Id}");
|
||||
outPushed = false;
|
||||
outResult = null;
|
||||
return true;
|
||||
}
|
||||
|
||||
var cDmg = Table.Instance.CalcCounterDamage(map, self, target);
|
||||
// 使用 push 专用反击判定:绕开通用 CanCounter 中 dmg1 重算导致的误判秒杀问题。
|
||||
// push 分支入口已保证 actualDmg < target.Health,不可能秒杀,所以跳过该检查;
|
||||
// 推击的伤害在移动前已经确定,反击只应在结算后 target 仍存活时判断;
|
||||
// 其余合法限制(联盟/IsLimit*CounterAttack/视野/距离)仍然保留。
|
||||
bool canCounter = CanCounterForPush(map, self, target);
|
||||
outAttackDmg = dmg;
|
||||
|
||||
Main.UnitLogic.DamageSettlement(map, self, target, dmg, DamageType.PushAttack);
|
||||
outResult.TargetKilledAfterPush = !target.IsAlive();
|
||||
if (canCounter && target.IsAlive() && self.IsAlive())
|
||||
{
|
||||
outCounterDmg = cDmg;
|
||||
Main.UnitLogic.DamageSettlement(map, target, self, cDmg, DamageType.CounterAttack);
|
||||
outFragmentType = !self.IsAlive() ? FragmentType.AttackAndCounterDie : FragmentType.AttackAndCounter;
|
||||
}
|
||||
else if (!target.IsAlive())
|
||||
{
|
||||
outFragmentType = FragmentType.NotMoveKill;
|
||||
TryCreateBonePile(map, player, city, targetCity, target, targetGrid, fullType);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// 不能推动、或伤害足以击杀:直接攻击(含可能的+2)
|
||||
outPushed = false;
|
||||
outAttackDmg = actualDmg;
|
||||
var cDmg = Table.Instance.CalcCounterDamage(map, self, target);
|
||||
bool canCounter = Main.UnitLogic.CanCounterByRules(map, self, target);
|
||||
@ -160,42 +209,7 @@ namespace Logic.Skill
|
||||
{
|
||||
outFragmentType = FragmentType.MoveKill;
|
||||
Main.UnitLogic.MoveToLogic(map, self, targetGrid, MoveType.AttackMove);
|
||||
// 击杀英雄不生成骨堆
|
||||
if (!target.TreatedAsHero(map, target))
|
||||
{
|
||||
var aroundBuf = RentAroundBuf();
|
||||
map.GridMap.GetAroundGridData(1, 1, targetGrid, aroundBuf);
|
||||
var randomList = new List<GridData>();
|
||||
foreach (var grid in aroundBuf)
|
||||
{
|
||||
if (grid == targetGrid) continue;
|
||||
if (grid.RealUnit(map,out _)) continue;
|
||||
if(!map.CheckLandTypeForGrid(fullType, grid))continue;
|
||||
randomList.Add(grid);
|
||||
}
|
||||
ReturnAroundBuf();
|
||||
if (randomList.Count > 0)
|
||||
{
|
||||
var index = map.Net.GetRandom(map).Next(0, randomList.Count - 1);
|
||||
if (map.AddUnitData(randomList[index].Id, city.Id, fullType, out var bone))
|
||||
{
|
||||
bone.GetSkill(SkillType.BonePile, out var skill);
|
||||
var bonePile = skill as BonePileSkill;
|
||||
if (bonePile != null)
|
||||
{
|
||||
bonePile.TargetType = target.UnitFullType;
|
||||
bonePile.TargetCityId = targetCity.Id;
|
||||
}
|
||||
bone.Health = Mathf.Max(1, UnitData.CeilPositiveToInt(bone.GetMaxHealth() / 4f));
|
||||
var boneGrid = bone.Grid(map);
|
||||
if (boneGrid != null)
|
||||
{
|
||||
var sightRadius = boneGrid.Feature == TerrainFeature.Mountain ? 2 : 1;
|
||||
Main.PlayerLogic.UpdateSightByRadius_LogicView(map, player, boneGrid, sightRadius);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
TryCreateBonePile(map, player, city, targetCity, target, targetGrid, fullType);
|
||||
}
|
||||
else if (!target.IsAlive())
|
||||
{
|
||||
@ -205,6 +219,80 @@ namespace Logic.Skill
|
||||
return true;
|
||||
}
|
||||
|
||||
private static void TryCreateBonePile(MapData map, PlayerData player, CityData city, CityData targetCity, UnitData target, GridData targetGrid, UnitFullType fullType)
|
||||
{
|
||||
// 击杀英雄不生成骨堆。骨堆围绕被攻击者原格生成,保持旧逻辑位置,避免推击致死占用 nextGrid。
|
||||
if (target.TreatedAsHero(map, target)) return;
|
||||
if (!TryGetBonePileReviveType(target, out var reviveType)) return;
|
||||
|
||||
var aroundBuf = RentAroundBuf();
|
||||
map.GridMap.GetAroundGridData(1, 1, targetGrid, aroundBuf);
|
||||
var randomList = new List<GridData>();
|
||||
foreach (var grid in aroundBuf)
|
||||
{
|
||||
if (grid == targetGrid) continue;
|
||||
if (grid.RealUnit(map,out _)) continue;
|
||||
if(!map.CheckLandTypeForGrid(fullType, grid))continue;
|
||||
if(!map.CheckLandTypeForGrid(reviveType, grid))continue;
|
||||
randomList.Add(grid);
|
||||
}
|
||||
ReturnAroundBuf();
|
||||
if (randomList.Count <= 0) return;
|
||||
|
||||
var index = map.Net.GetRandom(map).Next(0, randomList.Count - 1);
|
||||
if (!map.AddUnitData(randomList[index].Id, city.Id, fullType, out var bone)) return;
|
||||
|
||||
bone.GetSkill(SkillType.BonePile, out var skill);
|
||||
var bonePile = skill as BonePileSkill;
|
||||
if (bonePile != null)
|
||||
{
|
||||
bonePile.TargetType = reviveType;
|
||||
bonePile.TargetCityId = targetCity.Id;
|
||||
}
|
||||
bone.Health = Mathf.Max(1, UnitData.CeilPositiveToInt(bone.GetMaxHealth() / 4f));
|
||||
var boneGrid = bone.Grid(map);
|
||||
if (boneGrid == null) return;
|
||||
|
||||
var sightRadius = boneGrid.Feature == TerrainFeature.Mountain ? 2 : 1;
|
||||
Main.PlayerLogic.UpdateSightByRadius_LogicView(map, player, boneGrid, sightRadius);
|
||||
}
|
||||
|
||||
private static bool TryGetBonePileReviveType(UnitData target, out UnitFullType reviveType)
|
||||
{
|
||||
reviveType = target.UnitFullType;
|
||||
var targetLandType = target.GetLandType();
|
||||
if (targetLandType is not (LandType.WaterAndAshore or LandType.WaterOnly)) return true;
|
||||
|
||||
// 船形态只是上水后的外壳,骨堆复生必须使用船里携带的原单位形态。
|
||||
// 是否能落在具体骨堆格,由 TryCreateBonePile 的候选格筛选统一检查。
|
||||
var carryType = target.CarryUnitFullType;
|
||||
if (carryType.UnitType == UnitType.None) return false;
|
||||
reviveType = carryType;
|
||||
return true;
|
||||
}
|
||||
|
||||
private static bool YuugiPushRepositionWithoutMoveSideEffects(MapData map, UnitData unit, GridData grid)
|
||||
{
|
||||
if (map == null || unit == null || grid == null) return false;
|
||||
if (grid.RealUnit(map, out var occupant) && occupant.Id != unit.Id) return false;
|
||||
if (unit.GetLandType() == LandType.WaterAndAshore && grid.Terrain == TerrainType.Land)
|
||||
{
|
||||
var carryType = unit.CarryUnitFullType;
|
||||
if (carryType.UnitType == UnitType.None || !map.CheckLandTypeForGrid(carryType, grid)) return false;
|
||||
}
|
||||
|
||||
map.SetUnitIdToGridId(unit.Id, grid.Id);
|
||||
|
||||
// YuugiPush 的位移属于同一次攻击的站位调整:不能触发移动技能副作用,
|
||||
// 但必须保持水陆形态与最终格子一致,避免船停陆地或陆地形态停港口。
|
||||
if (unit.GetLandType() == LandType.LandAndPort && grid.Resource == ResourceType.Port)
|
||||
Main.UnitLogic.LandToBoat(map, unit);
|
||||
else if (unit.GetLandType() == LandType.WaterAndAshore && grid.Terrain == TerrainType.Land)
|
||||
Main.UnitLogic.BoatToLand(map, unit);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// Push 场景专用的反击判定。
|
||||
// 问题背景:通用 UnitLogic.CanCounter 内部会重算 dmg1 = CalcDamage(self, target),
|
||||
// push 发生后 self/target 的位置都变了,基于位置的 skill 加成可能让 dmg1 漂移;
|
||||
|
||||
@ -328,10 +328,16 @@ namespace Logic
|
||||
}
|
||||
|
||||
public void Attack(MapData mapData, UnitData unit1, UnitData unit2, out int attackDmg,out int counterDmg,out FragmentType fragmentType)
|
||||
{
|
||||
Attack(mapData, unit1, unit2, out attackDmg, out counterDmg, out fragmentType, out _);
|
||||
}
|
||||
|
||||
public void Attack(MapData mapData, UnitData unit1, UnitData unit2, out int attackDmg,out int counterDmg,out FragmentType fragmentType, out YuugiPushResult yuugiPushResult)
|
||||
{
|
||||
attackDmg = 0;
|
||||
counterDmg = 0;
|
||||
fragmentType = FragmentType.Attack;
|
||||
yuugiPushResult = null;
|
||||
if (mapData == null || unit1 == null || unit2 == null) return;
|
||||
if (!unit1.IsValidOnMap(mapData) || !unit2.IsValidOnMap(mapData)) return;
|
||||
if (!mapData.GetPlayerDataByUnitId(unit1.Id, out var player1)) return;
|
||||
@ -344,7 +350,7 @@ namespace Logic
|
||||
if (unit1.GetSkill(SkillType.YuugiPush, out var yuugiPushSkill))
|
||||
{
|
||||
var push = yuugiPushSkill as YuugiPushSkill;
|
||||
if (push != null && push.YuugiPushAttack(unit1, unit2, mapData, out attackDmg, out counterDmg, out fragmentType, out _))
|
||||
if (push != null && push.YuugiPushAttack(unit1, unit2, mapData, out attackDmg, out counterDmg, out fragmentType, out yuugiPushResult))
|
||||
{
|
||||
unit1.ClearActionPoint();
|
||||
return;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user