mirror of
https://github.com/nkomarn/harbor.git
synced 2024-12-18 22:37:36 +01:00
Finalizing 1.5!
This commit is contained in:
parent
519361da02
commit
5b39d2c920
14
pom.xml
14
pom.xml
@ -81,6 +81,20 @@
|
|||||||
<scope>system</scope>
|
<scope>system</scope>
|
||||||
<systemPath>${spigot}/1.9.2.jar</systemPath>
|
<systemPath>${spigot}/1.9.2.jar</systemPath>
|
||||||
<version>1.9.2</version>
|
<version>1.9.2</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>spigotmc.org</groupId>
|
||||||
|
<artifactId>spigot-1.8.8</artifactId>
|
||||||
|
<scope>system</scope>
|
||||||
|
<systemPath>${spigot}/1.8.8.jar</systemPath>
|
||||||
|
<version>1.8.8</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>spigotmc.org</groupId>
|
||||||
|
<artifactId>spigot-1.8.3</artifactId>
|
||||||
|
<scope>system</scope>
|
||||||
|
<systemPath>${spigot}/1.8.3.jar</systemPath>
|
||||||
|
<version>1.8.3</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>spigotmc.org</groupId>
|
<groupId>spigotmc.org</groupId>
|
||||||
|
@ -1,8 +1,5 @@
|
|||||||
package mykyta.Harbor.Events;
|
package mykyta.Harbor.Events;
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
|
||||||
import org.bukkit.ChatColor;
|
|
||||||
import org.bukkit.entity.Player;
|
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
import org.bukkit.event.player.PlayerMoveEvent;
|
import org.bukkit.event.player.PlayerMoveEvent;
|
||||||
|
@ -19,7 +19,6 @@ public class PlayerLeave implements Listener {
|
|||||||
new java.util.TimerTask() {
|
new java.util.TimerTask() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
// FIXME IM BROKE THE THING UPDATES NIGHT WHEN PEOPLE LEAVE IS BAD
|
|
||||||
if (w.getPlayers().size() > 0 && Math.max(0, util.getNeeded(w) - util.getExcluded(w).size()) == 0) util.skip(w);
|
if (w.getPlayers().size() > 0 && Math.max(0, util.getNeeded(w) - util.getExcluded(w).size()) == 0) util.skip(w);
|
||||||
Util.activity.remove(p);
|
Util.activity.remove(p);
|
||||||
}
|
}
|
||||||
|
@ -1,21 +1,21 @@
|
|||||||
package mykyta.Harbor.NMS;
|
package mykyta.Harbor.NMS;
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
import org.bukkit.craftbukkit.v1_7_R1.entity.CraftPlayer;
|
import org.bukkit.craftbukkit.v1_8_R2.entity.CraftPlayer;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.inventivetalent.bossbar.BossBarAPI;
|
|
||||||
|
|
||||||
import net.md_5.bungee.api.chat.TextComponent;
|
import net.minecraft.server.v1_8_R2.IChatBaseComponent;
|
||||||
import net.minecraft.server.v1_7_R1.ChatSerializer;
|
import net.minecraft.server.v1_8_R2.IChatBaseComponent.ChatSerializer;
|
||||||
import net.minecraft.server.v1_7_R1.IChatBaseComponent;
|
import net.minecraft.server.v1_8_R2.PacketPlayOutChat;
|
||||||
import net.minecraft.server.v1_7_R1.PacketPlayOutChat;
|
import net.minecraft.server.v1_8_R2.PacketPlayOutTitle;
|
||||||
|
import net.minecraft.server.v1_8_R2.PacketPlayOutTitle.EnumTitleAction;
|
||||||
|
|
||||||
public class NMS_1_7_R1 implements NMS {
|
public class NMS_1_8_R2 implements NMS {
|
||||||
@Override
|
@Override
|
||||||
public void sendActionbar(Player player, String message) {
|
public void sendActionbar(Player player, String message) {
|
||||||
if (Bukkit.getServer().getPluginManager().getPlugin("BossBarAPI") == null) System.out.println("API missing");
|
IChatBaseComponent titleComponent = ChatSerializer.a("{\"text\": \"" + ChatColor.translateAlternateColorCodes('&', message) + "\"}");
|
||||||
else BossBarAPI.addBar(player, new TextComponent(ChatColor.translateAlternateColorCodes('&', message)), BossBarAPI.Color.RED, BossBarAPI.Style.PROGRESS, 1.0f, 20, 5);
|
PacketPlayOutChat titlePacket = new PacketPlayOutChat(titleComponent, (byte)2);
|
||||||
|
((CraftPlayer) player).getHandle().playerConnection.sendPacket(titlePacket);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -27,12 +27,12 @@ public class NMS_1_7_R1 implements NMS {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void sendTitle(Player player, String top, String bottom) {
|
public void sendTitle(Player player, String top, String bottom) {
|
||||||
/*IChatBaseComponent titleTop = ChatSerializer.a("{\"text\": \"" + ChatColor.translateAlternateColorCodes('&', top) + "\"}");
|
IChatBaseComponent titleTop = ChatSerializer.a("{\"text\": \"" + ChatColor.translateAlternateColorCodes('&', top) + "\"}");
|
||||||
IChatBaseComponent titleBottom = ChatSerializer.a("{\"text\": \"" + ChatColor.translateAlternateColorCodes('&', bottom) + "\"}");
|
IChatBaseComponent titleBottom = ChatSerializer.a("{\"text\": \"" + ChatColor.translateAlternateColorCodes('&', bottom) + "\"}");
|
||||||
PacketPlayOutTitle title = new PacketPlayOutTitle(EnumTitleAction.TITLE, titleTop);
|
PacketPlayOutTitle title = new PacketPlayOutTitle(EnumTitleAction.TITLE, titleTop);
|
||||||
PacketPlayOutTitle subtitle = new PacketPlayOutTitle(EnumTitleAction.SUBTITLE, titleBottom);
|
PacketPlayOutTitle subtitle = new PacketPlayOutTitle(EnumTitleAction.SUBTITLE, titleBottom);
|
||||||
((CraftPlayer) player).getHandle().playerConnection.sendPacket(title);
|
((CraftPlayer) player).getHandle().playerConnection.sendPacket(title);
|
||||||
((CraftPlayer) player).getHandle().playerConnection.sendPacket(subtitle);*/
|
((CraftPlayer) player).getHandle().playerConnection.sendPacket(subtitle);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
42
src/main/java/mykyta/Harbor/NMS/NMS_1_8_R3.java
Normal file
42
src/main/java/mykyta/Harbor/NMS/NMS_1_8_R3.java
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
package mykyta.Harbor.NMS;
|
||||||
|
|
||||||
|
import org.bukkit.ChatColor;
|
||||||
|
import org.bukkit.craftbukkit.v1_8_R3.entity.CraftPlayer;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
|
import net.minecraft.server.v1_8_R3.IChatBaseComponent;
|
||||||
|
import net.minecraft.server.v1_8_R3.IChatBaseComponent.ChatSerializer;
|
||||||
|
import net.minecraft.server.v1_8_R3.PacketPlayOutChat;
|
||||||
|
import net.minecraft.server.v1_8_R3.PacketPlayOutTitle;
|
||||||
|
import net.minecraft.server.v1_8_R3.PacketPlayOutTitle.EnumTitleAction;
|
||||||
|
|
||||||
|
public class NMS_1_8_R3 implements NMS {
|
||||||
|
@Override
|
||||||
|
public void sendActionbar(Player player, String message) {
|
||||||
|
IChatBaseComponent titleComponent = ChatSerializer.a("{\"text\": \"" + ChatColor.translateAlternateColorCodes('&', message) + "\"}");
|
||||||
|
PacketPlayOutChat titlePacket = new PacketPlayOutChat(titleComponent, (byte)2);
|
||||||
|
((CraftPlayer) player).getHandle().playerConnection.sendPacket(titlePacket);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void sendJSONMessage(Player player, String json) {
|
||||||
|
IChatBaseComponent component = ChatSerializer.a(json);
|
||||||
|
PacketPlayOutChat packet = new PacketPlayOutChat(component);
|
||||||
|
((CraftPlayer) player).getHandle().playerConnection.sendPacket(packet);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void sendTitle(Player player, String top, String bottom) {
|
||||||
|
IChatBaseComponent titleTop = ChatSerializer.a("{\"text\": \"" + ChatColor.translateAlternateColorCodes('&', top) + "\"}");
|
||||||
|
IChatBaseComponent titleBottom = ChatSerializer.a("{\"text\": \"" + ChatColor.translateAlternateColorCodes('&', bottom) + "\"}");
|
||||||
|
PacketPlayOutTitle title = new PacketPlayOutTitle(EnumTitleAction.TITLE, titleTop);
|
||||||
|
PacketPlayOutTitle subtitle = new PacketPlayOutTitle(EnumTitleAction.SUBTITLE, titleBottom);
|
||||||
|
((CraftPlayer) player).getHandle().playerConnection.sendPacket(title);
|
||||||
|
((CraftPlayer) player).getHandle().playerConnection.sendPacket(subtitle);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void enterBed(Player player) {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@ -18,8 +18,9 @@ import mykyta.Harbor.NMS.NMS_1_12_R1;
|
|||||||
import mykyta.Harbor.NMS.NMS_1_13_R1;
|
import mykyta.Harbor.NMS.NMS_1_13_R1;
|
||||||
import mykyta.Harbor.NMS.NMS_1_13_R2;
|
import mykyta.Harbor.NMS.NMS_1_13_R2;
|
||||||
import mykyta.Harbor.NMS.NMS_1_14_R1;
|
import mykyta.Harbor.NMS.NMS_1_14_R1;
|
||||||
import mykyta.Harbor.NMS.NMS_1_7_R1;
|
|
||||||
import mykyta.Harbor.NMS.NMS_1_8_R1;
|
import mykyta.Harbor.NMS.NMS_1_8_R1;
|
||||||
|
import mykyta.Harbor.NMS.NMS_1_8_R2;
|
||||||
|
import mykyta.Harbor.NMS.NMS_1_8_R3;
|
||||||
import mykyta.Harbor.NMS.NMS_1_9_R1;
|
import mykyta.Harbor.NMS.NMS_1_9_R1;
|
||||||
import mykyta.Harbor.NMS.NMS_1_9_R2;
|
import mykyta.Harbor.NMS.NMS_1_9_R2;
|
||||||
|
|
||||||
@ -47,10 +48,9 @@ public class Util {
|
|||||||
enabled = false;
|
enabled = false;
|
||||||
}
|
}
|
||||||
if (debug) Bukkit.getServer().getConsoleSender().sendMessage(ChatColor.translateAlternateColorCodes('&', config.getString("messages.miscellaneous.prefix") + config.getString("messages.miscellaneous.running").replace("[version]", version)));
|
if (debug) Bukkit.getServer().getConsoleSender().sendMessage(ChatColor.translateAlternateColorCodes('&', config.getString("messages.miscellaneous.prefix") + config.getString("messages.miscellaneous.running").replace("[version]", version)));
|
||||||
|
if (version.equals("v1_8_R1")) {nms = new NMS_1_8_R1();}
|
||||||
if (version.equals("v1_7_R1")) {nms = new NMS_1_7_R1();}
|
else if (version.equals("v1_8_R2")) {nms = new NMS_1_8_R2();}
|
||||||
else if (version.equals("v1_8_R1")) {nms = new NMS_1_8_R1();}
|
else if (version.equals("v1_8_R3")) {nms = new NMS_1_8_R3();}
|
||||||
//TODO more 1.8 versions
|
|
||||||
else if (version.equals("v1_9_R1")) {nms = new NMS_1_9_R1();}
|
else if (version.equals("v1_9_R1")) {nms = new NMS_1_9_R1();}
|
||||||
else if (version.equals("v1_9_R2")) {nms = new NMS_1_9_R2();}
|
else if (version.equals("v1_9_R2")) {nms = new NMS_1_9_R2();}
|
||||||
else if (version.equals("v1_10_R1")) {nms = new NMS_1_10_R1();}
|
else if (version.equals("v1_10_R1")) {nms = new NMS_1_10_R1();}
|
||||||
@ -99,8 +99,7 @@ public class Util {
|
|||||||
* @param world World to fetch count for
|
* @param world World to fetch count for
|
||||||
*/
|
*/
|
||||||
public int getNeeded(World w) {
|
public int getNeeded(World w) {
|
||||||
//FIXME make sure to remove excluded players
|
try {return Math.max(0, (int) Math.ceil((w.getPlayers().size() - getExcluded(w).size()) * (config.getDouble("values.percent") / 100) - this.getSleeping(w)));}
|
||||||
try {return Math.max(0, (int) Math.ceil(w.getPlayers().size() * (config.getDouble("values.percent") / 100) - this.getSleeping(w)));}
|
|
||||||
catch (NullPointerException e) {return 0;}
|
catch (NullPointerException e) {return 0;}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -192,7 +191,7 @@ public class Util {
|
|||||||
* @param World to return value for
|
* @param World to return value for
|
||||||
*/
|
*/
|
||||||
public void skip(World w) {
|
public void skip(World w) {
|
||||||
if (config.getBoolean("features.skip") && this.getNeeded(w) - this.getExcluded(w).size() == 0) {
|
if (config.getBoolean("features.skip") && Math.max(0, this.getNeeded(w) - this.getExcluded(w).size()) == 0) {
|
||||||
w.setTime(1000L);
|
w.setTime(1000L);
|
||||||
|
|
||||||
// Set weather to clear
|
// Set weather to clear
|
||||||
|
Loading…
Reference in New Issue
Block a user