public virtual IList<Error> SetMemberPrivilageAndTitle(Player player, TribePermission permission, string title, ISession session) { IList<Error> lstError = new List<Error>(); if (this.Group != player.Group) { lstError.Add(new Error("Không có quyền truy cập chức năng này")); return lstError; } if ((this.TribePermission & TribePermission.Baron) != TribePermission.Baron) { lstError.Add(new Error("Không có quyền truy cập chức năng này")); return lstError; } if ((int)player.TribePermission > (int)this.TribePermission) { lstError.Add(new Error("Không có quyền thay đổi thông tin thành viên này")); return lstError; } if (permission == beans.TribePermission.Duke && this.TribePermission != beans.TribePermission.Duke) { lstError.Add(new Error("Không có quyền truy cập chức năng này")); return lstError; } player.TribePermission = permission; player.TribeTitle = title; return lstError; }
public void CreateRank(byte id, string name, TribePermission permission) { var rank = new TribeRank(id) { Name = name, Permission = permission }; ranks[rank.Id] = rank; }
public bool HasRight(uint playerId, TribePermission permission) { ITribesman tribesman; if (!TryGetTribesman(playerId, out tribesman)) { return(false); } return(tribesman.Rank.Permission.HasFlag(TribePermission.All) || tribesman.Rank.Permission.HasFlag(permission)); }
public Error UpdateRank(byte rank, string name, TribePermission permission) { ITribeRank tribeRank; if (!ranks.TryGetValue(rank, out tribeRank)) { return(Error.TribeRankNotFound); } if (!TribeRank.IsNameValid(name)) { return(Error.TribeRankInvalidName); } tribeRank.Name = name; if (tribeRank != ChiefRank) { tribeRank.Permission = permission; } dbManager.Save(this); SendRanksUpdate(); return(Error.Ok); }
public virtual bool CheckPrivilage(TribePermission privilage) { return ((this.TribePermission & privilage) == privilage); }