Пример #1
0
            public static string Execute(params string[] args)
            {
                if (args.Length == 0)
                {
                    return(HelpCommand.Execute(name));
                }
                else
                {
                    GuildManager guildManager = GameManager.Instance.GuildManager;

                    // Is the group a guild group?
                    if (Enum.IsDefined(typeof(FactionFile.GuildGroups), args[0]))
                    {
                        FactionFile.GuildGroups guildGroup = (FactionFile.GuildGroups)Enum.Parse(typeof(FactionFile.GuildGroups), args[0]);

                        if (guildManager.HasJoined(guildGroup))
                        {
                            return("Already a member.");
                        }
                        else if (guildGroup == FactionFile.GuildGroups.HolyOrder || guildGroup == FactionFile.GuildGroups.KnightlyOrder)
                        {
                            if (args.Length > 1)
                            {
                                int    factionId = int.Parse(args[1]);
                                IGuild guild     = guildManager.JoinGuild(guildGroup, factionId);
                                guildManager.AddMembership(guildGroup, guild);
                                return("Guild joined.");
                            }
                            else
                            {
                                return("Need a faction id for temples & knightly orders.");
                            }
                        }
                        else
                        {
                            IGuild guild = guildManager.JoinGuild(guildGroup);
                            guildManager.AddMembership(guildGroup, guild);
                            return("Guild " + guildGroup.ToString() + " joined.");
                        }
                    }
                    else
                    {
                        return("Not a recognised guild group, see FactionFile.GuildGroups enum.");
                    }
                }
            }
Пример #2
0
            public static string Execute(params string[] args)
            {
                if (args.Length != 2)
                {
                    return(HelpCommand.Execute(name));
                }
                else
                {
                    GuildManager guildManager = GameManager.Instance.GuildManager;
                    PlayerEntity playerEntity = GameManager.Instance.PlayerEntity;

                    // Is the group a guild group?
                    if (Enum.IsDefined(typeof(FactionFile.GuildGroups), args[0]))
                    {
                        FactionFile.GuildGroups guildGroup = (FactionFile.GuildGroups)Enum.Parse(typeof(FactionFile.GuildGroups), args[0]);

                        if (guildManager.HasJoined(guildGroup))
                        {
                            int newRank = int.Parse(args[1]);
                            if (newRank > 0 && newRank < 10)
                            {
                                IGuild guild  = guildManager.GetGuild(guildGroup);
                                int    rep    = guild.GetReputation(playerEntity);
                                int    newRep = Guild.rankReqReputation[newRank];
                                playerEntity.FactionData.ChangeReputation(guild.GetFactionId(), newRep - rep, true);
                                guild.Rank = newRank;
                                return("Rank & reputation updated.");
                            }
                            else
                            {
                                return("Rank must be between 1 and 9.");
                            }
                        }
                        else
                        {
                            return("Not a member of that guild.");
                        }
                    }
                    else
                    {
                        return("Not a recognised guild group, see FactionFile.GuildGroups enum.");
                    }
                }
            }