Death Counter
IntermediateDataCounts and displays how many times you've died. Tracks death events and maintains a counter.
12 min read
What It Does
Counts and displays how many times you've died. Tracks death events and maintains a counter.
Source Code
java
1package com.example;
2
3import net.runelite.api.Client;
4import net.runelite.api.events.PlayerDeath;
5import net.runelite.client.eventbus.Subscribe;
6import net.runelite.client.plugins.Plugin;
7import net.runelite.client.plugins.PluginDescriptor;
8import net.runelite.client.ui.overlay.Overlay;
9import net.runelite.client.ui.overlay.OverlayManager;
10import javax.inject.Inject;
11import java.awt.*;
12
13@PluginDescriptor(
14 name = "Death Counter",
15 description = "Counts deaths"
16)
17public class DeathCounterPlugin extends Plugin {
18 @Inject
19 private Client client;
20
21 @Inject
22 private OverlayManager overlayManager;
23
24 private int deathCount = 0;
25
26 private final Overlay overlay = new Overlay() {
27 @Override
28 public Dimension render(Graphics2D graphics) {
29 graphics.setColor(Color.RED);
30 graphics.drawString("Deaths: " + deathCount, 10, 10);
31 return new Dimension(120, 20);
32 }
33 };
34
35 @Subscribe
36 public void onPlayerDeath(PlayerDeath event) {
37 if (event.getPlayer() == client.getLocalPlayer()) {
38 deathCount++;
39 }
40 }
41
42 @Override
43 protected void startUp() {
44 overlayManager.add(overlay);
45 }
46
47 @Override
48 protected void shutDown() {
49 overlayManager.remove(overlay);
50 }
51}Code Annotations
Line 22
Track death count
Line 35
Listen for death events
Line 37
Check if local player died