package com.aionemu.gameserver.model.team.legion; /** * @author Simple */ public class LegionMember { private int objectId = 0; protected Legion legion = null; protected String nickname = ""; protected String selfIntro = ""; protected int challengeScore; protected LegionRank rank = LegionRank.VOLUNTEER; /** * If player is defined later on this constructor is called */ public LegionMember(int objectId) { this.objectId = objectId; } /** * This constructor is called when a legion is created */ public LegionMember(int objectId, Legion legion, LegionRank rank) { this.setObjectId(objectId); this.setLegion(legion); this.setRank(rank); } /** * This constructor is called when a LegionMemberEx is called */ public LegionMember() { } /** * @param legion * the legion to set */ public void setLegion(Legion legion) { this.legion = legion; } /** * @return the legion */ public Legion getLegion() { return legion; } /** * @param rank * the rank to set */ public void setRank(LegionRank rank) { this.rank = rank; } /** * @return the rank */ public LegionRank getRank() { return rank; } public boolean isBrigadeGeneral() { return rank == LegionRank.BRIGADE_GENERAL; } /** * @param nickname * the nickname to set */ public void setNickname(String nickname) { this.nickname = nickname; } /** * @return the nickname */ public String getNickname() { return nickname; } /** * @param selfIntro * the selfIntro to set */ public void setSelfIntro(String selfIntro) { this.selfIntro = selfIntro; } /** * @return the selfIntro */ public String getSelfIntro() { return selfIntro; } /** * @return the challengeScore */ public int getChallengeScore() { return challengeScore; } /** * @param challengeScore * the challengeScore to set */ public void setChallengeScore(int challengeScore) { this.challengeScore = challengeScore; } /** * @param amount */ public void increaseChallengeScore(int amount) { this.challengeScore += amount; } /** * @param objectId * the objectId to set */ public void setObjectId(int objectId) { this.objectId = objectId; } /** * @return the objectId */ public int getObjectId() { return objectId; } public boolean hasRights(LegionPermissionsMask permissions) { int legionarPermission = 0; switch (this.getRank()) { case BRIGADE_GENERAL: return true; case DEPUTY: legionarPermission = legion.getDeputyPermission(); break; case CENTURION: legionarPermission = legion.getCenturionPermission(); break; case LEGIONARY: legionarPermission = legion.getLegionaryPermission(); break; case VOLUNTEER: legionarPermission = legion.getVolunteerPermission(); break; } return permissions.can(legionarPermission); } }