Exemplo n.º 1
0
        internal virtual Membership Join(Guild guild, IModelFactory factory)
        {
            var membership = Context.ActivateMembership(guild, factory);

            guild.AddMember(Context);
            var nextState = guild.Members.Count == 1
                ? new GuildLeaderState(Context, guild) as MemberState
                : new GuildMemberState(Context, guild);

            Context.ChangeState(nextState);
            return(membership);
        }