package engine type Card struct { Name string AllOut bool Text string Flavor string } func (c *Card) Base() *Card { return c } func (c *Card) CanPlay(g *Game) bool { panic("unimplemented") } type IsCard interface { Base() *Card CanPlay(g *Game) bool }