Skip to content

Commit abd4365

Browse files
committed
fix papi placeholders when using world or placeholder requirements
1 parent 8bf5029 commit abd4365

File tree

4 files changed

+38
-4
lines changed

4 files changed

+38
-4
lines changed

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ pitest {
1414
}
1515

1616
group 'sh.okx'
17-
version '3.14.1'
17+
version '3.14.2'
1818

1919
java {
2020
sourceCompatibility = JavaVersion.VERSION_1_8

src/main/java/sh/okx/rankup/placeholders/RankupExpansion.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -177,11 +177,11 @@ private String getPlaceholderRequirement(Player player, Rank rank, String requir
177177
case "left":
178178
return placeholders.getSimpleFormat().format(orElse(requirement, r -> r.getRemaining(player), 0));
179179
case "done":
180-
return placeholders.getSimpleFormat().format(orElse(requirement, r -> r.getValueDouble() - r.getRemaining(player), 0));
180+
return placeholders.getSimpleFormat().format(orElse(requirement, r -> r.getTotal(player) - r.getRemaining(player), 0));
181181
case "percent_left":
182-
return placeholders.getPercentFormat().format(orElse(requirement, r -> (r.getRemaining(player) / r.getValueDouble()) * 100, 0));
182+
return placeholders.getPercentFormat().format(orElse(requirement, r -> (r.getRemaining(player) / r.getTotal(player)) * 100, 0));
183183
case "percent_done":
184-
return placeholders.getPercentFormat().format(orElse(requirement, r -> (1 - (r.getRemaining(player) / r.getValueDouble())) * 100, 100));
184+
return placeholders.getPercentFormat().format(orElse(requirement, r -> (1 - (r.getRemaining(player) / r.getTotal(player))) * 100, 100));
185185
default:
186186
return null;
187187
}
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
package sh.okx.rankup;
2+
3+
4+
import be.seeseemelk.mockbukkit.entity.PlayerMock;
5+
import org.bukkit.Location;
6+
import org.junit.jupiter.api.Test;
7+
import sh.okx.rankup.placeholders.RankupExpansion;
8+
9+
import static org.junit.jupiter.api.Assertions.assertEquals;
10+
11+
public class WorldRequirementTest extends RankupTest {
12+
13+
public WorldRequirementTest() {
14+
super("world");
15+
}
16+
17+
@Test
18+
public void testStatusComplete() {
19+
PlayerMock player = server.addPlayer();
20+
groupProvider.addGroup(player.getUniqueId(), "a");
21+
22+
RankupExpansion expansion = plugin.getPlaceholders().getExpansion();
23+
assertEquals("0", expansion.placeholder(player, "requirement_world_percent_done"));
24+
25+
player.teleport(new Location(server.getWorld("the_nether"), 0, 0, 0));
26+
27+
assertEquals("100", expansion.placeholder(player, "requirement_world_percent_done"));
28+
}
29+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
a:
2+
rank: 'a'
3+
next: 'b'
4+
requirements:
5+
- 'world the_nether'

0 commit comments

Comments
 (0)