示例#1
0
		private static bool CheckBeneficialStatus( GuildStatus from, GuildStatus target )
		{
			if( from == GuildStatus.Waring || target == GuildStatus.Waring )
				return false;

			return true;
		}
示例#2
0
        public GuildMember Add(Player plr, GuildStatus rank)
        {
            var memb = Members.Where(x => x.Name == plr.Character.Name).FirstOrDefault();

            if (memb == null)
            {
                memb = new GuildMember(this, plr, rank);
                Members.Add(memb);
            }
            else
            {
                memb.Player = plr;
            }

            var status = ((Master?.Player ?? plr) == plr ? 0x80 : 0x00);

            plr.Session.SendAsync(new SGuildViewPort
            {
                Guilds = new Network.Data.GuildViewPortDto[] {
                    new Network.Data.GuildViewPortDto {
                        ID           = Index,
                        Type         = Type,
                        Status       = (byte)status,
                        RelationShip = 0,
                        Number       = plr.Session.ID | status
                    }
                }
            });

            return(memb);
        }
示例#3
0
        private static bool CheckBeneficialStatus( GuildStatus from, GuildStatus target )
        {
            if( from == GuildStatus.Waring || target == GuildStatus.Waring )
                return false;

            return true;
        }
示例#4
0
        private static bool CheckBeneficialStatus(GuildStatus from, GuildStatus target)
        {
            if (from == GuildStatus.Waring || target == GuildStatus.Waring)
            {
                return(false);
            }

            return(true);
        }
示例#5
0
        public async Task <Guild> Create(Guid id, String name, GuildStatus status, RecruitmentStatus recruitmentStatus, CancellationToken cancellationToken)
        {
            var guild = await _repository.Get(id, cancellationToken);

            if (guild != null)
            {
                if (guild.Name == name)
                {
                    return(guild);
                }
                throw new GuildAlreadyExistsException($"Гильдия {id} уже существует");
            }

            return(new Guild(id: id, name: name, status: status, recruitmentStatus: recruitmentStatus));
        }
示例#6
0
        public void UpdateRank(GuildStatus newStatus)
        {
            if (Rank == newStatus)
            {
                return;
            }

            using (var game = new GameContext())
            {
                var charId      = (from row in game.Characters where row.Name == Name select row.CharacterId).FirstOrDefault();
                var guildMember = (from row in game.GuildMembers where row.MembId == charId select row).FirstOrDefault();
                guildMember.Rank = (int)Rank;
                game.Update(guildMember);
                game.SaveChanges();
            }

            Rank = newStatus;
        }
示例#7
0
        public GuildMember(Guild guild, Player plr, GuildStatus rank)
        {
            Name   = plr.Character.Name;
            Player = plr;
            Rank   = rank;
            Guild  = guild;

            using (var game = new GameContext())
            {
                var guildMember = new MU.DataBase.GuildMemberDto
                {
                    GuildId = guild.Index,
                    MembId  = plr.Character.Id,
                    Rank    = (int)rank,
                };
                game.Add(guildMember);
                game.SaveChanges();
            }
        }
示例#8
0
文件: Guild.cs 项目: kevinf93/MuEmu
        public GuildMember Add(Player plr, GuildStatus rank)
        {
            var memb = Members.Where(x => x.Name == plr.Character.Name).FirstOrDefault();

            if (memb == null)
            {
                memb = new GuildMember(this, plr, rank);
                Members.Add(memb);
            }
            else
            {
                memb.Player = plr;
            }

            plr.Character.Guild = this;
            memb.ViewPort();

            return(memb);
        }
示例#9
0
文件: Auth_S2C.cs 项目: fos83/MuEmu
        public override CharList AddChar(byte id, CharacterDto @char, byte[] charSet, GuildStatus gStatus)
        {
            var l = CharacterList.ToList();

            l.Add(new CharacterPreviewS16KorDto
            {
                CharSet     = charSet,
                ControlCode = (ControlCode)@char.CtlCode,
                GuildStatus = gStatus,
                index       = id,
                level       = @char.Level,
                name        = @char.Name,
                PKLevel     = (byte)@char.PKLevel
            });
            CharacterList = l.ToArray();
            Count         = (byte)CharacterList.Count();
            return(this);
        }
示例#10
0
文件: Auth_S2C.cs 项目: fos83/MuEmu
        public override CharList AddChar(byte id, CharacterDto @char, byte[] charSet, GuildStatus gStatus)
        {
            var l = CharacterList.ToList();

            l.Add(new CharacterPreviewS12Dto(id, @char.Name, @char.Level, (ControlCode)@char.CtlCode, charSet, gStatus, 3));
            CharacterList = l.ToArray();
            Count         = (byte)CharacterList.Length;
            return(this);
        }
示例#11
0
文件: Auth_S2C.cs 项目: fos83/MuEmu
 public abstract CharList AddChar(byte id, CharacterDto @char, byte[] charSet, GuildStatus gStatus);
示例#12
0
 public GuildMember(Guild guild, string name, GuildStatus rank)
 {
     Name  = name;
     Rank  = rank;
     Guild = guild;
 }
示例#13
0
 public Guild(Guid id, String name, GuildStatus status, RecruitmentStatus recruitmentStatus)
 => (Id, Name, Status, RecruitmentStatus)
示例#14
0
 public Guild(Guid id, RecruitmentStatus recruitmentStatus, string name, DateTime createDate, DateTime updateDate, GuildStatus status)
 => (Id, RecruitmentStatus, Name, CreateDate, UpdateDate, Status)