RuneHive-Tarnish
Neural OSRS Enhancement Framework
Loading...
Searching...
No Matches
IPBannedPlayers.java
1package com.osroyale.game.world.entity.mob.player;
2
3import com.osroyale.game.task.Task;
4import com.osroyale.game.world.World;
5
6import java.io.IOException;
7import java.nio.charset.Charset;
8import java.nio.file.Files;
9import java.nio.file.Paths;
10import java.util.ArrayList;
11import java.util.List;
12
35
36public class IPBannedPlayers {
37
38 private static final String IP_BAN_LIST_PATH = "./data/ip-bans.txt";
39
40 public static final List<String> ipBans = new ArrayList<>();
41
42 public static void load() {
43 if (!ipBans.isEmpty()) {
44 ipBans.clear();
45 }
46 try {
47 ipBans.addAll(Files.readAllLines(Paths.get(IP_BAN_LIST_PATH)));
48 } catch (IOException e) {
49 e.printStackTrace();
50 }
51 }
52
53 public static void ipBan(String host) {
54 host = host.toLowerCase();
55 if (ipBans.contains(host)) {
56 return;
57 }
58 ipBans.add(host);
59 writeIpBans();
60 }
61
62 private static void writeIpBans() {
63 World.schedule(new Task(1) {
64 @Override
65 public void execute() {
66 try {
67 Files.write(Paths.get(IP_BAN_LIST_PATH), ipBans, Charset.defaultCharset());
68 cancel();
69 } catch (IOException e) {
70 e.printStackTrace();
71 }
72 }
73 });
74 }
75}
static void schedule(Task task)
Definition World.java:284