499 lines
16 KiB
Java
499 lines
16 KiB
Java
package net.minecraft.network.play;
|
|
|
|
import net.minecraft.network.INetHandler;
|
|
import net.minecraft.network.play.server.S00PacketKeepAlive;
|
|
import net.minecraft.network.play.server.S01PacketJoinGame;
|
|
import net.minecraft.network.play.server.S02PacketChat;
|
|
import net.minecraft.network.play.server.S03PacketTimeUpdate;
|
|
import net.minecraft.network.play.server.S04PacketEntityEquipment;
|
|
import net.minecraft.network.play.server.S05PacketSpawnPosition;
|
|
import net.minecraft.network.play.server.S06PacketUpdateHealth;
|
|
import net.minecraft.network.play.server.S07PacketRespawn;
|
|
import net.minecraft.network.play.server.S08PacketPlayerPosLook;
|
|
import net.minecraft.network.play.server.S09PacketHeldItemChange;
|
|
import net.minecraft.network.play.server.S0APacketUseBed;
|
|
import net.minecraft.network.play.server.S0BPacketAnimation;
|
|
import net.minecraft.network.play.server.S0CPacketSpawnPlayer;
|
|
import net.minecraft.network.play.server.S0DPacketCollectItem;
|
|
import net.minecraft.network.play.server.S0EPacketSpawnObject;
|
|
import net.minecraft.network.play.server.S0FPacketSpawnMob;
|
|
import net.minecraft.network.play.server.S10PacketSpawnPainting;
|
|
import net.minecraft.network.play.server.S11PacketSpawnExperienceOrb;
|
|
import net.minecraft.network.play.server.S12PacketEntityVelocity;
|
|
import net.minecraft.network.play.server.S13PacketDestroyEntities;
|
|
import net.minecraft.network.play.server.S14PacketEntity;
|
|
import net.minecraft.network.play.server.S18PacketEntityTeleport;
|
|
import net.minecraft.network.play.server.S19PacketEntityHeadLook;
|
|
import net.minecraft.network.play.server.S19PacketEntityStatus;
|
|
import net.minecraft.network.play.server.S1BPacketEntityAttach;
|
|
import net.minecraft.network.play.server.S1CPacketEntityMetadata;
|
|
import net.minecraft.network.play.server.S1DPacketEntityEffect;
|
|
import net.minecraft.network.play.server.S1EPacketRemoveEntityEffect;
|
|
import net.minecraft.network.play.server.S1FPacketSetExperience;
|
|
import net.minecraft.network.play.server.S20PacketEntityProperties;
|
|
import net.minecraft.network.play.server.S21PacketChunkData;
|
|
import net.minecraft.network.play.server.S22PacketMultiBlockChange;
|
|
import net.minecraft.network.play.server.S23PacketBlockChange;
|
|
import net.minecraft.network.play.server.S24PacketBlockAction;
|
|
import net.minecraft.network.play.server.S25PacketBlockBreakAnim;
|
|
import net.minecraft.network.play.server.S27PacketExplosion;
|
|
import net.minecraft.network.play.server.S28PacketEffect;
|
|
import net.minecraft.network.play.server.S29PacketSoundEffect;
|
|
import net.minecraft.network.play.server.S2APacketParticles;
|
|
import net.minecraft.network.play.server.S2BPacketChangeGameState;
|
|
import net.minecraft.network.play.server.S2CPacketSpawnGlobalEntity;
|
|
import net.minecraft.network.play.server.S2DPacketOpenWindow;
|
|
import net.minecraft.network.play.server.S2EPacketCloseWindow;
|
|
import net.minecraft.network.play.server.S2FPacketSetSlot;
|
|
import net.minecraft.network.play.server.S30PacketWindowItems;
|
|
import net.minecraft.network.play.server.S31PacketWindowProperty;
|
|
import net.minecraft.network.play.server.S32PacketConfirmTransaction;
|
|
import net.minecraft.network.play.server.S34PacketMaps;
|
|
import net.minecraft.network.play.server.S35PacketUpdateTileEntity;
|
|
import net.minecraft.network.play.server.S36PacketSignEditorOpen;
|
|
import net.minecraft.network.play.server.S37PacketStatistics;
|
|
import net.minecraft.network.play.server.S38PacketPlayerListItem;
|
|
import net.minecraft.network.play.server.S39PacketPlayerAbilities;
|
|
import net.minecraft.network.play.server.S3APacketTabComplete;
|
|
import net.minecraft.network.play.server.S3BPacketScoreboardObjective;
|
|
import net.minecraft.network.play.server.S3CPacketUpdateScore;
|
|
import net.minecraft.network.play.server.S3DPacketDisplayScoreboard;
|
|
import net.minecraft.network.play.server.S3EPacketTeams;
|
|
import net.minecraft.network.play.server.S3FPacketCustomPayload;
|
|
import net.minecraft.network.play.server.S40PacketDisconnect;
|
|
import net.minecraft.network.play.server.S41PacketServerDifficulty;
|
|
import net.minecraft.network.play.server.S42PacketCombatEvent;
|
|
import net.minecraft.network.play.server.S43PacketCamera;
|
|
import net.minecraft.network.play.server.S44PacketWorldBorder;
|
|
import net.minecraft.network.play.server.S45PacketTitle;
|
|
import net.minecraft.network.play.server.S46PacketSetCompressionLevel;
|
|
import net.minecraft.network.play.server.S47PacketPlayerListHeaderFooter;
|
|
import net.minecraft.network.play.server.S48PacketResourcePackSend;
|
|
import net.minecraft.network.play.server.SPacketSoundEffect;
|
|
import net.minecraft.network.play.server.SPacketUnloadChunk;
|
|
|
|
/**
|
|
* +
|
|
* This portion of EaglercraftX contains deobfuscated Minecraft 1.8 source code.
|
|
*
|
|
* Minecraft 1.8.8 bytecode is (c) 2015 Mojang AB. "Do not distribute!"
|
|
* Mod Coder Pack v9.18 deobfuscation configs are (c) Copyright by the MCP Team
|
|
*
|
|
* EaglercraftX 1.8 patch files (c) 2022-2024 lax1dude, hoosiertransfer,
|
|
* ayunami2000. All Rights Reserved.
|
|
*
|
|
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
* AND
|
|
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
* DISCLAIMED.
|
|
* IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY
|
|
* DIRECT,
|
|
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
* (INCLUDING, BUT
|
|
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
* DATA, OR
|
|
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
|
* LIABILITY,
|
|
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
|
* OTHERWISE)
|
|
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
* POSSIBILITY OF SUCH DAMAGE.
|
|
*
|
|
*/
|
|
public interface INetHandlerPlayClient extends INetHandler {
|
|
/**
|
|
* +
|
|
* Spawns an instance of the objecttype indicated by the packet
|
|
* and sets its position and momentum
|
|
*/
|
|
void handleSpawnObject(S0EPacketSpawnObject var1);
|
|
|
|
/**
|
|
* +
|
|
* Spawns an experience orb and sets its value (amount of XP)
|
|
*/
|
|
void handleSpawnExperienceOrb(S11PacketSpawnExperienceOrb var1);
|
|
|
|
/**
|
|
* +
|
|
* Handles globally visible entities. Used in vanilla for
|
|
* lightning bolts
|
|
*/
|
|
void handleSpawnGlobalEntity(S2CPacketSpawnGlobalEntity var1);
|
|
|
|
/**
|
|
* +
|
|
* Spawns the mob entity at the specified location, with the
|
|
* specified rotation, momentum and type. Updates the entities
|
|
* Datawatchers with the entity metadata specified in the packet
|
|
*/
|
|
void handleSpawnMob(S0FPacketSpawnMob var1);
|
|
|
|
/**
|
|
* +
|
|
* May create a scoreboard objective, remove an objective from
|
|
* the scoreboard or update an objectives' displayname
|
|
*/
|
|
void handleScoreboardObjective(S3BPacketScoreboardObjective var1);
|
|
|
|
/**
|
|
* +
|
|
* Handles the spawning of a painting object
|
|
*/
|
|
void handleSpawnPainting(S10PacketSpawnPainting var1);
|
|
|
|
/**
|
|
* +
|
|
* Handles the creation of a nearby player entity, sets the
|
|
* position and held item
|
|
*/
|
|
void handleSpawnPlayer(S0CPacketSpawnPlayer var1);
|
|
|
|
/**
|
|
* +
|
|
* Renders a specified animation: Waking up a player, a living
|
|
* entity swinging its currently held item, being hurt or
|
|
* receiving a critical hit by normal or magical means
|
|
*/
|
|
void handleAnimation(S0BPacketAnimation var1);
|
|
|
|
/**
|
|
* +
|
|
* Updates the players statistics or achievements
|
|
*/
|
|
void handleStatistics(S37PacketStatistics var1);
|
|
|
|
/**
|
|
* +
|
|
* Updates all registered IWorldAccess instances with
|
|
* destroyBlockInWorldPartially
|
|
*/
|
|
void handleBlockBreakAnim(S25PacketBlockBreakAnim var1);
|
|
|
|
/**
|
|
* +
|
|
* Creates a sign in the specified location if it didn't exist
|
|
* and opens the GUI to edit its text
|
|
*/
|
|
void handleSignEditorOpen(S36PacketSignEditorOpen var1);
|
|
|
|
/**
|
|
* +
|
|
* Updates the NBTTagCompound metadata of instances of the
|
|
* following entitytypes: Mob spawners, command blocks, beacons,
|
|
* skulls, flowerpot
|
|
*/
|
|
void handleUpdateTileEntity(S35PacketUpdateTileEntity var1);
|
|
|
|
/**
|
|
* +
|
|
* Triggers Block.onBlockEventReceived, which is implemented in
|
|
* BlockPistonBase for extension/retraction, BlockNote for
|
|
* setting the instrument (including audiovisual feedback) and
|
|
* in BlockContainer to set the number of players accessing a
|
|
* (Ender)Chest
|
|
*/
|
|
void handleBlockAction(S24PacketBlockAction var1);
|
|
|
|
/**
|
|
* +
|
|
* Updates the block and metadata and generates a blockupdate
|
|
* (and notify the clients)
|
|
*/
|
|
void handleBlockChange(S23PacketBlockChange var1);
|
|
|
|
/**
|
|
* +
|
|
* Prints a chatmessage in the chat GUI
|
|
*/
|
|
void handleChat(S02PacketChat var1);
|
|
|
|
/**
|
|
* +
|
|
* Displays the available command-completion options the server
|
|
* knows of
|
|
*/
|
|
void handleTabComplete(S3APacketTabComplete var1);
|
|
|
|
/**
|
|
* +
|
|
* Received from the servers PlayerManager if between 1 and 64
|
|
* blocks in a chunk are changed. If only one block requires an
|
|
* update, the server sends S23PacketBlockChange and if 64 or
|
|
* more blocks are changed, the server sends S21PacketChunkData
|
|
*/
|
|
void handleMultiBlockChange(S22PacketMultiBlockChange var1);
|
|
|
|
/**
|
|
* +
|
|
* Updates the worlds MapStorage with the specified MapData for
|
|
* the specified map-identifier and invokes a MapItemRenderer
|
|
* for it
|
|
*/
|
|
void handleMaps(S34PacketMaps var1);
|
|
|
|
/**
|
|
* +
|
|
* Verifies that the server and client are synchronized with
|
|
* respect to the inventory/container opened by the player and
|
|
* confirms if it is the case.
|
|
*/
|
|
void handleConfirmTransaction(S32PacketConfirmTransaction var1);
|
|
|
|
/**
|
|
* +
|
|
* Resets the ItemStack held in hand and closes the window that
|
|
* is opened
|
|
*/
|
|
void handleCloseWindow(S2EPacketCloseWindow var1);
|
|
|
|
/**
|
|
* +
|
|
* Handles the placement of a specified ItemStack in a specified
|
|
* container/inventory slot
|
|
*/
|
|
void handleWindowItems(S30PacketWindowItems var1);
|
|
|
|
/**
|
|
* +
|
|
* Displays a GUI by ID. In order starting from id 0: Chest,
|
|
* Workbench, Furnace, Dispenser, Enchanting table, Brewing
|
|
* stand, Villager merchant, Beacon, Anvil, Hopper, Dropper,
|
|
* Horse
|
|
*/
|
|
void handleOpenWindow(S2DPacketOpenWindow var1);
|
|
|
|
/**
|
|
* +
|
|
* Sets the progressbar of the opened window to the specified
|
|
* value
|
|
*/
|
|
void handleWindowProperty(S31PacketWindowProperty var1);
|
|
|
|
/**
|
|
* +
|
|
* Handles pickin up an ItemStack or dropping one in your
|
|
* inventory or an open (non-creative) container
|
|
*/
|
|
void handleSetSlot(S2FPacketSetSlot var1);
|
|
|
|
/**
|
|
* +
|
|
* Handles packets that have room for a channel specification.
|
|
* Vanilla implemented channels are "MC|TrList" to acquire a
|
|
* MerchantRecipeList trades for a villager merchant, "MC|Brand"
|
|
* which sets the server brand? on the player instance and
|
|
* finally "MC|RPack" which the server uses to communicate the
|
|
* identifier of the default server resourcepack for the client
|
|
* to load.
|
|
*/
|
|
void handleCustomPayload(S3FPacketCustomPayload var1);
|
|
|
|
/**
|
|
* +
|
|
* Closes the network channel
|
|
*/
|
|
void handleDisconnect(S40PacketDisconnect var1);
|
|
|
|
/**
|
|
* +
|
|
* Retrieves the player identified by the packet, puts him to
|
|
* sleep if possible (and flags whether all players are asleep)
|
|
*/
|
|
void handleUseBed(S0APacketUseBed var1);
|
|
|
|
/**
|
|
* +
|
|
* Invokes the entities' handleUpdateHealth method which is
|
|
* implemented in LivingBase (hurt/death), MinecartMobSpawner
|
|
* (spawn delay), FireworkRocket & MinecartTNT (explosion),
|
|
* IronGolem (throwing,...), Witch (spawn particles), Zombie
|
|
* (villager transformation), Animal (breeding mode particles),
|
|
* Horse (breeding/smoke particles), Sheep (...), Tameable
|
|
* (...), Villager (particles for breeding mode, angry and
|
|
* happy), Wolf (...)
|
|
*/
|
|
void handleEntityStatus(S19PacketEntityStatus var1);
|
|
|
|
void handleEntityAttach(S1BPacketEntityAttach var1);
|
|
|
|
/**
|
|
* +
|
|
* Initiates a new explosion (sound, particles, drop spawn) for
|
|
* the affected blocks indicated by the packet.
|
|
*/
|
|
void handleExplosion(S27PacketExplosion var1);
|
|
|
|
void handleChangeGameState(S2BPacketChangeGameState var1);
|
|
|
|
void handleKeepAlive(S00PacketKeepAlive var1);
|
|
|
|
/**
|
|
* +
|
|
* Updates the specified chunk with the supplied data, marks it
|
|
* for re-rendering and lighting recalculation
|
|
*/
|
|
void handleChunkData(S21PacketChunkData var1);
|
|
|
|
void handleEffect(S28PacketEffect var1);
|
|
|
|
/**
|
|
* +
|
|
* Registers some server properties
|
|
* (gametype,hardcore-mode,terraintype,difficulty,player limit),
|
|
* creates a new WorldClient and sets the player initial
|
|
* dimension
|
|
*/
|
|
void handleJoinGame(S01PacketJoinGame var1);
|
|
|
|
/**
|
|
* +
|
|
* Updates the specified entity's position by the specified
|
|
* relative moment and absolute rotation. Note that subclassing
|
|
* of the packet allows for the specification of a subset of
|
|
* this data (e.g. only rel. position, abs. rotation or both).
|
|
*/
|
|
void handleEntityMovement(S14PacketEntity var1);
|
|
|
|
/**
|
|
* +
|
|
* Handles changes in player positioning and rotation such as
|
|
* when travelling to a new dimension, (re)spawning, mounting
|
|
* horses etc. Seems to immediately reply to the server with the
|
|
* clients post-processing perspective on the player positioning
|
|
*/
|
|
void handlePlayerPosLook(S08PacketPlayerPosLook var1);
|
|
|
|
/**
|
|
* +
|
|
* Spawns a specified number of particles at the specified
|
|
* location with a randomized displacement according to
|
|
* specified bounds
|
|
*/
|
|
void handleParticles(S2APacketParticles var1);
|
|
|
|
void handlePlayerAbilities(S39PacketPlayerAbilities var1);
|
|
|
|
void handlePlayerListItem(S38PacketPlayerListItem var1);
|
|
|
|
/**
|
|
* +
|
|
* Locally eliminates the entities. Invoked by the server when
|
|
* the items are in fact destroyed, or the player is no longer
|
|
* registered as required to monitor them. The latter happens
|
|
* when distance between the player and item increases beyond a
|
|
* certain treshold (typically the viewing distance)
|
|
*/
|
|
void handleDestroyEntities(S13PacketDestroyEntities var1);
|
|
|
|
void handleRemoveEntityEffect(S1EPacketRemoveEntityEffect var1);
|
|
|
|
void handleRespawn(S07PacketRespawn var1);
|
|
|
|
/**
|
|
* +
|
|
* Updates the direction in which the specified entity is
|
|
* looking, normally this head rotation is independent of the
|
|
* rotation of the entity itself
|
|
*/
|
|
void handleEntityHeadLook(S19PacketEntityHeadLook var1);
|
|
|
|
/**
|
|
* +
|
|
* Updates which hotbar slot of the player is currently selected
|
|
*/
|
|
void handleHeldItemChange(S09PacketHeldItemChange var1);
|
|
|
|
/**
|
|
* +
|
|
* Removes or sets the ScoreObjective to be displayed at a
|
|
* particular scoreboard position (list, sidebar, below name)
|
|
*/
|
|
void handleDisplayScoreboard(S3DPacketDisplayScoreboard var1);
|
|
|
|
/**
|
|
* +
|
|
* Invoked when the server registers new proximate objects in
|
|
* your watchlist or when objects in your watchlist have changed
|
|
* -> Registers any changes locally
|
|
*/
|
|
void handleEntityMetadata(S1CPacketEntityMetadata var1);
|
|
|
|
/**
|
|
* +
|
|
* Sets the velocity of the specified entity to the specified
|
|
* value
|
|
*/
|
|
void handleEntityVelocity(S12PacketEntityVelocity var1);
|
|
|
|
void handleEntityEquipment(S04PacketEntityEquipment var1);
|
|
|
|
void handleSetExperience(S1FPacketSetExperience var1);
|
|
|
|
void handleUpdateHealth(S06PacketUpdateHealth var1);
|
|
|
|
/**
|
|
* +
|
|
* Updates a team managed by the scoreboard: Create/Remove the
|
|
* team registration, Register/Remove the
|
|
* player-team-memberships, Set team displayname/prefix/suffix
|
|
* and/or whether friendly fire is enabled
|
|
*/
|
|
void handleTeams(S3EPacketTeams var1);
|
|
|
|
/**
|
|
* +
|
|
* Either updates the score with a specified value or removes
|
|
* the score for an objective
|
|
*/
|
|
void handleUpdateScore(S3CPacketUpdateScore var1);
|
|
|
|
void handleSpawnPosition(S05PacketSpawnPosition var1);
|
|
|
|
void handleTimeUpdate(S03PacketTimeUpdate var1);
|
|
|
|
void handleSoundEffect(S29PacketSoundEffect var1);
|
|
|
|
void handleCollectItem(S0DPacketCollectItem var1);
|
|
|
|
/**
|
|
* +
|
|
* Updates an entity's position and rotation as specified by the
|
|
* packet
|
|
*/
|
|
void handleEntityTeleport(S18PacketEntityTeleport var1);
|
|
|
|
/**
|
|
* +
|
|
* Updates en entity's attributes and their respective
|
|
* modifiers, which are used for speed bonusses (player
|
|
* sprinting, animals fleeing, baby speed), weapon/tool
|
|
* attackDamage, hostiles followRange randomization, zombie
|
|
* maxHealth and knockback resistance as well as reinforcement
|
|
* spawning chance.
|
|
*/
|
|
void handleEntityProperties(S20PacketEntityProperties var1);
|
|
|
|
void handleEntityEffect(S1DPacketEntityEffect var1);
|
|
|
|
void handleCombatEvent(S42PacketCombatEvent var1);
|
|
|
|
void handleServerDifficulty(S41PacketServerDifficulty var1);
|
|
|
|
void handleCamera(S43PacketCamera var1);
|
|
|
|
void handleWorldBorder(S44PacketWorldBorder var1);
|
|
|
|
void handleTitle(S45PacketTitle var1);
|
|
|
|
void handleSetCompressionLevel(S46PacketSetCompressionLevel var1);
|
|
|
|
void handlePlayerListHeaderFooter(S47PacketPlayerListHeaderFooter var1);
|
|
|
|
void handleResourcePack(S48PacketResourcePackSend var1);
|
|
|
|
void handleUnloadChunk(SPacketUnloadChunk var1);
|
|
|
|
void handleSoundEffectNew(SPacketSoundEffect var1);
|
|
} |