卡牌更新

This commit is contained in:
SoulliesOfficial
2026-04-08 04:48:35 -04:00
parent c3b1561375
commit dd2657573a
242 changed files with 1950 additions and 926 deletions

View File

@@ -107,9 +107,9 @@ namespace Continentis.MainGame.Card
int targetCount = card.attributeSubmodule.targetCount;
if (targetCount > 1)
if (targetCount > 1 && !card.HasKeyword(CardKeywords.RandomTarget))
{
// 多目标模式:先执行通用的可打出校验
// 多目标手动选择模式:先执行通用的可打出校验
if (!CheckCanStartPlay())
{
ResetSelectionState();
@@ -255,7 +255,8 @@ namespace Continentis.MainGame.Card
CombatUIManager.Instance.arrowsPage.otherPointerArrows.ForEach(arrow => { arrow.gameObject.SetActive(false); });
}
}
else if (card.attributeSubmodule.targetCount == 0)
else if (card.attributeSubmodule.targetCount == 0
|| card.HasKeyword(CardKeywords.RandomTarget))
{
Vector3 cardPosition = SpaceConverter.ScreenPointToUIPoint(arrowCanvasRect, eventData.position, uiCamera);
cardTransform.position = cardPosition;
@@ -289,7 +290,7 @@ namespace Continentis.MainGame.Card
if (!CheckCanStartPlay()) return;
if (!card.HasKeyword("TargetSelf"))
if (!card.HasKeyword("TargetSelf") && !card.HasKeyword(CardKeywords.RandomTarget))
{
if (!validTargets.Contains(hoveringCharacter))
{
@@ -320,6 +321,10 @@ namespace Continentis.MainGame.Card
{
targetList.AddRange(validTargets);
}
else if (card.HasKeyword(CardKeywords.RandomTarget))
{
targetList.AddRange(card.SetRandomTargets(validTargets));
}
else if (card.HasKeyword("TargetSelf") && card.attributeSubmodule.targetCount == 0)
{
targetList.Add(card.user);