using System.Collections.Generic; using Continentis.MainGame.Card; using Continentis.MainGame.Character; using Continentis.MainGame.Commands; using SLSFramework.General; using UnityEngine; namespace Continentis.Mods.Basic.Cards { public class FightingInspiration : CardLogicBase { public override void SetUpLogicComponents() { AddLogicComponent().SetFilter(CardFilter); } public override List PlayEffect(List targetList) { base.PlayEffect(targetList); CommandGroup mainGroup = new CommandGroup(ExecutionMode.Sequential); mainGroup.AddCommand(new Cmd_PlayAnimation(user.characterView, "Skill")); mainGroup.AddCommand(new Cmd_Function(() => { List filtered = LogicComponent().GetFilteredGlobalCardData(); if(filtered.TryGetRandom(out CardData cardData)) { CardInstance.GenerateCardInstance(cardData, user, "Hand").GenerateHandCardView("Hand"); } })); return new List { mainGroup }; } private bool CardFilter(CardData cardData) { return cardData.cardType == CardType.Attack && cardData.HasKeyword("Physics"); } } }