RuneHive-Tarnish
Neural OSRS Enhancement Framework
Loading...
Searching...
No Matches
AchievementWriter.java
1package com.osroyale.content.achievement;
2
3import com.osroyale.content.writer.InterfaceWriter;
4import com.osroyale.game.world.entity.mob.player.Player;
5import com.osroyale.net.packet.out.SendColor;
6import com.osroyale.net.packet.out.SendScrollbar;
7import com.osroyale.net.packet.out.SendString;
8
9import static com.osroyale.content.achievement.AchievementType.*;
10
37
38public class AchievementWriter extends InterfaceWriter {
39
40 public AchievementWriter(Player player) {
41 super(player);
42 int total = AchievementList.values().length;
43 int progress = (int) (AchievementHandler.getTotalCompleted(player) * 100 / (double) AchievementList.getTotal());
44
45 int pvp = (int) (AchievementHandler.getDifficultyCompletion(player, PVP) * 100 / (double) AchievementHandler.getDifficultyAmount(PVP));
46 int pvm = (int) (AchievementHandler.getDifficultyCompletion(player, PVM) * 100 / (double) AchievementHandler.getDifficultyAmount(PVM));
47 int skilling = (int) (AchievementHandler.getDifficultyCompletion(player, SKILLING) * 100 / (double) AchievementHandler.getDifficultyAmount(SKILLING));
48 int minigame = (int) (AchievementHandler.getDifficultyCompletion(player, MINIGAME) * 100 / (double) AchievementHandler.getDifficultyAmount(MINIGAME));
49 int miscellaneous = (int) (AchievementHandler.getDifficultyCompletion(player, MISCELLANEOUS) * 100 / (double) AchievementHandler.getDifficultyAmount(MISCELLANEOUS));
50
51 player.send(new SendString("Player Killing (" + pvp + "%)", 35051));
52 player.send(new SendColor(35051, AchievementHandler.getColor(player, PVP)));
53 player.send(new SendString("Monster Killing (" + pvm + "%)", 35052));
54 player.send(new SendColor(35052, AchievementHandler.getColor(player, PVM)));
55 player.send(new SendString("Skilling (" + skilling + "%)", 35053));
56 player.send(new SendColor(35053, AchievementHandler.getColor(player, AchievementType.SKILLING)));
57 player.send(new SendString("Minigames (" + minigame + "%)", 35054));
58 player.send(new SendColor(35054, AchievementHandler.getColor(player, AchievementType.MINIGAME)));
59 player.send(new SendString("Miscellaneous (" + miscellaneous + "%)", 35055));
60 player.send(new SendColor(35055, AchievementHandler.getColor(player, AchievementType.MISCELLANEOUS)));
61
62 player.send(new SendScrollbar(35050, 200));
63 player.send(new SendString("Completed: " + AchievementHandler.getTotalCompleted(player) + "/" + total + " (" + progress + "%)", 35004));
64 }
65
66 @Override
67 protected int startingIndex() {
68 return 35051;
69 }
70
71 @Override
72 protected String[] text() {
73 return null;
74 }
75
76 @Override
77 protected int[][] color() {
78 return null;
79 }
80
81 @Override
82 protected int[][] font() {
83 return null;
84 }
85}
static int getDifficultyCompletion(Player player, AchievementType difficulty)