Skip to content

Commit 53b3aeb

Browse files
committed
VirtualPlayers 1.9.0 w/ 1.15 support and code cleanups
1 parent deed3ee commit 53b3aeb

13 files changed

Lines changed: 516 additions & 73 deletions

File tree

modules/VirtualPlayers/pom.xml

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<modelVersion>4.0.0</modelVersion>
44
<groupId>mc.alk</groupId>
55
<artifactId>VirtualPlayers</artifactId>
6-
<version>1.8.3</version>
6+
<version>1.9.0</version>
77
<packaging>jar</packaging>
88
<name>VirtualPlayers</name>
99
<url>http://dev.bukkit.org/bukkit-plugins/virtualplayers2/</url>
@@ -286,6 +286,14 @@
286286
<scope>compile</scope>
287287
<optional>true</optional>
288288
</dependency>
289+
<dependency>
290+
<groupId>mc.alk</groupId>
291+
<artifactId>vp-v1_15_R1</artifactId>
292+
<version>static_version</version>
293+
<type>jar</type>
294+
<scope>compile</scope>
295+
<optional>true</optional>
296+
</dependency>
289297
<dependency>
290298
<groupId>org.bstats</groupId>
291299
<artifactId>bstats-bukkit</artifactId>
@@ -358,7 +366,7 @@
358366
<plugin>
359367
<groupId>org.apache.maven.plugins</groupId>
360368
<artifactId>maven-shade-plugin</artifactId>
361-
<version>2.3</version>
369+
<version>3.2.1</version>
362370
<executions>
363371
<execution>
364372
<phase>package</phase>

modules/VirtualPlayers/src/main/java/mc/alk/virtualplayers/executors/VPBaseExecutor.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,6 @@ protected Object invoke(CustomCommandExecutor.MethodWrapper mwrapper, CustomComm
8282
}
8383
}
8484

85-
@SuppressWarnings("SimplifiableIfStatement")
8685
@Override
8786
public boolean sendMessage(CommandSender sender, String string) {
8887
if (string == null || !showEventMessages) {

modules/VirtualPlayers/src/main/java/mc/alk/virtualplayers/executors/VPExecutor.java

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,14 @@
11
package mc.alk.virtualplayers.executors;
22

3-
import java.util.Collection;
4-
import java.util.Collections;
53
import java.util.Comparator;
64
import java.util.List;
75

8-
import mc.alk.virtualplayers.VirtualPlayers;
96
import mc.alk.virtualplayers.api.VirtualPlayer;
107
import mc.alk.virtualplayers.api.Vps;
118

129
import org.bukkit.Bukkit;
1310
import org.bukkit.command.CommandSender;
11+
import org.bukkit.entity.HumanEntity;
1412
import org.bukkit.plugin.Plugin;
1513

1614
/**
@@ -48,15 +46,8 @@ public void listVirtualPlayers(CommandSender sender) {
4846
List<VirtualPlayer> players = Vps.getApi().getVirtualPlayersList();
4947
sender.sendMessage("VirtualPlayers count=" + players.size());
5048

51-
Collections.sort(players, new Comparator<VirtualPlayer>() {
52-
@Override
53-
public int compare(VirtualPlayer o1, VirtualPlayer o2) {
54-
return o1.getName().compareTo(o2.getName());
55-
}
56-
});
57-
players.forEach((vp) -> {
58-
sendMessage(sender, vp.getName() + " : " + vp);
59-
});
49+
players.sort(Comparator.comparing(HumanEntity::getName));
50+
players.forEach((vp) -> sendMessage(sender, vp.getName() + " : " + vp));
6051
}
6152

6253
@MCCommand(cmds = {"showMessages"}, op = true)

modules/api/src/main/java/mc/alk/virtualplayers/api/DamageHandlerFactory.java

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ public class DamageHandlerFactory {
1717

1818
public static IDamageHandler getNewInstance() {
1919
Version<Server> server = VersionFactory.getServerVersion();
20-
IDamageHandler handler = null;
21-
Class clazz = null;
20+
IDamageHandler handler = IDamageHandler.DEFAULT_HANDLER;
21+
Class<?> clazz = null;
2222
try {
2323
Class<?>[] args = {};
2424
if (server.isGreaterThanOrEqualTo("1.2.5") && server.isLessThan("1.6.1")) {
@@ -27,11 +27,14 @@ public static IDamageHandler getNewInstance() {
2727
clazz = Class.forName("mc.alk.virtualplayers.nms.v1_6_R1.DamageHandler");
2828
}
2929

30+
if (clazz == null)
31+
return handler;
32+
3033
handler = (IDamageHandler) clazz.getConstructor(args).newInstance((Object[]) args);
3134
} catch (Exception ex) {
3235
ex.printStackTrace();
3336
}
3437

35-
return (handler == null) ? IDamageHandler.DEFAULT_HANDLER : handler;
38+
return handler;
3639
}
3740
}

modules/api/src/main/java/mc/alk/virtualplayers/api/VirtualPlayer.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,13 @@
99
*/
1010
public interface VirtualPlayer extends Player {
1111

12-
public void setOnline(boolean b);
12+
void setOnline(boolean b);
1313

14-
public void respawn(Location loc);
15-
public void moveTo(Location loc);
16-
public boolean teleport(Location location, boolean respawn);
14+
void respawn(Location loc);
15+
void moveTo(Location loc);
16+
boolean teleport(Location location, boolean respawn);
1717

18-
public Player getInformed();
19-
public void setShowMessages(boolean visibility);
18+
Player getInformed();
19+
void setShowMessages(boolean visibility);
2020

2121
}

modules/api/src/main/java/mc/alk/virtualplayers/api/VirtualPlayerFactory.java

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010

1111
import mc.euro.version.VersionFactory;
1212

13-
import org.bukkit.entity.Player;
1413

1514
/**
1615
* abstract VirtualPlayerFactory: handle the creation, tracking, and deletion of VirtualPlayers.
@@ -41,15 +40,15 @@ public static synchronized VirtualPlayerFactory newInstance() {
4140
return factory;
4241
}
4342
Class<?>[] args = {};
44-
Constructor con = null;
45-
VirtualPlayerFactory $factory = null;
43+
Constructor con;
44+
VirtualPlayerFactory factory = null;
4645
try {
4746
con = getNmsClass("CraftVirtualPlayerFactory").getConstructor(args);
48-
$factory = (VirtualPlayerFactory) con.newInstance();
47+
factory = (VirtualPlayerFactory) con.newInstance();
4948
} catch (Exception ex) {
5049
ex.printStackTrace();
5150
}
52-
return $factory;
51+
return factory;
5352
}
5453

5554
private static Class<?> getNmsClass(String clazz) throws Exception {
@@ -61,15 +60,15 @@ private static Class<?> getNmsClass(String clazz) throws Exception {
6160
public abstract void deleteVirtualPlayer(VirtualPlayer vp);
6261

6362
public static VirtualPlayer getOrCreate(String name) {
64-
Player vp = names.get(name);
63+
VirtualPlayer vp = names.get(name);
6564
if (vp == null) {
6665
try {
6766
vp = factory.makeVirtualPlayer(name);
6867
} catch (Exception e) {
6968
e.printStackTrace();
7069
}
7170
}
72-
return (VirtualPlayer) vp;
71+
return vp;
7372
}
7473

7574
public static Collection<VirtualPlayer> getVirtualPlayers() {
@@ -86,7 +85,7 @@ public static Map<String, VirtualPlayer> getNames() {
8685

8786
public static List<VirtualPlayer> getNewPlayerList() {
8887
synchronized (vps) {
89-
return new ArrayList<VirtualPlayer>(vps.values());
88+
return new ArrayList<>(vps.values());
9089
}
9190
}
9291

modules/api/src/main/java/mc/alk/virtualplayers/api/VirtualPlayersAPI.java

Lines changed: 25 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import java.util.UUID;
88
import mc.euro.bukkitinterface.BukkitInterface;
99
import org.bukkit.Bukkit;
10+
import org.bukkit.OfflinePlayer;
1011
import org.bukkit.entity.Player;
1112

1213
/**
@@ -28,77 +29,71 @@ public interface VirtualPlayersAPI {
2829
*
2930
* @return an Array of bukkit.entity.Player + api.VirtualPlayer.
3031
*/
31-
public default Collection<? extends Player> getOnlinePlayers() {
32+
default Collection<? extends Player> getOnlinePlayers() {
3233
List<Player> players = new ArrayList<>();
33-
VirtualPlayerFactory.getVirtualPlayers().stream().filter((p) -> (p.isOnline())).forEachOrdered((p) -> {
34-
players.add(p);
35-
});
34+
VirtualPlayerFactory.getVirtualPlayers().stream().filter(OfflinePlayer::isOnline).forEachOrdered(players::add);
3635
players.addAll(BukkitInterface.getOnlinePlayers());
3736
return players;
3837
};
3938

40-
public Player makeVirtualPlayer(String name) throws Exception;
41-
public void setEventMessages(boolean visibility);
42-
public void deleteVirtualPlayer(VirtualPlayer vp);
43-
public void deleteVirtualPlayers();
39+
Player makeVirtualPlayer(String name) throws Exception;
40+
void setEventMessages(boolean visibility);
41+
void deleteVirtualPlayer(VirtualPlayer vp);
42+
void deleteVirtualPlayers();
4443

45-
public default void setGlobalMessages(boolean visibility) {
46-
VirtualPlayerFactory.getVirtualPlayers().forEach((vp) -> {
47-
vp.setShowMessages(visibility);
48-
});
44+
default void setGlobalMessages(boolean visibility) {
45+
VirtualPlayerFactory.getVirtualPlayers().forEach((vp) -> vp.setShowMessages(visibility));
4946
}
5047

51-
public default Player[] getOnlinePlayersArray() {
48+
default Player[] getOnlinePlayersArray() {
5249
return getOnlinePlayers().toArray(new Player[0]);
53-
};
50+
}
5451

55-
public default Collection<? extends VirtualPlayer> getVirtualPlayers() {
52+
default Collection<? extends VirtualPlayer> getVirtualPlayers() {
5653
return VirtualPlayerFactory.getVirtualPlayers();
57-
};
54+
}
5855

59-
public default List<VirtualPlayer> getVirtualPlayersList() {
56+
default List<VirtualPlayer> getVirtualPlayersList() {
6057
return VirtualPlayerFactory.getNewPlayerList();
6158
}
6259

63-
public default void setPlayerMessages(boolean visibility) {
64-
getVirtualPlayers().forEach((vp) -> {
65-
vp.setShowMessages(visibility);
66-
});
60+
default void setPlayerMessages(boolean visibility) {
61+
getVirtualPlayers().forEach((vp) -> vp.setShowMessages(visibility));
6762
}
6863

69-
public default Map<UUID, VirtualPlayer> getVps() {
64+
default Map<UUID, VirtualPlayer> getVps() {
7065
return VirtualPlayerFactory.getVps();
7166
}
7267

73-
public default Map<String, VirtualPlayer> getNames() {
68+
default Map<String, VirtualPlayer> getNames() {
7469
return VirtualPlayerFactory.getNames();
7570
}
7671

77-
public default Player getPlayer(String pname) {
72+
default Player getPlayer(String pname) {
7873
Player vp = Bukkit.getPlayer(pname);
7974
if (vp == null) {
8075
vp = getNames().get(pname);
8176
}
8277
return vp;
8378
}
8479

85-
public default Player getPlayer(UUID id) {
80+
default Player getPlayer(UUID id) {
8681
Player vp = Bukkit.getPlayer(id);
8782
if (vp == null) {
8883
vp = getVps().get(id);
8984
}
9085
return vp;
9186
}
9287

93-
public default Player getPlayerExact(String pname) {
88+
default Player getPlayerExact(String pname) {
9489
Player vp = Bukkit.getPlayerExact(pname);
9590
if (vp == null) {
9691
vp = getNames().get(pname);
9792
}
9893
return vp;
9994
}
10095

101-
public default Player getOrMakePlayer(String pname) {
96+
default Player getOrMakePlayer(String pname) {
10297
Player vp = Bukkit.getPlayer(pname);
10398
if (vp == null) {
10499
vp = getNames().get(pname);
@@ -113,7 +108,7 @@ public default Player getOrMakePlayer(String pname) {
113108
return vp;
114109
}
115110

116-
public default VirtualPlayer getOrCreate(String name) {
111+
default VirtualPlayer getOrCreate(String name) {
117112
Player vp = VirtualPlayerFactory.getNames().get(name);
118113
if (vp == null) {
119114
try {
@@ -125,11 +120,11 @@ public default VirtualPlayer getOrCreate(String name) {
125120
return (VirtualPlayer) vp;
126121
}
127122

128-
public default Player makeVirtualPlayer() throws Exception {
123+
default Player makeVirtualPlayer() throws Exception {
129124
return makeVirtualPlayer(null);
130125
}
131126

132-
public default void deleteVirtualPlayer(String name) {
127+
default void deleteVirtualPlayer(String name) {
133128
VirtualPlayer vp = getNames().get(name);
134129
deleteVirtualPlayer(vp);
135130
}

modules/api/src/main/java/mc/alk/virtualplayers/api/handlers/IDamageHandler.java

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,7 @@
1212
*/
1313
public interface IDamageHandler {
1414

15-
public void damageEntity(Player player, double dmg);
15+
void damageEntity(Player player, double dmg);
1616

17-
public static final IDamageHandler DEFAULT_HANDLER = new IDamageHandler() {
18-
19-
@Override
20-
public void damageEntity(Player player, double dmg) {
21-
player.damage((int) dmg);
22-
}
23-
};
17+
IDamageHandler DEFAULT_HANDLER = (player, dmg) -> player.damage((int) dmg);
2418
}

modules/api/src/main/java/mc/alk/virtualplayers/util/Util.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,10 @@ public class Util {
2121

2222
public interface VPMessageListener {
2323

24-
public void gettingMessage(Player player, String msg);
24+
void gettingMessage(Player player, String msg);
2525
}
2626

27-
static final List<VPMessageListener> listeners = new ArrayList<VPMessageListener>();
27+
static final List<VPMessageListener> listeners = new ArrayList<>();
2828

2929
static public String getLocString(Location l) {
3030
if (l == null) {
@@ -80,7 +80,7 @@ public static boolean removeListener(VPMessageListener listener) {
8080
* @return the nearby entities
8181
*/
8282
public static Collection<Entity> getNearbyEntities(VirtualPlayer vp, int radius) {
83-
Map<Integer, Entity> emap = new HashMap<Integer, Entity>();
83+
Map<Integer, Entity> emap = new HashMap<>();
8484
int numChunks = (int) Math.floor(radius / 16) + 1;
8585
int blocks = numChunks * 16;
8686
int diameter = blocks * 2;

modules/v1_15_R1/pom.xml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project xmlns="http://maven.apache.org/POM/4.0.0"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5+
<modelVersion>4.0.0</modelVersion>
6+
<parent>
7+
<artifactId>vp-parent-pom</artifactId>
8+
<groupId>mc.alk</groupId>
9+
<version>static_version</version>
10+
<relativePath>../../</relativePath>
11+
</parent>
12+
<groupId>mc.alk</groupId>
13+
<artifactId>vp-v1_15_R1</artifactId>
14+
<version>static_version</version>
15+
<packaging>jar</packaging>
16+
<name>virtualplayers-v1_15_R1</name>
17+
<dependencies>
18+
<dependency>
19+
<groupId>org.spigotmc</groupId>
20+
<artifactId>spigot</artifactId>
21+
<version>1.15.0-R0.1</version>
22+
<scope>provided</scope>
23+
</dependency>
24+
<dependency>
25+
<groupId>mc.alk</groupId>
26+
<artifactId>VirtualPlayersAPI</artifactId>
27+
<type>jar</type>
28+
<version>${virtualplayers.api.version}</version>
29+
<optional>true</optional>
30+
</dependency>
31+
<dependency>
32+
<groupId>junit</groupId>
33+
<artifactId>junit</artifactId>
34+
<scope>test</scope>
35+
</dependency>
36+
</dependencies>
37+
<build>
38+
<directory>./target</directory>
39+
<sourceDirectory>./src/main/java</sourceDirectory>
40+
<plugins>
41+
<plugin>
42+
<groupId>org.apache.maven.plugins</groupId>
43+
<artifactId>maven-compiler-plugin</artifactId>
44+
</plugin>
45+
</plugins>
46+
</build>
47+
</project>

0 commit comments

Comments
 (0)