mirror of
https://github.com/DRE2N/DungeonsXL.git
synced 2025-02-22 07:11:51 +01:00
Added support for multiverse inventories
This commit is contained in:
parent
961906d4d6
commit
5ef902b0c2
@ -105,6 +105,9 @@ public class DGamePlayer extends DInstancePlayer implements GamePlayer {
|
|||||||
initDGroupTag();
|
initDGroupTag();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
String originalWorld = player.getWorld().getName();
|
||||||
|
addMultiversePerm(originalWorld);
|
||||||
|
|
||||||
Location teleport = world.getLobbyLocation();
|
Location teleport = world.getLobbyLocation();
|
||||||
if (teleport == null) {
|
if (teleport == null) {
|
||||||
player.teleport(world.getWorld().getSpawnLocation());
|
player.teleport(world.getWorld().getSpawnLocation());
|
||||||
@ -112,6 +115,8 @@ public class DGamePlayer extends DInstancePlayer implements GamePlayer {
|
|||||||
player.teleport(teleport);
|
player.teleport(teleport);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
removeMultiversePerm(originalWorld);
|
||||||
|
|
||||||
if (!((DGameWorld) world).hasReadySign()) {
|
if (!((DGameWorld) world).hasReadySign()) {
|
||||||
MessageUtil.sendMessage(player, DMessage.ERROR_NO_READY_SIGN.getMessage(world.getName()));
|
MessageUtil.sendMessage(player, DMessage.ERROR_NO_READY_SIGN.getMessage(world.getName()));
|
||||||
}
|
}
|
||||||
@ -380,7 +385,10 @@ public class DGamePlayer extends DInstancePlayer implements GamePlayer {
|
|||||||
delete();
|
delete();
|
||||||
|
|
||||||
if (player.isOnline()) {
|
if (player.isOnline()) {
|
||||||
|
String gameWorld = getGameWorld().getWorld().getName();
|
||||||
|
addMultiversePerm(gameWorld);
|
||||||
reset(finished);
|
reset(finished);
|
||||||
|
removeMultiversePerm(gameWorld);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Permission bridge
|
// Permission bridge
|
||||||
@ -589,6 +597,7 @@ public class DGamePlayer extends DInstancePlayer implements GamePlayer {
|
|||||||
plugin.getPermissionProvider().playerAddTransient(getGame().getWorld().getWorld().getName(), player, permission);
|
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());
|
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.*");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -5,7 +5,7 @@ authors: [Frank Baumann, Milan Albrecht, Tobias Schmitz, Daniel Saukel]
|
|||||||
description: ${project.parent.description}
|
description: ${project.parent.description}
|
||||||
website: ${project.parent.url}
|
website: ${project.parent.url}
|
||||||
depend: [ItemsXL]
|
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:
|
commands:
|
||||||
dungeonsxl:
|
dungeonsxl:
|
||||||
description: Reference command for DungeonsXL.
|
description: Reference command for DungeonsXL.
|
||||||
|
Loading…
Reference in New Issue
Block a user