Files
runelite/runescape-client/src/main/java/RuneLiteClanMember.java
Owain van Brakel c57301c0d3 project: Mixins
2022-01-16 04:13:20 +01:00

125 lines
2.6 KiB
Java

import net.runelite.api.clan.ClanMember;
import net.runelite.api.clan.ClanRank;
public class RuneLiteClanMember implements ClanMember
{
public final int idx;
public final ClanSettings clanSettings;
public RuneLiteClanMember(ClanSettings clanSettings, int idx) {
this.clanSettings = clanSettings;
this.idx = idx;
}
public ClanRank getRank() {
return getClanRank(this.clanSettings.memberRanks[this.idx]);
}
public String getName() {
return this.clanSettings.memberNames[this.idx];
}
public ClanRank getClanRank(int rank)
{
switch (rank)
{
case -1:
return ClanRank.GUEST;
case 10:
return ClanRank.CLAN_RANK_2;
case 20:
return ClanRank.CLAN_RANK_3;
case 30:
return ClanRank.CLAN_RANK_4;
case 40:
return ClanRank.CLAN_RANK_5;
case 50:
return ClanRank.CLAN_RANK_6;
case 60:
return ClanRank.CLAN_RANK_7;
case 70:
return ClanRank.CLAN_RANK_8;
case 80:
return ClanRank.CLAN_RANK_9;
case 90:
return ClanRank.CLAN_RANK_10;
case 100:
return ClanRank.ADMINISTRATOR;
case 105:
return ClanRank.CLAN_RANK_11;
case 110:
return ClanRank.CLAN_RANK_12;
case 115:
return ClanRank.CLAN_RANK_13;
case 120:
return ClanRank.CLAN_RANK_14;
case 125:
return ClanRank.DEPUTY_OWNER;
case 126:
return ClanRank.OWNER;
case 127:
return ClanRank.JMOD;
default:
return ClanRank.CLAN_RANK_1;
}
}
public boolean instanceOf(Object o) {
return o instanceof RuneLiteClanMember;
}
@Override
public boolean equals(Object o) {
if (o == this) {
return true;
} else if (!(o instanceof RuneLiteClanMember)) {
return false;
} else {
RuneLiteClanMember clanMember = (RuneLiteClanMember)o;
if (!clanMember.instanceOf(this)) {
return false;
} else {
String thisName = this.getName();
String objName = clanMember.getName();
if (thisName == null) {
if (objName != null) {
return false;
}
} else if (!thisName.equals(objName)) {
return false;
}
ClanRank thisRank = this.getRank();
ClanRank objRank = clanMember.getRank();
if (thisRank == null) {
if (objRank != null) {
return false;
}
} else if (!thisRank.equals(objRank)) {
return false;
}
return true;
}
}
}
@Override
public int hashCode() {
byte b = 1;
String name = this.getName();
int hash = b * 59 + (name == null ? 43 : name.hashCode());
ClanRank rank = this.getRank();
hash = hash * 59 + (rank == null ? 43 : rank.hashCode());
return hash;
}
public String toString() {
return "ClanMemberImpl(getName=" + this.getName() + ", getRank=" + this.getRank() + ")";
}
}