RuneHive-Tarnish
Neural OSRS Enhancement Framework
Loading...
Searching...
No Matches
ClanDetails.java
1package com.osroyale.content.clanchannel.channel;
2
3import com.osroyale.content.clanchannel.ClanMember;
4import com.osroyale.content.clanchannel.ClanType;
5import com.osroyale.content.clanchannel.content.ClanAchievement;
6import com.osroyale.content.clanchannel.content.ClanLevel;
7import com.osroyale.content.clanchannel.content.ClanMemberComporator;
8import com.osroyale.content.clanchannel.content.ClanTask;
9
10import java.util.HashMap;
11import java.util.LinkedList;
12import java.util.List;
13
50
51public class ClanDetails {
52
54 private final ClanChannel channel;
55
57 public String owner;
58
59 public String created;
60
61 public ClanType type;
62
63 public ClanLevel level;
64
65 public ClanTask clanTask;
66
67 public int taskAmount;
68
70 public int points;
71
73 public double experience;
74
76 public String established;
77
79 public HashMap<ClanAchievement, Integer> achievements = new HashMap<ClanAchievement, Integer>(ClanAchievement.values().length) {
80 private static final long serialVersionUID = 1842952445111093360L;
81
82 {
83 for (final ClanAchievement achievement : ClanAchievement.values())
84 put(achievement, 0);
85 }
86 };
87
89 ClanDetails(ClanChannel channel) {
90 this.channel = channel;
91 }
92
93 public int getAchievementCompletion(ClanAchievement achievement) {
94 int count = 0;
95 if (achievements.containsKey(achievement)) {
96 count = achievements.get(achievement);
97 }
98 return count;
99 }
100
101 public boolean completedAchievement(ClanAchievement achievement) {
102 int progress = getAchievementCompletion(achievement);
103 int goal = achievement.amount;
104 return progress == goal;
105 }
106
108 public int getAverageTotal() {
109 return 0;
110// int total = 0;
111// Iterator<ClanMember> iterator = channel.iterator();
112// while (iterator.hasNext()) {
113// ClanMember member = iterator.next();
114// total += member.totalLevel;
115// }
116// return total / channel.size();
117 }
118
119 public int getClanRank(ClanMember member) {
120 List<ClanMember> members = new LinkedList<>();
121 members.addAll(channel.getMembers());
122 members.sort(ClanMemberComporator.NAME);
123
124 int index = 0;
125 for (ClanMember next : members) {
126 index++;
127 if (next.equals(member)) {
128 return index;
129 }
130 }
131 return index;
132 }
133
134}
HashMap< ClanAchievement, Integer > achievements