keyword + animation

This commit is contained in:
SoulliesOfficial
2025-10-27 07:04:34 -04:00
parent c3c4a17440
commit 2906206f0c
40 changed files with 512 additions and 384 deletions

View File

@@ -35,6 +35,7 @@ namespace Continentis.Mods.Basic.Cards
private void SelectEffect(CardInstance card)
{
card.cardLogic.ModifyAttribute("StaminaCost", -1);
card.cardLogic.contentSubmodule.keywords.Add("Retain");
card.cardLogic.contentSubmodule.originalFunctionText += " + $Keyword(\"Retain\")";
CardTextInterpreter.InterpretText(card.cardLogic, true);
card.handCardView.Setup();

View File

@@ -34,7 +34,7 @@ namespace Continentis.Mods.Basic.Cards
private bool CardFilter(CardData cardData)
{
return cardData.cardType == CardType.Attack && cardData.HasTag("Physics");
return cardData.cardType == CardType.Attack && cardData.HasKeyword("Physics");
}
}
}

View File

@@ -24,7 +24,7 @@ namespace Continentis.Mods.Basic.Cards
mainGroup.AddCommand(new Cmd_PlayAnimation(user.characterView, "Skill"));
mainGroup.AddCommand(new Cmd_Function(() =>
{
CardData holyWaterCardData = LogicComponent<CardLogicComponent_GenerateCards>().GetDerivativeCardData(0);
CardData holyWaterCardData = GetDerivativeCardData(0);
CardInstance.GenerateCardInstance(holyWaterCardData, user.team, "Hand");
}));

View File

@@ -1,4 +1,5 @@
using System.Collections.Generic;
using System.Linq;
using Continentis.MainGame.Card;
using Continentis.MainGame.Character;
using Continentis.MainGame.Commands;
@@ -14,18 +15,22 @@ namespace Continentis.Mods.Basic.Cards
{
AddLogicComponent<CardLogicComponent_Attack>();
}
protected override CommandBase PlayEffect(List<CharacterBase> targetList)
{
CommandGroup mainGroup = TargetListCommandGroup(targetList,
new Cmd_PlayAnimation(user.characterView, "Attack"),
new Cmd_PlaySFX("SFX_Basic_SwordStrike"),
new Cmd_SpawnVFX("VFX_Basic_RedImpact"),
new Cmd_ParamFunction<CharacterBase>(target => user.Attack(target, GetFinalDamage(target))));
new Cmd_SpawnVFX("VFX_Basic_RedImpact"));
foreach (Cmd_PlayAnimation cmd in mainGroup.GetAllCommands<Cmd_PlayAnimation>())
{
cmd.AddAction<CharacterBase>(0.7f, "Target", target => user.Attack(target, GetFinalDamage(target)));
}
return mainGroup;
}
public override void ApplyAttributeChangesByCard()
{
LogicComponent<CardLogicComponent_Attack>().SetDamage_Strike();