Added support for multiverse inventories

This commit is contained in:
BuildTools 2021-12-31 09:10:25 -05:00
parent 961906d4d6
commit 5ef902b0c2
2 changed files with 23 additions and 1 deletions

View File

@ -105,6 +105,9 @@ public class DGamePlayer extends DInstancePlayer implements GamePlayer {
initDGroupTag();
}
String originalWorld = player.getWorld().getName();
addMultiversePerm(originalWorld);
Location teleport = world.getLobbyLocation();
if (teleport == null) {
player.teleport(world.getWorld().getSpawnLocation());
@ -112,6 +115,8 @@ public class DGamePlayer extends DInstancePlayer implements GamePlayer {
player.teleport(teleport);
}
removeMultiversePerm(originalWorld);
if (!((DGameWorld) world).hasReadySign()) {
MessageUtil.sendMessage(player, DMessage.ERROR_NO_READY_SIGN.getMessage(world.getName()));
}
@ -380,7 +385,10 @@ public class DGamePlayer extends DInstancePlayer implements GamePlayer {
delete();
if (player.isOnline()) {
String gameWorld = getGameWorld().getWorld().getName();
addMultiversePerm(gameWorld);
reset(finished);
removeMultiversePerm(gameWorld);
}
// Permission bridge
@ -589,6 +597,7 @@ public class DGamePlayer extends DInstancePlayer implements GamePlayer {
plugin.getPermissionProvider().playerAddTransient(getGame().getWorld().getWorld().getName(), player, permission);
}
}
}
/**
@ -808,4 +817,17 @@ public class DGamePlayer extends DInstancePlayer implements GamePlayer {
DistanceTrigger.triggerAllInDistance(player, (DGameWorld) getGameWorld());
}
// Add permission for by passing multiverse inventories when entering or leaving a dungeon
private void addMultiversePerm(String world){
if (plugin.getPermissionProvider() != null)
plugin.getPermissionProvider().playerAddTransient(world, player, "mvinv.bypass.*");
}
// Remove permission for by passing multiverse inventories when entering or leaving a dungeon
private void removeMultiversePerm(String world){
if (plugin.getPermissionProvider() != null)
plugin.getPermissionProvider().playerRemoveTransient(world, player, "mvinv.bypass.*");
}
}

View File

@ -5,7 +5,7 @@ authors: [Frank Baumann, Milan Albrecht, Tobias Schmitz, Daniel Saukel]
description: ${project.parent.description}
website: ${project.parent.url}
depend: [ItemsXL]
softdepend: [CommandsXL, ItemsXL, Vault, Citizens, CustomMobs, InsaneMobs, MythicMobs, HolographicDisplays, LWC, PlaceholderAPI, Parties]
softdepend: [CommandsXL, ItemsXL, Vault, Citizens, CustomMobs, InsaneMobs, MythicMobs, HolographicDisplays, LWC, PlaceholderAPI, Parties, Multiverse-Inventories]
commands:
dungeonsxl:
description: Reference command for DungeonsXL.