当前位置: 首页>>代码示例>>Java>>正文


Java FMLEmbeddedChannel类代码示例

本文整理汇总了Java中cpw.mods.fml.common.network.FMLEmbeddedChannel的典型用法代码示例。如果您正苦于以下问题:Java FMLEmbeddedChannel类的具体用法?Java FMLEmbeddedChannel怎么用?Java FMLEmbeddedChannel使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


FMLEmbeddedChannel类属于cpw.mods.fml.common.network包,在下文中一共展示了FMLEmbeddedChannel类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getNewChannelHandler

import cpw.mods.fml.common.network.FMLEmbeddedChannel; //导入依赖的package包/类
private EnumMap<Side, FMLEmbeddedChannel> getNewChannelHandler()
{

    EnumMap<Side, FMLEmbeddedChannel> handlers = NetworkRegistry.INSTANCE.newChannel(ID, handler);

    ChannelHandler.PacketExecuter executer = new ChannelHandler.PacketExecuter();

    for(Map.Entry<Side, FMLEmbeddedChannel> e : handlers.entrySet())
    {
        FMLEmbeddedChannel channel = e.getValue();
        String codec = channel.findChannelHandlerNameForType(ChannelHandler.class);
        channel.pipeline().addAfter(codec, "PacketExecuter", executer);
    }

    return handlers;
}
 
开发者ID:tm1990,项目名称:MiscUtils,代码行数:17,代码来源:ChannelUtils.java

示例2: registerMessage

import cpw.mods.fml.common.network.FMLEmbeddedChannel; //导入依赖的package包/类
/**
 * Register a message and it's associated handler. The message will have the supplied discriminator byte. The message handler will
 * be registered on the supplied side (this is the side where you want the message to be processed and acted upon).
 *
 * @param messageHandler the message handler instance
 * @param requestMessageType the message type
 * @param discriminator a discriminator byte
 * @param side the side for the handler
 */
public <REQ extends IMessage, REPLY extends IMessage> void registerMessage(IMessageHandler<? super REQ, ? extends REPLY> messageHandler, Class<REQ> requestMessageType, int discriminator, Side side)
{
    packetCodec.addDiscriminator(discriminator, requestMessageType);
    FMLEmbeddedChannel channel = channels.get(side);
    String type = channel.findChannelHandlerNameForType(SimpleIndexedCodec.class);
    if (side == Side.SERVER)
    {
        addServerHandlerAfter(channel, type, messageHandler, requestMessageType);
    }
    else
    {
        addClientHandlerAfter(channel, type, messageHandler, requestMessageType);
    }
}
 
开发者ID:SchrodingersSpy,项目名称:TRHS_Club_Mod_2016,代码行数:24,代码来源:SimpleNetworkWrapper.java

示例3: registerChannel

import cpw.mods.fml.common.network.FMLEmbeddedChannel; //导入依赖的package包/类
public static void registerChannel(ForgeModContainer forgeModContainer, Side side)
{
    channelPair = NetworkRegistry.INSTANCE.newChannel(forgeModContainer, "FORGE", new ForgeRuntimeCodec());
    if (side == Side.CLIENT)
    {
        addClientHandlers();
    }

    FMLEmbeddedChannel serverChannel = channelPair.get(Side.SERVER);
    serverChannel.attr(FMLOutboundHandler.FML_MESSAGETARGET).set(OutboundTarget.NOWHERE);
    String handlerName = serverChannel.findChannelHandlerNameForType(ForgeRuntimeCodec.class);
    serverChannel.pipeline().addAfter(handlerName, "ServerToClientConnection", new ServerToClientConnectionEstablishedHandler());
}
 
开发者ID:SchrodingersSpy,项目名称:TRHS_Club_Mod_2016,代码行数:14,代码来源:ForgeNetworkHandler.java

示例4: addClientHandlers

import cpw.mods.fml.common.network.FMLEmbeddedChannel; //导入依赖的package包/类
@SideOnly(Side.CLIENT)
private static void addClientHandlers()
{
    FMLEmbeddedChannel clientChannel = channelPair.get(Side.CLIENT);
    String handlerName = clientChannel.findChannelHandlerNameForType(ForgeRuntimeCodec.class);
    clientChannel.pipeline().addAfter(handlerName, "DimensionHandler", new DimensionMessageHandler());
    clientChannel.pipeline().addAfter(handlerName, "FluidIdRegistryHandler", new FluidIdRegistryMessageHandler());
}
 
开发者ID:SchrodingersSpy,项目名称:TRHS_Club_Mod_2016,代码行数:9,代码来源:ForgeNetworkHandler.java

示例5: registerMessage

import cpw.mods.fml.common.network.FMLEmbeddedChannel; //导入依赖的package包/类
/**
 * Register a message and it's associated handler. The message will have the supplied discriminator byte. The message handler will
 * be registered on the supplied side (this is the side where you want the message to be processed and acted upon).
 *
 * @param messageHandler the message handler type
 * @param requestMessageType the message type
 * @param discriminator a discriminator byte
 * @param side the side for the handler
 */
public <REQ extends IMessage, REPLY extends IMessage> void registerMessage(Class<? extends IMessageHandler<REQ, REPLY>> messageHandler, Class<REQ> requestMessageType, int discriminator, Side side)
{
    packetCodec.addDiscriminator(discriminator, requestMessageType);
    FMLEmbeddedChannel channel = channels.get(side);
    String type = channel.findChannelHandlerNameForType(SimpleIndexedCodec.class);
    if (side == Side.SERVER)
    {
        addServerHandlerAfter(channel, type, messageHandler, requestMessageType);
    }
    else
    {
        addClientHandlerAfter(channel, type, messageHandler, requestMessageType);
    }
}
 
开发者ID:alexandrage,项目名称:CauldronGit,代码行数:24,代码来源:SimpleNetworkWrapper.java

示例6: SendPacketToPlayerListExcept

import cpw.mods.fml.common.network.FMLEmbeddedChannel; //导入依赖的package包/类
public static void SendPacketToPlayerListExcept(AbstractPacket packet, EnumMap<Side, FMLEmbeddedChannel> channels, ArrayList<EntityPlayer> list, EntityPlayer pla){

        for(EntityPlayer pl : list) {

            if(pl.getCommandSenderName().equalsIgnoreCase(pla.getCommandSenderName()))
                continue;

            channels.get(Side.SERVER).attr(FMLOutboundHandler.FML_MESSAGETARGET).set(FMLOutboundHandler.OutboundTarget.PLAYER);
            channels.get(Side.SERVER).attr(FMLOutboundHandler.FML_MESSAGETARGETARGS).set(pl);
            channels.get(Side.SERVER).writeAndFlush(packet);
        }
    }
 
开发者ID:tm1990,项目名称:MiscUtils,代码行数:13,代码来源:PacketHandler.java

示例7: SendPacketToPlayerList

import cpw.mods.fml.common.network.FMLEmbeddedChannel; //导入依赖的package包/类
public static void SendPacketToPlayerList(AbstractPacket packet, EnumMap<Side, FMLEmbeddedChannel> channels, ArrayList<EntityPlayer> list){

        for(EntityPlayer pl : list) {

            channels.get(Side.SERVER).attr(FMLOutboundHandler.FML_MESSAGETARGET).set(FMLOutboundHandler.OutboundTarget.PLAYER);
            channels.get(Side.SERVER).attr(FMLOutboundHandler.FML_MESSAGETARGETARGS).set(pl);
            channels.get(Side.SERVER).writeAndFlush(packet);
        }
    }
 
开发者ID:tm1990,项目名称:MiscUtils,代码行数:10,代码来源:PacketHandler.java

示例8: sendToAllExcept

import cpw.mods.fml.common.network.FMLEmbeddedChannel; //导入依赖的package包/类
public static void sendToAllExcept(AbstractPacket packet, EntityPlayer player, EnumMap<Side, FMLEmbeddedChannel> channels)
{
    if(FMLCommonHandler.instance().getMinecraftServerInstance().getConfigurationManager().playerEntityList != null && FMLCommonHandler.instance().getMinecraftServerInstance().getConfigurationManager().playerEntityList.size() > 0)
    for(int i = 0; i < FMLCommonHandler.instance().getMinecraftServerInstance().getConfigurationManager().playerEntityList.size(); i++)
    {
        EntityPlayer player1 = (EntityPlayer)FMLCommonHandler.instance().getMinecraftServerInstance().getConfigurationManager().playerEntityList.get(i);

        if(player.getCommandSenderName().equalsIgnoreCase(player1.getCommandSenderName()))
        {
            continue;
        }

        PacketHandler.sendToPlayer(packet, player1, channels);
    }
}
 
开发者ID:tm1990,项目名称:MiscUtils,代码行数:16,代码来源:PacketHandler.java

示例9: setClientHandler

import cpw.mods.fml.common.network.FMLEmbeddedChannel; //导入依赖的package包/类
@SideOnly(Side.CLIENT)
public void setClientHandler(SimpleChannelInboundHandler<T> handler) {
	FMLEmbeddedChannel channel = channels.get(Side.CLIENT);
	String codecName = channel.findChannelHandlerNameForType(codec.getClass());
	if(handlers.get(Side.CLIENT) != null) {
        channel.pipeline().remove("ClientHandler");
	}
       channel.pipeline().addAfter(codecName, "ClientHandler", handler);
       handlers.put(Side.CLIENT, handler);
}
 
开发者ID:ElConquistador,项目名称:ElConQore,代码行数:11,代码来源:EQPacketHandler.java

示例10: setServerHandler

import cpw.mods.fml.common.network.FMLEmbeddedChannel; //导入依赖的package包/类
public void setServerHandler(SimpleChannelInboundHandler<T> handler) {		
	FMLEmbeddedChannel channel = channels.get(Side.SERVER);
	String codecName = channel.findChannelHandlerNameForType(codec.getClass());
	if(handlers.get(Side.SERVER) != null) {
        channel.pipeline().remove("ServerHandler");
	}
       channel.pipeline().addAfter(codecName, "ServerHandler", handler);
       handlers.put(Side.SERVER, handler);
}
 
开发者ID:ElConquistador,项目名称:ElConQore,代码行数:10,代码来源:EQPacketHandler.java

示例11: register

import cpw.mods.fml.common.network.FMLEmbeddedChannel; //导入依赖的package包/类
public static void register() {
    NetworkHandler.channels = (EnumMap<Side, FMLEmbeddedChannel>)NetworkRegistry.INSTANCE.newChannel("XU|Pkt", new ChannelHandler[] { new PacketCodec(), ExtraUtilsMod.proxy.getNewPacketHandler() });
}
 
开发者ID:sameer,项目名称:ExtraUtilities,代码行数:4,代码来源:NetworkHandler.java

示例12: addServerHandlerAfter

import cpw.mods.fml.common.network.FMLEmbeddedChannel; //导入依赖的package包/类
private <REQ extends IMessage, REPLY extends IMessage, NH extends INetHandler> void addServerHandlerAfter(FMLEmbeddedChannel channel, String type, IMessageHandler<? super REQ, ? extends REPLY> messageHandler, Class<REQ> requestType)
{
    SimpleChannelHandlerWrapper<REQ, REPLY> handler = getHandlerWrapper(messageHandler, Side.SERVER, requestType);
    channel.pipeline().addAfter(type, messageHandler.getClass().getName(), handler);
}
 
开发者ID:SchrodingersSpy,项目名称:TRHS_Club_Mod_2016,代码行数:6,代码来源:SimpleNetworkWrapper.java

示例13: addClientHandlerAfter

import cpw.mods.fml.common.network.FMLEmbeddedChannel; //导入依赖的package包/类
private <REQ extends IMessage, REPLY extends IMessage, NH extends INetHandler> void addClientHandlerAfter(FMLEmbeddedChannel channel, String type, IMessageHandler<? super REQ, ? extends REPLY> messageHandler, Class<REQ> requestType)
{
    SimpleChannelHandlerWrapper<REQ, REPLY> handler = getHandlerWrapper(messageHandler, Side.CLIENT, requestType);
    channel.pipeline().addAfter(type, messageHandler.getClass().getName(), handler);
}
 
开发者ID:SchrodingersSpy,项目名称:TRHS_Club_Mod_2016,代码行数:6,代码来源:SimpleNetworkWrapper.java

示例14: ImagineNetwork

import cpw.mods.fml.common.network.FMLEmbeddedChannel; //导入依赖的package包/类
public ImagineNetwork(final String channelName) {
    final Map<Side, FMLEmbeddedChannel> channels = (Map<Side, FMLEmbeddedChannel>)NetworkRegistry.INSTANCE.newChannel(channelName, new ChannelHandler[] { new ImaginePacketCodec(this), new ImaginePacketHandler() });
    this.mServerChannel = channels.get(Side.SERVER);
    this.mClientChannel = channels.get(Side.CLIENT);
}
 
开发者ID:CyberdyneCC,项目名称:ThermosRebased,代码行数:6,代码来源:ImagineNetwork.java

示例15: transferPlayerToDimension

import cpw.mods.fml.common.network.FMLEmbeddedChannel; //导入依赖的package包/类
public static void transferPlayerToDimension(EntityPlayerMP player, int dim, ServerConfigurationManager manager, Environment environ) {

		int oldDim = player.dimension;
		WorldServer worldserver = manager.getServerInstance().worldServerForDimension(player.dimension);
		player.dimension = dim;
		WorldServer worldserver1 = manager.getServerInstance().worldServerForDimension(player.dimension);
		// Cauldron dont crash the client, let 'em know there's a new dimension in town
        if (DimensionManager.isBukkitDimension(dim))
        {
            FMLEmbeddedChannel serverChannel = ForgeNetworkHandler.getServerChannel();
            serverChannel.attr(FMLOutboundHandler.FML_MESSAGETARGET).set(FMLOutboundHandler.OutboundTarget.PLAYER);
            serverChannel.attr(FMLOutboundHandler.FML_MESSAGETARGETARGS).set(player);
            serverChannel.writeOutbound(new ForgeMessage.DimensionRegisterMessage(dim, environ.getId()));
        }
        // Cauldron end
		player.playerNetServerHandler.sendPacket(new S07PacketRespawn(dim, worldserver1.difficultySetting, worldserver1.getWorldInfo()
				.getTerrainType(), player.theItemInWorldManager.getGameType()));
		player.playerNetServerHandler.sendPacket(new S1FPacketSetExperience(player.experience, player.experienceTotal, player.experienceLevel));

		worldserver.removePlayerEntityDangerously(player);
		if (player.riddenByEntity != null) {
			player.riddenByEntity.mountEntity(null);
		}
		if (player.ridingEntity != null) {
			player.mountEntity(null);
		}
		player.isDead = false;
		transferEntityToWorld(player, worldserver, worldserver1);
		manager.func_72375_a(player, worldserver);
		player.playerNetServerHandler.setPlayerLocation(player.posX, player.posY, player.posZ, player.rotationYaw, player.rotationPitch);
		player.theItemInWorldManager.setWorld(worldserver1);
		manager.updateTimeAndWeatherForPlayer(player, worldserver1);
		manager.syncPlayerInventory(player);
		Iterator<PotionEffect> iterator = player.getActivePotionEffects().iterator();

		while (iterator.hasNext()) {
			PotionEffect potioneffect = iterator.next();
			player.playerNetServerHandler.sendPacket(new S1DPacketEntityEffect(player.getEntityId(), potioneffect));
		}
		FMLCommonHandler.instance().firePlayerChangedDimensionEvent(player, oldDim, dim);
	}
 
开发者ID:CyberdyneCC,项目名称:Thermos,代码行数:42,代码来源:ThermiteTeleportationHandler.java


注:本文中的cpw.mods.fml.common.network.FMLEmbeddedChannel类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。