更新
This commit is contained in:
@@ -43,6 +43,13 @@ namespace Continentis.MainGame
|
||||
{
|
||||
combatMainPage.teamSwitchButton.UpdateTeamPileText(CombatMainManager.Instance.characterController.playerTeam);
|
||||
}
|
||||
|
||||
/// <summary>是否正处于多目标选择模式(左键/右键由 HandCardView 接管)。</summary>
|
||||
public bool IsInMultiTargetMode()
|
||||
{
|
||||
return selectingCardView is HandCardView handCard
|
||||
&& handCard.card.attributeSubmodule.targetCount > 1;
|
||||
}
|
||||
}
|
||||
|
||||
public partial class CombatUIManager
|
||||
@@ -53,6 +60,8 @@ namespace Continentis.MainGame
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
bool isMultiTargetMode = IsInMultiTargetMode();
|
||||
|
||||
Ray ray = combatCamera.ScreenPointToRay(Mouse.current.position.ReadValue());
|
||||
|
||||
@@ -63,7 +72,8 @@ namespace Continentis.MainGame
|
||||
hoveringCharacterView ??= hit.collider.GetComponent<CombatCharacterViewBase>();
|
||||
hoveringCharacterView.SetOutline(true);
|
||||
|
||||
if (Mouse.current.leftButton.wasPressedThisFrame)
|
||||
// 多目标模式下,左键由 HandCardView 处理,跳过默认的角色面板选中逻辑
|
||||
if (!isMultiTargetMode && Mouse.current.leftButton.wasPressedThisFrame)
|
||||
{
|
||||
if (hoveringCharacterView == selectingCharacterView)
|
||||
{
|
||||
@@ -80,7 +90,7 @@ namespace Continentis.MainGame
|
||||
}
|
||||
else
|
||||
{
|
||||
if (Mouse.current.leftButton.wasPressedThisFrame)
|
||||
if (!isMultiTargetMode && Mouse.current.leftButton.wasPressedThisFrame)
|
||||
{
|
||||
selectingCharacterView?.hudContainer.DisableHUD("SelectingDot");
|
||||
selectingCharacterView = null;
|
||||
@@ -92,7 +102,7 @@ namespace Continentis.MainGame
|
||||
hoveringCharacterView?.SetOutline(false);
|
||||
hoveringCharacterView = null;
|
||||
|
||||
if (Mouse.current.leftButton.wasPressedThisFrame)
|
||||
if (!isMultiTargetMode && Mouse.current.leftButton.wasPressedThisFrame)
|
||||
{
|
||||
selectingCharacterView?.hudContainer.DisableHUD("SelectingDot");
|
||||
selectingCharacterView = null;
|
||||
|
||||
Reference in New Issue
Block a user