示例#1
0
        public void AllianceSay(string Message)
        {
            if (IsInGuild() && _Owner.GetPlayer().GldInterface.Guild.Info.AllianceId != 0 && _Owner.GetPlayer().GldInterface.Guild.Info.Members[_Owner.GetPlayer().CharacterId].RankId >= 1)
            {
                foreach (uint alli in Alliance.Alliances[Guild.Info.AllianceId].Members)
                {
                    Guild.Guild gl = World.Guild.Guild.GetGuild(alli);

                    // Filter "+" spam
                    bool isAdd = Message.StartsWith("+");

                    lock (gl.OnlineMembers)
                        foreach (Player plr in gl.OnlineMembers)
                        {
                            if (!isAdd || plr == _Owner || (plr.WorldGroup != null && plr.WorldGroup.Leader == plr))
                            {
                                plr.SendMessage(_Owner, Message, ChatLogFilters.CHATLOGFILTERS_ALLIANCE);
                            }
                        }
                }
                if (Guild.Logger != null)
                {
                    Guild.LogLine(_Owner.Name + ": " + Message);
                }
            }
        }
示例#2
0
        public GuildInterface Load(Guild.Guild Guild)
        {
            this.Guild = Guild;

            if (IsInGuild())
            {
                Guild.AddOnlineMember(_Owner.GetPlayer());
            }

            _Owner.EvtInterface.AddEventNotify(EventName.Leave, OnPlayerLeave, true);

            return(this);
        }
示例#3
0
 public void AllianceOfficerSay(string Message)
 {
     if (IsInGuild() && _Owner.GetPlayer().GldInterface.Guild.Info.AllianceId != 0 && (_Owner.GetPlayer().GldInterface.Guild.Info.Members[_Owner.GetPlayer().CharacterId].AllianceOfficer || _Owner.GetPlayer().GldInterface.Guild.Info.LeaderId == _Owner.GetPlayer().CharacterId))
     {
         foreach (uint alli in Alliance.Alliances[Guild.Info.AllianceId].Members)
         {
             Guild.Guild gl = World.Guild.Guild.GetGuild(alli);
             lock (gl.OnlineMembers)
                 foreach (Player Plr in gl.OnlineMembers)
                 {
                     if (gl.Info.Members[Plr.CharacterId].RankId >= 9 || gl.Info.Members[Plr.CharacterId].AllianceOfficer)
                     {
                         Plr.SendMessage(_Owner, Message, ChatLogFilters.CHATLOGFILTERS_ALLIANCE_OFFICER);
                     }
                 }
         }
         if (Guild.Logger != null)
         {
             Guild.LogLine(_Owner.Name + ": " + Message);
         }
     }
 }
 /// <summary>
 /// Create a new <see cref="CharacterAchievementManager"/> for <see cref="Guild.Guild"/>.
 /// </summary>
 public GuildAchievementManager(Guild.Guild guild)
 {
     this.guild = guild;
 }
 /// <summary>
 /// Create a new <see cref="CharacterAchievementManager"/> from existing <see cref="GuildModel"/> database model.
 /// </summary>
 public GuildAchievementManager(Guild.Guild guild, GuildModel model)
 {
     this.guild = guild;
     Initialise(model.Achievement, false);
 }