Skip to content

Commit

Permalink
Closes #9, adds config support for customising items per page on lists
Browse files Browse the repository at this point in the history
  • Loading branch information
WiIIiam278 committed Jan 25, 2021
1 parent 4b81768 commit 5c6a3df
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 6 deletions.
21 changes: 21 additions & 0 deletions src/main/java/me/william278/huskhomes2/Objects/Settings.java
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,11 @@ public class Settings {
int teleportRequestExpiryTime;
int teleportWarmupTime;

// Number of items per page on lists
int privateHomesPerPage;
int publicHomesPerPage;
int warpsPerPage;

// RTP command settings
boolean doRtpCommand;
int rtpRange;
Expand Down Expand Up @@ -134,6 +139,10 @@ private void setSettings(FileConfiguration configFile) {
this.rtpRange = configFile.getInt("random_teleport_command.range");
this.rtpCooldown = configFile.getInt("random_teleport_command.cooldown");

this.privateHomesPerPage = configFile.getInt("general.lists.private_homes_per_page");
this.publicHomesPerPage = configFile.getInt("general.lists.public_homes_per_page");
this.warpsPerPage = configFile.getInt("general.lists.warps_per_page");

this.maximumHomes = configFile.getInt("general.max_sethomes");
this.teleportRequestExpiryTime = configFile.getInt("general.teleport_request_expiry_time");
this.teleportWarmupTime = configFile.getInt("general.teleport_warmup_time");
Expand Down Expand Up @@ -287,4 +296,16 @@ public double getPublicHomeCost() {
public double getRtpCost() {
return rtpCost;
}

public int getPrivateHomesPerPage() {
return privateHomesPerPage;
}

public int getPublicHomesPerPage() {
return publicHomesPerPage;
}

public int getWarpsPerPage() {
return warpsPerPage;
}
}
15 changes: 9 additions & 6 deletions src/main/java/me/william278/huskhomes2/listHandler.java
Original file line number Diff line number Diff line change
Expand Up @@ -83,8 +83,9 @@ public static void displayPlayerHomeList(Player player, int pageNumber) {
messageManager.sendMessage(player, "error_no_homes_set");
return;
}
int homeLowerBound = (pageNumber - 1) * 10;
int homeUpperBound = pageNumber * 10;
int itemsPerPage = HuskHomes.settings.getPrivateHomesPerPage();
int homeLowerBound = (pageNumber - 1) * itemsPerPage;
int homeUpperBound = pageNumber * itemsPerPage;
if (homeUpperBound > homes.size()) {
homeUpperBound = homes.size();
}
Expand Down Expand Up @@ -126,8 +127,9 @@ public static void displayPublicHomeList(Player player, int pageNumber) {
messageManager.sendMessage(player, "error_no_public_homes_set");
return;
}
int homeLowerBound = (pageNumber - 1) * 10;
int homeUpperBound = pageNumber * 10;
int itemsPerPage = HuskHomes.settings.getPublicHomesPerPage();
int homeLowerBound = (pageNumber - 1) * itemsPerPage;
int homeUpperBound = pageNumber * itemsPerPage;
if (homeUpperBound > homes.size()) {
homeUpperBound = homes.size();
}
Expand Down Expand Up @@ -169,8 +171,9 @@ public static void displayWarpList(Player player, int pageNumber) {
messageManager.sendMessage(player, "error_no_warps_set");
return;
}
int warpsLowerBound = (pageNumber - 1) * 10;
int warpsUpperBound = pageNumber * 10;
int itemsPerPage = HuskHomes.settings.getWarpsPerPage();
int warpsLowerBound = (pageNumber - 1) * itemsPerPage;
int warpsUpperBound = pageNumber * itemsPerPage;
if (warpsUpperBound > warps.size()) {
warpsUpperBound = warps.size();
}
Expand Down
4 changes: 4 additions & 0 deletions src/main/resources/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,10 @@ general:
max_sethomes: 10
teleport_warmup_time: 5
teleport_request_expiry_time: 60
lists:
private_homes_per_page: 10
public_homes_per_page: 10
warps_per_page: 10
bungee_options:
enable_bungee_mode: false
server_id: 'server'
Expand Down

0 comments on commit 5c6a3df

Please sign in to comment.