mirror of
https://github.com/KAMKEEL/CustomNPC-Plus.git
synced 2026-11-12 03:47:27 +00:00
-Created a new type of achievement that uses the bag icon, used for party messages
60 lines
1.8 KiB
Java
60 lines
1.8 KiB
Java
package noppes.npcs;
|
|
|
|
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
|
|
import cpw.mods.fml.common.gameevent.PlayerEvent;
|
|
import cpw.mods.fml.common.gameevent.TickEvent;
|
|
import cpw.mods.fml.common.gameevent.TickEvent.Phase;
|
|
import net.minecraft.server.MinecraftServer;
|
|
import net.minecraft.world.WorldServer;
|
|
import noppes.npcs.client.AnalyticsTracking;
|
|
import noppes.npcs.controllers.PlayerDataController;
|
|
import noppes.npcs.controllers.data.PlayerData;
|
|
|
|
import java.net.InetAddress;
|
|
import java.net.UnknownHostException;
|
|
|
|
public class ServerTickHandler {
|
|
@SubscribeEvent
|
|
public void onServerTick(TickEvent.WorldTickEvent event){
|
|
if(event.phase == Phase.START){
|
|
NPCSpawning.findChunksForSpawning((WorldServer) event.world);
|
|
}
|
|
}
|
|
|
|
private String serverName = null;
|
|
|
|
@SubscribeEvent
|
|
public void playerLogin(PlayerEvent.PlayerLoggedInEvent event){
|
|
if(serverName == null){
|
|
String e = "local";
|
|
MinecraftServer server = MinecraftServer.getServer();
|
|
if(server.isDedicatedServer()){
|
|
try {
|
|
e = InetAddress.getByName(server.getServerHostname()).getCanonicalHostName();
|
|
} catch (UnknownHostException e1) {
|
|
e = MinecraftServer.getServer().getServerHostname();
|
|
}
|
|
if(server.getPort() != 25565)
|
|
e += ":" + server.getPort();
|
|
}
|
|
if(e == null || e.startsWith("192.168") || e.contains("127.0.0.1") || e.startsWith("localhost"))
|
|
e = "local";
|
|
serverName = e;
|
|
}
|
|
AnalyticsTracking.sendData(event.player, "join", serverName);
|
|
|
|
PlayerData playerData = PlayerDataController.Instance.getPlayerData(event.player);
|
|
if (playerData != null) {
|
|
playerData.onLogin();
|
|
}
|
|
}
|
|
|
|
@SubscribeEvent
|
|
public void playerLogout(PlayerEvent.PlayerLoggedOutEvent event) {
|
|
PlayerData playerData = PlayerDataController.Instance.getPlayerData(event.player);
|
|
if (playerData != null) {
|
|
playerData.onLogout();
|
|
}
|
|
}
|
|
}
|