示例#1
0
    static public async Task Option3Async(SelfCtx ctx)
    {
        await Option2Async(ctx);

        // Gain a Major Power without Forgetting.
        await ctx.DrawMajor(false, 4);

        // Other Spirits with 3 or more Absorbed Presence may do likewise."
        var presence          = (SerpentPresence)ctx.Self.Presence;
        var qualifyingSpirits = presence.AbsorbedPresences.GroupBy(x => x).Where(grp => 3 <= grp.Count()).Select(grp => grp.Key);

        foreach (var spirit in presence.AbsorbedPresences.Distinct())
        {
            await spirit.Bind(ctx.GameState).DrawMajor(false, 4);
        }
    }