我想创建一个卡牌游戏(是的,包括我和每个人的狗)。我了解如何使用可脚本化的对象来处理结构简单的数据结构——例如存储名称、生命值、类型等。但是,如果我想让可脚本化的对象的一部分存储任意数量的可变动作——例如一张牌可以击中3次,一张牌可以抽牌,然后击中,然后抽牌,另一张牌可以做出完全不同的动作——那么我该如何结构这个数据?我想象着一个可以存储任意数量元素的任意列表,且这些元素是可配置的行为(如Hit()方法带有数量和类型,Block()方法带有数量和类型,Discard()方法带有要丢弃的牌数量等)

这个问题听起来应该是相对简单的,但是我不知道我在哪里出了问题。我在C#方面不是很熟练。