forked from Upstream/mmocore
Added Party and Friends Extended for Bungee/Velocity Support
This commit adds Party and Friends Extended for Bungee/Velocity support using the [Party-API for Spigot-Plugins](https://www.spigotmc.org/resources/spigot-party-api-for-party-and-friends-extended-redisbungee-required.39751/)
This commit is contained in:
parent
82b78febbb
commit
92067f137a
@ -204,7 +204,13 @@
|
||||
</dependency>
|
||||
|
||||
<!-- Party plugins -->
|
||||
|
||||
<dependency>
|
||||
<groupId>de.simonsator</groupId>
|
||||
<artifactId>Party-and-Friends-MySQL-Edition-Spigot-API</artifactId>
|
||||
<version>1.5.3</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>de.simonsator</groupId>
|
||||
<artifactId>DevelopmentPAFSpigot</artifactId>
|
||||
@ -212,6 +218,13 @@
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>de.simonsator</groupId>
|
||||
<artifactId>Spigot-Party-API-For-RedisBungee</artifactId>
|
||||
<version>1.0.3-SNAPSHOT</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.alessiodp</groupId>
|
||||
<artifactId>Parties</artifactId>
|
||||
|
@ -1,10 +1,7 @@
|
||||
package net.Indyuce.mmocore.party;
|
||||
|
||||
import net.Indyuce.mmocore.party.compat.DungeonsXLPartyModule;
|
||||
import net.Indyuce.mmocore.party.compat.McMMOPartyModule;
|
||||
import net.Indyuce.mmocore.party.compat.PAFPartyModule;
|
||||
import net.Indyuce.mmocore.party.compat.*;
|
||||
import net.Indyuce.mmocore.party.provided.MMOCorePartyModule;
|
||||
import net.Indyuce.mmocore.party.compat.PartiesPartyModule;
|
||||
import org.bukkit.Bukkit;
|
||||
|
||||
import javax.inject.Provider;
|
||||
@ -16,6 +13,7 @@ public enum PartyModuleType {
|
||||
MMOCORE("MMOCore", MMOCorePartyModule::new),
|
||||
PARTIES("Parties", PartiesPartyModule::new),
|
||||
PARTY_AND_FRIENDS("PartyAndFriends", PAFPartyModule::new),
|
||||
PARTY_AND_FRIENDS_EXTENDED_BUNGEECORD_VELOCITY("Spigot-Party-API-PAF", PAFProxyExtendedPartyModule::new),
|
||||
;
|
||||
|
||||
private final String pluginName;
|
||||
|
@ -0,0 +1,52 @@
|
||||
package net.Indyuce.mmocore.party.compat;
|
||||
|
||||
import de.simonsator.partyandfriends.spigot.api.pafplayers.PAFPlayer;
|
||||
import de.simonsator.partyandfriends.spigot.api.pafplayers.PAFPlayerManager;
|
||||
import de.simonsator.partyandfriends.spigot.api.party.PartyManager;
|
||||
import de.simonsator.partyandfriends.spigot.api.party.PlayerParty;
|
||||
import net.Indyuce.mmocore.api.player.PlayerData;
|
||||
import net.Indyuce.mmocore.party.AbstractParty;
|
||||
import net.Indyuce.mmocore.party.PartyModule;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class PAFProxyExtendedPartyModule implements PartyModule {
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public AbstractParty getParty(PlayerData playerData) {
|
||||
PlayerParty party = PartyManager.getInstance().getParty(PAFPlayerManager.getInstance().getPlayer(playerData.getUniqueId()));
|
||||
return party == null ? null : new CustomParty(party);
|
||||
}
|
||||
|
||||
class CustomParty implements AbstractParty {
|
||||
private final PlayerParty party;
|
||||
|
||||
public CustomParty(PlayerParty party) {
|
||||
this.party = party;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasMember(Player player) {
|
||||
return party.isInParty(PAFPlayerManager.getInstance().getPlayer(player.getUniqueId()));
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<PlayerData> getOnlineMembers() {
|
||||
List<PlayerData> list = new ArrayList<>();
|
||||
|
||||
for (PAFPlayer online : party.getAllPlayers())
|
||||
list.add(PlayerData.get(online.getUniqueId()));
|
||||
|
||||
return list;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int countMembers() {
|
||||
return party.getAllPlayers().size();
|
||||
}
|
||||
}
|
||||
}
|
@ -58,6 +58,7 @@ protect-custom-mine: false
|
||||
# - dungeonsxl
|
||||
# - parties
|
||||
# - party_and_friends
|
||||
# - party_and_friends_extended_bungeecord_velocity
|
||||
# - mcmmo
|
||||
party-plugin: mmocore
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user