// SPDX-FileCopyrightText: 2018 The CC: Tweaked Developers // // SPDX-License-Identifier: MPL-2.0 package dan200.computercraft.shared.network; import dan200.computercraft.shared.network.client.ClientNetworkContext; import dan200.computercraft.shared.network.server.ServerNetworkContext; import net.minecraft.network.protocol.common.custom.CustomPacketPayload; /** * The base interface for any message which will be sent to the client or server. * * @param The context under which packets are evaluated. * @see ClientNetworkContext * @see ServerNetworkContext */ public interface NetworkMessage extends CustomPacketPayload { /** * Handle this {@link NetworkMessage}. * * @param context The context with which to handle this message */ void handle(T context); }