fix papi placeholders when using world or placeholder requirements
This commit is contained in:
+1
-1
@@ -14,7 +14,7 @@ pitest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
group 'sh.okx'
|
group 'sh.okx'
|
||||||
version '3.14.1'
|
version '3.14.2'
|
||||||
|
|
||||||
java {
|
java {
|
||||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||||
|
|||||||
@@ -177,11 +177,11 @@ public class RankupExpansion implements Expansion {
|
|||||||
case "left":
|
case "left":
|
||||||
return placeholders.getSimpleFormat().format(orElse(requirement, r -> r.getRemaining(player), 0));
|
return placeholders.getSimpleFormat().format(orElse(requirement, r -> r.getRemaining(player), 0));
|
||||||
case "done":
|
case "done":
|
||||||
return placeholders.getSimpleFormat().format(orElse(requirement, r -> r.getValueDouble() - r.getRemaining(player), 0));
|
return placeholders.getSimpleFormat().format(orElse(requirement, r -> r.getTotal(player) - r.getRemaining(player), 0));
|
||||||
case "percent_left":
|
case "percent_left":
|
||||||
return placeholders.getPercentFormat().format(orElse(requirement, r -> (r.getRemaining(player) / r.getValueDouble()) * 100, 0));
|
return placeholders.getPercentFormat().format(orElse(requirement, r -> (r.getRemaining(player) / r.getTotal(player)) * 100, 0));
|
||||||
case "percent_done":
|
case "percent_done":
|
||||||
return placeholders.getPercentFormat().format(orElse(requirement, r -> (1 - (r.getRemaining(player) / r.getValueDouble())) * 100, 100));
|
return placeholders.getPercentFormat().format(orElse(requirement, r -> (1 - (r.getRemaining(player) / r.getTotal(player))) * 100, 100));
|
||||||
default:
|
default:
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,29 @@
|
|||||||
|
package sh.okx.rankup;
|
||||||
|
|
||||||
|
|
||||||
|
import be.seeseemelk.mockbukkit.entity.PlayerMock;
|
||||||
|
import org.bukkit.Location;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
import sh.okx.rankup.placeholders.RankupExpansion;
|
||||||
|
|
||||||
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||||
|
|
||||||
|
public class WorldRequirementTest extends RankupTest {
|
||||||
|
|
||||||
|
public WorldRequirementTest() {
|
||||||
|
super("world");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testStatusComplete() {
|
||||||
|
PlayerMock player = server.addPlayer();
|
||||||
|
groupProvider.addGroup(player.getUniqueId(), "a");
|
||||||
|
|
||||||
|
RankupExpansion expansion = plugin.getPlaceholders().getExpansion();
|
||||||
|
assertEquals("0", expansion.placeholder(player, "requirement_world_percent_done"));
|
||||||
|
|
||||||
|
player.teleport(new Location(server.getWorld("the_nether"), 0, 0, 0));
|
||||||
|
|
||||||
|
assertEquals("100", expansion.placeholder(player, "requirement_world_percent_done"));
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
a:
|
||||||
|
rank: 'a'
|
||||||
|
next: 'b'
|
||||||
|
requirements:
|
||||||
|
- 'world the_nether'
|
||||||
Reference in New Issue
Block a user