Merge remote-tracking branch 'origin/event' into proto_1.12.2
# Conflicts: # core/src/main/java/mc/core/GameLoop.java # proto_1.12.2_netty/src/main/java/mc/core/network/proto_1_12_2/netty/PlayerEventListener.java
This commit is contained in:
81
core/src/main/java/mc/core/CoreEventListener.java
Normal file
81
core/src/main/java/mc/core/CoreEventListener.java
Normal file
@@ -0,0 +1,81 @@
|
|||||||
|
package mc.core;
|
||||||
|
|
||||||
|
import com.google.common.eventbus.Subscribe;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import mc.core.eventbus.EventBusGetter;
|
||||||
|
import mc.core.eventbus.events.CS_PlayerMoveEvent;
|
||||||
|
import mc.core.eventbus.events.SC_ChunkLoadEvent;
|
||||||
|
import mc.core.eventbus.events.SC_ChunkUnloadEvent;
|
||||||
|
import mc.core.utils.CompactedCoords;
|
||||||
|
import mc.core.world.chunk.Chunk;
|
||||||
|
|
||||||
|
import javax.annotation.PostConstruct;
|
||||||
|
import java.util.Iterator;
|
||||||
|
|
||||||
|
@Slf4j
|
||||||
|
public class CoreEventListener {
|
||||||
|
@PostConstruct
|
||||||
|
public void registerEventHandlers() {
|
||||||
|
EventBusGetter.getInstance().register(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Subscribe
|
||||||
|
public void handlerPlayerMoveEvent(CS_PlayerMoveEvent event) {
|
||||||
|
log.trace("(GameLoop) playerMoveEventHandler()");
|
||||||
|
|
||||||
|
Chunk chunk;
|
||||||
|
chunk = event.getOldLocation().getChunk(); // Old chunk
|
||||||
|
int ccX = chunk.getX();
|
||||||
|
int ccZ = chunk.getZ();
|
||||||
|
chunk = event.getNewLocation().getChunk(); // Next chunk
|
||||||
|
int ncX = chunk.getX();
|
||||||
|
int ncZ = chunk.getZ();
|
||||||
|
|
||||||
|
if (event.isRecalcChunk() || (ncX != ccX || ncZ != ccZ)) {
|
||||||
|
final int viewDistance = event.getPlayer().getSettings().getViewDistance() + 1;
|
||||||
|
int cMinX = chunk.getX() - viewDistance;
|
||||||
|
int cMaxX = chunk.getX() + viewDistance;
|
||||||
|
int cMinZ = chunk.getZ() - viewDistance;
|
||||||
|
int cMaxZ = chunk.getZ() + viewDistance;
|
||||||
|
|
||||||
|
SC_ChunkUnloadEvent eventChunkUnload = new SC_ChunkUnloadEvent(event.getPlayer());
|
||||||
|
Iterator<Integer> itr = event.getPlayer().getLoadedChunks().iterator();
|
||||||
|
while(itr.hasNext()) {
|
||||||
|
int compressXZ = itr.next();
|
||||||
|
int[] xz = CompactedCoords.uncompressXZ(compressXZ);
|
||||||
|
if (xz[0] > cMaxX || xz[0] < cMinX || xz[1] > cMaxZ || xz[1] < cMinZ) {
|
||||||
|
eventChunkUnload.getNeedUnloadChunks().add(compressXZ);
|
||||||
|
itr.remove();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!eventChunkUnload.getNeedUnloadChunks().isEmpty()) {
|
||||||
|
EventBusGetter.getInstance().post(eventChunkUnload);
|
||||||
|
}
|
||||||
|
|
||||||
|
SC_ChunkLoadEvent eventChunkLoad = new SC_ChunkLoadEvent(event.getPlayer());
|
||||||
|
for (int cZ = cMinZ; cZ <= cMaxZ; cZ++) {
|
||||||
|
for (int cX = cMinX; cX <= cMaxX; cX++) {
|
||||||
|
int compressXZ = CompactedCoords.compressXZ(cX, cZ);
|
||||||
|
if (!event.getPlayer().getLoadedChunks().contains(compressXZ)) {
|
||||||
|
if (!event.getPlayer().getLoadedChunks().contains(compressXZ)) {
|
||||||
|
eventChunkLoad.getNeedLoadChunks().add(compressXZ);
|
||||||
|
event.getPlayer().getLoadedChunks().add(compressXZ);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!eventChunkLoad.getNeedLoadChunks().isEmpty()) {
|
||||||
|
EventBusGetter.getInstance().post(eventChunkLoad);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
event.getPlayer().getLocation().setXYZ(event.getNewLocation());
|
||||||
|
|
||||||
|
// TODO отсылать клиенту только(!) для корректировки позиции
|
||||||
|
// SC_PlayerMoveEvent nextEvent = new SC_PlayerMoveEvent(event.getPlayer());
|
||||||
|
// nextEvent.setNewLocation(event.getNewLocation());
|
||||||
|
// EventBusGetter.INSTANCE.post(nextEvent);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -4,22 +4,12 @@
|
|||||||
*/
|
*/
|
||||||
package mc.core;
|
package mc.core;
|
||||||
|
|
||||||
import com.google.common.eventbus.Subscribe;
|
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import mc.core.events.CS_PlayerMoveEvent;
|
|
||||||
import mc.core.events.EventBusGetter;
|
|
||||||
import mc.core.events.SC_ChunkLoadEvent;
|
|
||||||
import mc.core.events.SC_ChunkUnloadEvent;
|
|
||||||
import mc.core.player.PlayerManager;
|
import mc.core.player.PlayerManager;
|
||||||
import mc.core.time.TimeProcessor;
|
import mc.core.time.TimeProcessor;
|
||||||
import mc.core.utils.CompactedCoords;
|
|
||||||
import mc.core.world.World;
|
|
||||||
import mc.core.world.chunk.Chunk;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
|
||||||
import java.util.Iterator;
|
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
public class GameLoop extends Thread {
|
public class GameLoop extends Thread {
|
||||||
private final TpsWatcher TPS_WATCHER = TpsWatcher.getInstance();
|
private final TpsWatcher TPS_WATCHER = TpsWatcher.getInstance();
|
||||||
@@ -48,77 +38,16 @@ public class GameLoop extends Thread {
|
|||||||
TPS_WATCHER.setTraceTPS(value);
|
TPS_WATCHER.setTraceTPS(value);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Subscribe
|
|
||||||
public void playerMoveEventHandler(CS_PlayerMoveEvent event) {
|
|
||||||
log.trace("(GameLoop) playerMoveEventHandler()");
|
|
||||||
|
|
||||||
Chunk chunk;
|
|
||||||
chunk = event.getOldLocation().getChunk(); // Old chunk
|
|
||||||
int ccX = chunk.getX();
|
|
||||||
int ccZ = chunk.getZ();
|
|
||||||
chunk = event.getNewLocation().getChunk(); // Next chunk
|
|
||||||
int ncX = chunk.getX();
|
|
||||||
int ncZ = chunk.getZ();
|
|
||||||
|
|
||||||
if (event.isRecalcChunk() || (ncX != ccX || ncZ != ccZ)) {
|
|
||||||
final int viewDistance = event.getPlayer().getSettings().getViewDistance() + 1;
|
|
||||||
int cMinX = chunk.getX() - viewDistance;
|
|
||||||
int cMaxX = chunk.getX() + viewDistance;
|
|
||||||
int cMinZ = chunk.getZ() - viewDistance;
|
|
||||||
int cMaxZ = chunk.getZ() + viewDistance;
|
|
||||||
|
|
||||||
SC_ChunkUnloadEvent eventChunkUnload = new SC_ChunkUnloadEvent(event.getPlayer());
|
|
||||||
Iterator<Integer> itr = event.getPlayer().getLoadedChunks().iterator();
|
|
||||||
while(itr.hasNext()) {
|
|
||||||
int compressXZ = itr.next();
|
|
||||||
int[] xz = CompactedCoords.uncompressXZ(compressXZ);
|
|
||||||
if (xz[0] > cMaxX || xz[0] < cMinX || xz[1] > cMaxZ || xz[1] < cMinZ) {
|
|
||||||
eventChunkUnload.getNeedUnloadChunks().add(compressXZ);
|
|
||||||
itr.remove();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!eventChunkUnload.getNeedUnloadChunks().isEmpty()) {
|
|
||||||
EventBusGetter.INSTANCE.post(eventChunkUnload);
|
|
||||||
}
|
|
||||||
|
|
||||||
SC_ChunkLoadEvent eventChunkLoad = new SC_ChunkLoadEvent(event.getPlayer());
|
|
||||||
for (int cZ = cMinZ; cZ <= cMaxZ; cZ++) {
|
|
||||||
for (int cX = cMinX; cX <= cMaxX; cX++) {
|
|
||||||
int compressXZ = CompactedCoords.compressXZ(cX, cZ);
|
|
||||||
if (!event.getPlayer().getLoadedChunks().contains(compressXZ)) {
|
|
||||||
if (!event.getPlayer().getLoadedChunks().contains(compressXZ)) {
|
|
||||||
eventChunkLoad.getNeedLoadChunks().add(compressXZ);
|
|
||||||
event.getPlayer().getLoadedChunks().add(compressXZ);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!eventChunkLoad.getNeedLoadChunks().isEmpty()) {
|
|
||||||
EventBusGetter.INSTANCE.post(eventChunkLoad);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
event.getPlayer().getLocation().setXYZ(event.getNewLocation());
|
|
||||||
|
|
||||||
// TODO отсылать клиенту только(!) для корректировки позиции
|
|
||||||
// SC_PlayerMoveEvent nextEvent = new SC_PlayerMoveEvent(event.getPlayer());
|
|
||||||
// nextEvent.setNewLocation(event.getNewLocation());
|
|
||||||
// EventBusGetter.INSTANCE.post(nextEvent);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
TPS_WATCHER.startWatch();
|
TPS_WATCHER.startWatch();
|
||||||
|
|
||||||
EventBusGetter.INSTANCE.register(this);
|
|
||||||
|
|
||||||
while (!isInterrupted()) {
|
while (!isInterrupted()) {
|
||||||
TPS_WATCHER.check();
|
TPS_WATCHER.check();
|
||||||
|
|
||||||
/* --- --- --- */
|
/* --- --- --- */
|
||||||
|
|
||||||
|
/* TODO нужно перенести этот функционал на Network */
|
||||||
playerManager.getBroadcastChannel().sendTimeUpdate(
|
playerManager.getBroadcastChannel().sendTimeUpdate(
|
||||||
gameTimer.getGameTime(),
|
gameTimer.getGameTime(),
|
||||||
gameTimer.getWorldAge()
|
gameTimer.getWorldAge()
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
* DmitriyMX <dimon550@gmail.com>
|
* DmitriyMX <dimon550@gmail.com>
|
||||||
* 2018-05-02
|
* 2018-05-02
|
||||||
*/
|
*/
|
||||||
package mc.core.events;
|
package mc.core.eventbus;
|
||||||
|
|
||||||
public interface Event {
|
public interface Event {
|
||||||
void setCanceled(boolean value);
|
void setCanceled(boolean value);
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
* DmitriyMX <dimon550@gmail.com>
|
* DmitriyMX <dimon550@gmail.com>
|
||||||
* 2018-05-02
|
* 2018-05-02
|
||||||
*/
|
*/
|
||||||
package mc.core.events;
|
package mc.core.eventbus;
|
||||||
|
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
@@ -2,12 +2,14 @@
|
|||||||
* DmitriyMX <dimon550@gmail.com>
|
* DmitriyMX <dimon550@gmail.com>
|
||||||
* 2018-05-02
|
* 2018-05-02
|
||||||
*/
|
*/
|
||||||
package mc.core.events;
|
package mc.core.eventbus;
|
||||||
|
|
||||||
import com.google.common.eventbus.EventBus;
|
import com.google.common.eventbus.EventBus;
|
||||||
|
import lombok.Getter;
|
||||||
|
|
||||||
public final class EventBusGetter {
|
public final class EventBusGetter {
|
||||||
public static final EventBus INSTANCE = new EventBus();
|
@Getter
|
||||||
|
private static final EventBus instance = new EventBus();
|
||||||
|
|
||||||
private EventBusGetter() {
|
private EventBusGetter() {
|
||||||
}
|
}
|
||||||
@@ -2,12 +2,13 @@
|
|||||||
* DmitriyMX <dimon550@gmail.com>
|
* DmitriyMX <dimon550@gmail.com>
|
||||||
* 2018-05-02
|
* 2018-05-02
|
||||||
*/
|
*/
|
||||||
package mc.core.events;
|
package mc.core.eventbus.events;
|
||||||
|
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
import mc.core.EntityLocation;
|
import mc.core.EntityLocation;
|
||||||
|
import mc.core.eventbus.EventBase;
|
||||||
import mc.core.player.Player;
|
import mc.core.player.Player;
|
||||||
|
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
@@ -1,7 +1,8 @@
|
|||||||
package mc.core.events;
|
package mc.core.eventbus.events;
|
||||||
|
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import mc.core.eventbus.EventBase;
|
||||||
import mc.core.player.Player;
|
import mc.core.player.Player;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@@ -1,7 +1,8 @@
|
|||||||
package mc.core.events;
|
package mc.core.eventbus.events;
|
||||||
|
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import mc.core.eventbus.EventBase;
|
||||||
import mc.core.player.Player;
|
import mc.core.player.Player;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@@ -2,18 +2,19 @@
|
|||||||
* DmitriyMX <dimon550@gmail.com>
|
* DmitriyMX <dimon550@gmail.com>
|
||||||
* 2018-05-02
|
* 2018-05-02
|
||||||
*/
|
*/
|
||||||
package mc.core.events;
|
package mc.core.eventbus.events;
|
||||||
|
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
import mc.core.eventbus.EventBase;
|
||||||
|
|
||||||
import java.net.SocketAddress;
|
import java.net.SocketAddress;
|
||||||
|
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
public class LoginEvent extends EventBase {
|
public class SC_LoginEvent extends EventBase {
|
||||||
private String playerName;
|
private String playerName;
|
||||||
private final SocketAddress remoteAddress;
|
private final SocketAddress remoteAddress;
|
||||||
private boolean deny;
|
private boolean deny;
|
||||||
@@ -2,18 +2,19 @@
|
|||||||
* DmitriyMX <dimon550@gmail.com>
|
* DmitriyMX <dimon550@gmail.com>
|
||||||
* 2018-05-02
|
* 2018-05-02
|
||||||
*/
|
*/
|
||||||
package mc.core.events;
|
package mc.core.eventbus.events;
|
||||||
|
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
import mc.core.EntityLocation;
|
import mc.core.EntityLocation;
|
||||||
|
import mc.core.eventbus.EventBase;
|
||||||
import mc.core.player.Player;
|
import mc.core.player.Player;
|
||||||
|
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
public class PlayerLookEvent extends EventBase {
|
public class SC_PlayerLookEvent extends EventBase {
|
||||||
private final Player player;
|
private final Player player;
|
||||||
private EntityLocation newLook;
|
private EntityLocation newLook;
|
||||||
}
|
}
|
||||||
@@ -1,9 +1,10 @@
|
|||||||
package mc.core.events;
|
package mc.core.eventbus.events;
|
||||||
|
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
import mc.core.EntityLocation;
|
import mc.core.EntityLocation;
|
||||||
|
import mc.core.eventbus.EventBase;
|
||||||
import mc.core.player.Player;
|
import mc.core.player.Player;
|
||||||
|
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
@@ -2,18 +2,19 @@
|
|||||||
* DmitriyMX <dimon550@gmail.com>
|
* DmitriyMX <dimon550@gmail.com>
|
||||||
* 2018-05-02
|
* 2018-05-02
|
||||||
*/
|
*/
|
||||||
package mc.core.events;
|
package mc.core.eventbus.events;
|
||||||
|
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
import mc.core.eventbus.EventBase;
|
||||||
|
|
||||||
import java.net.SocketAddress;
|
import java.net.SocketAddress;
|
||||||
|
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
public class ServerPingEvent extends EventBase {
|
public class SC_ServerPingEvent extends EventBase {
|
||||||
private final SocketAddress remoteAddress;
|
private final SocketAddress remoteAddress;
|
||||||
private String description;
|
private String description;
|
||||||
private int online;
|
private int online;
|
||||||
@@ -14,7 +14,7 @@ import io.netty.channel.socket.nio.NioServerSocketChannel;
|
|||||||
import io.netty.util.AttributeKey;
|
import io.netty.util.AttributeKey;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import mc.core.events.EventBusGetter;
|
import mc.core.eventbus.EventBusGetter;
|
||||||
import mc.core.network.Server;
|
import mc.core.network.Server;
|
||||||
import mc.core.network.StartServerException;
|
import mc.core.network.StartServerException;
|
||||||
import mc.core.network.proto_1_12_2.State;
|
import mc.core.network.proto_1_12_2.State;
|
||||||
@@ -64,7 +64,7 @@ public class NettyServer implements Server {
|
|||||||
public void start() throws StartServerException {
|
public void start() throws StartServerException {
|
||||||
log.info("Use protocol {}", StatusResponsePacket.NAME);
|
log.info("Use protocol {}", StatusResponsePacket.NAME);
|
||||||
|
|
||||||
EventBusGetter.INSTANCE.register(new PlayerEventListener());
|
EventBusGetter.getInstance().register(new PlayerEventListener());
|
||||||
|
|
||||||
bossGroup = new NioEventLoopGroup(1);
|
bossGroup = new NioEventLoopGroup(1);
|
||||||
workerGroup = new NioEventLoopGroup(workerGroupCount);
|
workerGroup = new NioEventLoopGroup(workerGroupCount);
|
||||||
|
|||||||
@@ -2,16 +2,15 @@ package mc.core.network.proto_1_12_2.netty;
|
|||||||
|
|
||||||
import com.google.common.eventbus.Subscribe;
|
import com.google.common.eventbus.Subscribe;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import mc.core.events.SC_ChunkLoadEvent;
|
import mc.core.eventbus.events.SC_ChunkLoadEvent;
|
||||||
import mc.core.events.SC_ChunkUnloadEvent;
|
import mc.core.eventbus.events.SC_ChunkUnloadEvent;
|
||||||
import mc.core.events.SC_PlayerMoveEvent;
|
import mc.core.eventbus.events.SC_PlayerMoveEvent;
|
||||||
import mc.core.network.proto_1_12_2.TeleportManager;
|
import mc.core.network.proto_1_12_2.TeleportManager;
|
||||||
import mc.core.network.proto_1_12_2.packets.ChunkDataPacket;
|
import mc.core.network.proto_1_12_2.packets.ChunkDataPacket;
|
||||||
import mc.core.network.proto_1_12_2.packets.PlayerPositionAndLookPacket;
|
import mc.core.network.proto_1_12_2.packets.PlayerPositionAndLookPacket;
|
||||||
import mc.core.network.proto_1_12_2.packets.UnloadChunkPacket;
|
import mc.core.network.proto_1_12_2.packets.UnloadChunkPacket;
|
||||||
import mc.core.utils.CompactedCoords;
|
import mc.core.utils.CompactedCoords;
|
||||||
import mc.core.world.chunk.Chunk;
|
import mc.core.world.chunk.Chunk;
|
||||||
import mc.core.world.chunk.ChunkSection;
|
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
class PlayerEventListener {
|
class PlayerEventListener {
|
||||||
|
|||||||
@@ -6,8 +6,8 @@ package mc.core.network.proto_1_12_2.netty.handlers;
|
|||||||
|
|
||||||
import io.netty.channel.Channel;
|
import io.netty.channel.Channel;
|
||||||
import io.netty.channel.ChannelFutureListener;
|
import io.netty.channel.ChannelFutureListener;
|
||||||
import mc.core.events.CS_PlayerMoveEvent;
|
import mc.core.eventbus.events.CS_PlayerMoveEvent;
|
||||||
import mc.core.events.EventBusGetter;
|
import mc.core.eventbus.EventBusGetter;
|
||||||
import mc.core.network.proto_1_12_2.State;
|
import mc.core.network.proto_1_12_2.State;
|
||||||
import mc.core.network.proto_1_12_2.TeleportManager;
|
import mc.core.network.proto_1_12_2.TeleportManager;
|
||||||
import mc.core.network.proto_1_12_2.netty.wrappers.WrapperNetChannel;
|
import mc.core.network.proto_1_12_2.netty.wrappers.WrapperNetChannel;
|
||||||
@@ -140,7 +140,7 @@ public class LoginHandler extends AbstractStateHandler implements LoginStateHand
|
|||||||
CS_PlayerMoveEvent event = new CS_PlayerMoveEvent(player, player.getLocation());
|
CS_PlayerMoveEvent event = new CS_PlayerMoveEvent(player, player.getLocation());
|
||||||
event.setNewLocation(player.getLocation());
|
event.setNewLocation(player.getLocation());
|
||||||
event.setRecalcChunk(true);
|
event.setRecalcChunk(true);
|
||||||
EventBusGetter.INSTANCE.post(event);
|
EventBusGetter.getInstance().post(event);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,8 +8,8 @@ import io.netty.channel.Channel;
|
|||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import mc.core.EntityLocation;
|
import mc.core.EntityLocation;
|
||||||
import mc.core.chat.ChatProcessor;
|
import mc.core.chat.ChatProcessor;
|
||||||
import mc.core.events.CS_PlayerMoveEvent;
|
import mc.core.eventbus.events.CS_PlayerMoveEvent;
|
||||||
import mc.core.events.EventBusGetter;
|
import mc.core.eventbus.EventBusGetter;
|
||||||
import mc.core.network.proto_1_12_2.TeleportManager;
|
import mc.core.network.proto_1_12_2.TeleportManager;
|
||||||
import mc.core.network.proto_1_12_2.packets.*;
|
import mc.core.network.proto_1_12_2.packets.*;
|
||||||
import mc.core.player.Player;
|
import mc.core.player.Player;
|
||||||
@@ -85,7 +85,7 @@ public class PlayHandler extends AbstractStateHandler implements PlayStateHandle
|
|||||||
player.getLocation().getPitch(),
|
player.getLocation().getPitch(),
|
||||||
player.getLocation().getWorld()
|
player.getLocation().getWorld()
|
||||||
));
|
));
|
||||||
EventBusGetter.INSTANCE.post(event);
|
EventBusGetter.getInstance().post(event);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Handler
|
@Handler
|
||||||
|
|||||||
Reference in New Issue
Block a user