本文整理汇总了Java中org.spacehq.mc.protocol.MinecraftProtocol类的典型用法代码示例。如果您正苦于以下问题:Java MinecraftProtocol类的具体用法?Java MinecraftProtocol怎么用?Java MinecraftProtocol使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
MinecraftProtocol类属于org.spacehq.mc.protocol包,在下文中一共展示了MinecraftProtocol类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: init
import org.spacehq.mc.protocol.MinecraftProtocol; //导入依赖的package包/类
public void init() {
if (protocol_server == null) {
try {
this.protocol_server = new Server(server.getConfiguration().getIPAdress(), server.getConfiguration().getPort(), MinecraftProtocol.class, new TcpSessionFactory());
protocol_server.setGlobalFlag(ProtocolConstants.VERIFY_USERS_KEY, server.getConfiguration().isOnlineMode());
protocol_server.setGlobalFlag(ProtocolConstants.SERVER_INFO_BUILDER_KEY, new ServerInfo(server));
protocol_server.setGlobalFlag(ProtocolConstants.SERVER_LOGIN_HANDLER_KEY, new ServerLogin(server));
protocol_server.addListener(new CyanServerListener(server));
protocol_server.setGlobalFlag(ProtocolConstants.SERVER_COMPRESSION_THRESHOLD, 256);
protocol_server.bind();
server.getLogger().info("Protocol server is started!");
} catch (Exception ex) {
server.getLogger().info("Server crashed: ");
ex.printStackTrace();
}
}
}
示例2: onLogin
import org.spacehq.mc.protocol.MinecraftProtocol; //导入依赖的package包/类
public void onLogin(Session session) {
ServerPlayer newPlayer = new ServerPlayer(session);
MainMain.players.put(session, newPlayer);
newPlayer.setWorld(MainMain.defaultWorld);
session.send(new ServerJoinGamePacket((int) newPlayer.getUEID(), false, GameMode.CREATIVE,
newPlayer.getWorld().getDimension().toInt(), Difficulty.PEACEFUL, 10, WorldType.DEFAULT, false));
List<PlayerListEntry> playerList = new ArrayList<PlayerListEntry>();
MainMain.players.forEach((otherPlayer) -> {
playerList.add(new PlayerListEntry(otherPlayer.getProfile(), GameMode.CREATIVE, 1,
new TextMessage(otherPlayer.getName())));
});
PlayerListEntry[] playerListPck = new PlayerListEntry[playerList.size()];
playerList.toArray(playerListPck);
session.send(new ServerPlayerListEntryPacket(PlayerListEntryAction.ADD_PLAYER, playerListPck));
MainMain.players.forEach((otherPlayer) -> {
if (otherPlayer == newPlayer)
return;
PlayerListEntry[] newPlayerListing = new PlayerListEntry[1];
newPlayerListing[0] = new PlayerListEntry(newPlayer.getProfile(), GameMode.CREATIVE, 1,
new TextMessage(newPlayer.getName()));
otherPlayer.sendPacket(new ServerPlayerListEntryPacket(PlayerListEntryAction.ADD_PLAYER, newPlayerListing));
});
session.send(new ServerPlayerPositionRotationPacket(0, 120, 0, 0, 0, 0));
MinecraftProtocol protocol = (MinecraftProtocol) session.getPacketProtocol();
if (protocol.getSubProtocol() == SubProtocol.GAME) {
GameProfile profile = session.getFlag(MinecraftConstants.PROFILE_KEY);
logger.info(profile.getName() + " has joined the game");
MainMain.server.getSessions()
.forEach((sessions) -> sessions
.send(new ServerChatPacket(new TextMessage(profile.getName() + " has joined the game")
.setStyle(new MessageStyle().setColor(ChatColor.YELLOW)))));
}
}
示例3: sessionRemoved
import org.spacehq.mc.protocol.MinecraftProtocol; //导入依赖的package包/类
@Override
public void sessionRemoved(SessionRemovedEvent event) {
// FOR TODO: Customize leave message
if (((MinecraftProtocol) event.getSession().getPacketProtocol()).getMode() == ProtocolMode.GAME) {
GameProfile profile = event.getSession().getFlag(ProtocolConstants.PROFILE_KEY);
Player player = server.getPlayer(profile.getName());
server.getPlayerManager().leavePlayer(player);
}
}
示例4: onLogin
import org.spacehq.mc.protocol.MinecraftProtocol; //导入依赖的package包/类
public void onLogin(Session session) {
NetherPlayer newPlayer = new NetherPlayer(session);
NetherServer.players.put(session, newPlayer);
// spawn the player in the world
newPlayer.setWorld(NetherServer.defaultWorld);
// send the join game packet
session.send(new ServerJoinGamePacket((int) newPlayer.getUEID(),
false, // Hardcore
GameMode.CREATIVE, // Player gamemode
newPlayer.getWorld().getDimension().toInt(), // Dimension (-1, 0, 1)
Difficulty.PEACEFUL, // Difficulty
10, // Max players
WorldType.DEFAULT,
false // Less debug info
));
// Send the logging in player the player list
List<PlayerListEntry> playerList = new ArrayList<PlayerListEntry>();
NetherServer.players.forEach((otherPlayer) -> {
playerList.add(new PlayerListEntry(
otherPlayer.getProfile(),
GameMode.CREATIVE, //TODO: game mode
1, //TODO: ping
new TextMessage(otherPlayer.getName())
));
});
PlayerListEntry[] playerListPck = new PlayerListEntry[playerList.size()];
playerList.toArray(playerListPck);
session.send(new ServerPlayerListEntryPacket(
PlayerListEntryAction.ADD_PLAYER,
playerListPck
));
// Send the other players the new player listing.
NetherServer.players.forEach((otherPlayer) -> {
if(otherPlayer == newPlayer) return;
PlayerListEntry[] newPlayerListing = new PlayerListEntry[1];
newPlayerListing[0] = new PlayerListEntry(newPlayer.getProfile(), GameMode.CREATIVE, 1, new TextMessage(newPlayer.getName()));
otherPlayer.sendPacket(new ServerPlayerListEntryPacket(PlayerListEntryAction.ADD_PLAYER, newPlayerListing));
});
// send the player position packet to get the player to spawn
session.send(new ServerPlayerPositionRotationPacket(0, 81.62, 0, 0, 0, 0));
// send a message to the console and to all players that a new person
// has joined the game
MinecraftProtocol protocol = (MinecraftProtocol) session.getPacketProtocol();
if (protocol.getSubProtocol() == SubProtocol.GAME) {
GameProfile profile = session.getFlag(MinecraftConstants.PROFILE_KEY);
logger.info(profile.getName() + " has joined the game");
NetherServer.server.getSessions()
.forEach((sessions) -> sessions
.send(new ServerChatPacket(new TextMessage(profile.getName() + " has joined the game")
.setStyle(new MessageStyle().setColor(ChatColor.YELLOW)))));
}
}
示例5: login
import org.spacehq.mc.protocol.MinecraftProtocol; //导入依赖的package包/类
public void login( String username, String password ) throws RequestException
{
Main.debug( "Attempting to log in..." );
protocol = new MinecraftProtocol( username, password, false );
Main.debug( "Logged in successfully" );
}