    001package net.minecraft.network.packet;
    002
    003import net.minecraft.entity.player.EntityPlayer;
    004
    005public abstract class NetHandler
    006{
    007    /**
    008     * determine if it is a server handler
    009     */
    010    public abstract boolean isServerHandler();
    011
    012    /**
    013     * Handle Packet51MapChunk (full chunk update of blocks, metadata, light levels, and optionally biome data)
    014     */
    015    public void handleMapChunk(Packet51MapChunk par1Packet51MapChunk) {}
    016
    017    /**
    018     * Default handler called for packets that don't have their own handlers in NetClientHandler; currentlly does
    019     * nothing.
    020     */
    021    public void unexpectedPacket(Packet par1Packet) {}
    022
    023    public void handleErrorMessage(String par1Str, Object[] par2ArrayOfObj) {}
    024
    025    public void handleKickDisconnect(Packet255KickDisconnect par1Packet255KickDisconnect)
    026    {
    027        this.unexpectedPacket(par1Packet255KickDisconnect);
    028    }
    029
    030    public void handleLogin(Packet1Login par1Packet1Login)
    031    {
    032        this.unexpectedPacket(par1Packet1Login);
    033    }
    034
    035    public void handleFlying(Packet10Flying par1Packet10Flying)
    036    {
    037        this.unexpectedPacket(par1Packet10Flying);
    038    }
    039
    040    public void handleMultiBlockChange(Packet52MultiBlockChange par1Packet52MultiBlockChange)
    041    {
    042        this.unexpectedPacket(par1Packet52MultiBlockChange);
    043    }
    044
    045    public void handleBlockDig(Packet14BlockDig par1Packet14BlockDig)
    046    {
    047        this.unexpectedPacket(par1Packet14BlockDig);
    048    }
    049
    050    public void handleBlockChange(Packet53BlockChange par1Packet53BlockChange)
    051    {
    052        this.unexpectedPacket(par1Packet53BlockChange);
    053    }
    054
    055    public void handleNamedEntitySpawn(Packet20NamedEntitySpawn par1Packet20NamedEntitySpawn)
    056    {
    057        this.unexpectedPacket(par1Packet20NamedEntitySpawn);
    058    }
    059
    060    public void handleEntity(Packet30Entity par1Packet30Entity)
    061    {
    062        this.unexpectedPacket(par1Packet30Entity);
    063    }
    064
    065    public void handleEntityTeleport(Packet34EntityTeleport par1Packet34EntityTeleport)
    066    {
    067        this.unexpectedPacket(par1Packet34EntityTeleport);
    068    }
    069
    070    public void handlePlace(Packet15Place par1Packet15Place)
    071    {
    072        this.unexpectedPacket(par1Packet15Place);
    073    }
    074
    075    public void handleBlockItemSwitch(Packet16BlockItemSwitch par1Packet16BlockItemSwitch)
    076    {
    077        this.unexpectedPacket(par1Packet16BlockItemSwitch);
    078    }
    079
    080    public void handleDestroyEntity(Packet29DestroyEntity par1Packet29DestroyEntity)
    081    {
    082        this.unexpectedPacket(par1Packet29DestroyEntity);
    083    }
    084
    085    public void handleCollect(Packet22Collect par1Packet22Collect)
    086    {
    087        this.unexpectedPacket(par1Packet22Collect);
    088    }
    089
    090    public void handleChat(Packet3Chat par1Packet3Chat)
    091    {
    092        this.unexpectedPacket(par1Packet3Chat);
    093    }
    094
    095    public void handleVehicleSpawn(Packet23VehicleSpawn par1Packet23VehicleSpawn)
    096    {
    097        this.unexpectedPacket(par1Packet23VehicleSpawn);
    098    }
    099
    100    public void handleAnimation(Packet18Animation par1Packet18Animation)
    101    {
    102        this.unexpectedPacket(par1Packet18Animation);
    103    }
    104
    105    /**
    106     * runs registerPacket on the given Packet19EntityAction
    107     */
    108    public void handleEntityAction(Packet19EntityAction par1Packet19EntityAction)
    109    {
    110        this.unexpectedPacket(par1Packet19EntityAction);
    111    }
    112
    113    public void handleClientProtocol(Packet2ClientProtocol par1Packet2ClientProtocol)
    114    {
    115        this.unexpectedPacket(par1Packet2ClientProtocol);
    116    }
    117
    118    public void handleServerAuthData(Packet253ServerAuthData par1Packet253ServerAuthData)
    119    {
    120        this.unexpectedPacket(par1Packet253ServerAuthData);
    121    }
    122
    123    public void handleSharedKey(Packet252SharedKey par1Packet252SharedKey)
    124    {
    125        this.unexpectedPacket(par1Packet252SharedKey);
    126    }
    127
    128    public void handleMobSpawn(Packet24MobSpawn par1Packet24MobSpawn)
    129    {
    130        this.unexpectedPacket(par1Packet24MobSpawn);
    131    }
    132
    133    public void handleUpdateTime(Packet4UpdateTime par1Packet4UpdateTime)
    134    {
    135        this.unexpectedPacket(par1Packet4UpdateTime);
    136    }
    137
    138    public void handleSpawnPosition(Packet6SpawnPosition par1Packet6SpawnPosition)
    139    {
    140        this.unexpectedPacket(par1Packet6SpawnPosition);
    141    }
    142
    143    /**
    144     * Packet handler
    145     */
    146    public void handleEntityVelocity(Packet28EntityVelocity par1Packet28EntityVelocity)
    147    {
    148        this.unexpectedPacket(par1Packet28EntityVelocity);
    149    }
    150
    151    /**
    152     * Packet handler
    153     */
    154    public void handleEntityMetadata(Packet40EntityMetadata par1Packet40EntityMetadata)
    155    {
    156        this.unexpectedPacket(par1Packet40EntityMetadata);
    157    }
    158
    159    /**
    160     * Packet handler
    161     */
    162    public void handleAttachEntity(Packet39AttachEntity par1Packet39AttachEntity)
    163    {
    164        this.unexpectedPacket(par1Packet39AttachEntity);
    165    }
    166
    167    public void handleUseEntity(Packet7UseEntity par1Packet7UseEntity)
    168    {
    169        this.unexpectedPacket(par1Packet7UseEntity);
    170    }
    171
    172    /**
    173     * Packet handler
    174     */
    175    public void handleEntityStatus(Packet38EntityStatus par1Packet38EntityStatus)
    176    {
    177        this.unexpectedPacket(par1Packet38EntityStatus);
    178    }
    179
    180    /**
    181     * Recieves player health from the server and then proceeds to set it locally on the client.
    182     */
    183    public void handleUpdateHealth(Packet8UpdateHealth par1Packet8UpdateHealth)
    184    {
    185        this.unexpectedPacket(par1Packet8UpdateHealth);
    186    }
    187
    188    /**
    189     * respawns the player
    190     */
    191    public void handleRespawn(Packet9Respawn par1Packet9Respawn)
    192    {
    193        this.unexpectedPacket(par1Packet9Respawn);
    194    }
    195
    196    public void handleExplosion(Packet60Explosion par1Packet60Explosion)
    197    {
    198        this.unexpectedPacket(par1Packet60Explosion);
    199    }
    200
    201    public void handleOpenWindow(Packet100OpenWindow par1Packet100OpenWindow)
    202    {
    203        this.unexpectedPacket(par1Packet100OpenWindow);
    204    }
    205
    206    public void handleCloseWindow(Packet101CloseWindow par1Packet101CloseWindow)
    207    {
    208        this.unexpectedPacket(par1Packet101CloseWindow);
    209    }
    210
    211    public void handleWindowClick(Packet102WindowClick par1Packet102WindowClick)
    212    {
    213        this.unexpectedPacket(par1Packet102WindowClick);
    214    }
    215
    216    public void handleSetSlot(Packet103SetSlot par1Packet103SetSlot)
    217    {
    218        this.unexpectedPacket(par1Packet103SetSlot);
    219    }
    220
    221    public void handleWindowItems(Packet104WindowItems par1Packet104WindowItems)
    222    {
    223        this.unexpectedPacket(par1Packet104WindowItems);
    224    }
    225
    226    /**
    227     * Updates Client side signs
    228     */
    229    public void handleUpdateSign(Packet130UpdateSign par1Packet130UpdateSign)
    230    {
    231        this.unexpectedPacket(par1Packet130UpdateSign);
    232    }
    233
    234    public void handleUpdateProgressbar(Packet105UpdateProgressbar par1Packet105UpdateProgressbar)
    235    {
    236        this.unexpectedPacket(par1Packet105UpdateProgressbar);
    237    }
    238
    239    public void handlePlayerInventory(Packet5PlayerInventory par1Packet5PlayerInventory)
    240    {
    241        this.unexpectedPacket(par1Packet5PlayerInventory);
    242    }
    243
    244    public void handleTransaction(Packet106Transaction par1Packet106Transaction)
    245    {
    246        this.unexpectedPacket(par1Packet106Transaction);
    247    }
    248
    249    /**
    250     * Packet handler
    251     */
    252    public void handleEntityPainting(Packet25EntityPainting par1Packet25EntityPainting)
    253    {
    254        this.unexpectedPacket(par1Packet25EntityPainting);
    255    }
    256
    257    public void handleBlockEvent(Packet54PlayNoteBlock par1Packet54PlayNoteBlock)
    258    {
    259        this.unexpectedPacket(par1Packet54PlayNoteBlock);
    260    }
    261
    262    /**
    263     * Increment player statistics
    264     */
    265    public void handleStatistic(Packet200Statistic par1Packet200Statistic)
    266    {
    267        this.unexpectedPacket(par1Packet200Statistic);
    268    }
    269
    270    public void handleSleep(Packet17Sleep par1Packet17Sleep)
    271    {
    272        this.unexpectedPacket(par1Packet17Sleep);
    273    }
    274
    275    public void handleGameEvent(Packet70GameEvent par1Packet70GameEvent)
    276    {
    277        this.unexpectedPacket(par1Packet70GameEvent);
    278    }
    279
    280    /**
    281     * Handles weather packet
    282     */
    283    public void handleWeather(Packet71Weather par1Packet71Weather)
    284    {
    285        this.unexpectedPacket(par1Packet71Weather);
    286    }
    287
    288    /**
    289     * Contains logic for handling packets containing arbitrary unique item data. Currently this is only for maps.
    290     */
    291    public void handleMapData(Packet131MapData par1Packet131MapData)
    292    {
    293        this.unexpectedPacket(par1Packet131MapData);
    294    }
    295
    296    public void handleDoorChange(Packet61DoorChange par1Packet61DoorChange)
    297    {
    298        this.unexpectedPacket(par1Packet61DoorChange);
    299    }
    300
    301    /**
    302     * Handle a server ping packet.
    303     */
    304    public void handleServerPing(Packet254ServerPing par1Packet254ServerPing)
    305    {
    306        this.unexpectedPacket(par1Packet254ServerPing);
    307    }
    308
    309    /**
    310     * Handle an entity effect packet.
    311     */
    312    public void handleEntityEffect(Packet41EntityEffect par1Packet41EntityEffect)
    313    {
    314        this.unexpectedPacket(par1Packet41EntityEffect);
    315    }
    316
    317    /**
    318     * Handle a remove entity effect packet.
    319     */
    320    public void handleRemoveEntityEffect(Packet42RemoveEntityEffect par1Packet42RemoveEntityEffect)
    321    {
    322        this.unexpectedPacket(par1Packet42RemoveEntityEffect);
    323    }
    324
    325    /**
    326     * Handle a player information packet.
    327     */
    328    public void handlePlayerInfo(Packet201PlayerInfo par1Packet201PlayerInfo)
    329    {
    330        this.unexpectedPacket(par1Packet201PlayerInfo);
    331    }
    332
    333    /**
    334     * Handle a keep alive packet.
    335     */
    336    public void handleKeepAlive(Packet0KeepAlive par1Packet0KeepAlive)
    337    {
    338        this.unexpectedPacket(par1Packet0KeepAlive);
    339    }
    340
    341    /**
    342     * Handle an experience packet.
    343     */
    344    public void handleExperience(Packet43Experience par1Packet43Experience)
    345    {
    346        this.unexpectedPacket(par1Packet43Experience);
    347    }
    348
    349    /**
    350     * Handle a creative slot packet.
    351     */
    352    public void handleCreativeSetSlot(Packet107CreativeSetSlot par1Packet107CreativeSetSlot)
    353    {
    354        this.unexpectedPacket(par1Packet107CreativeSetSlot);
    355    }
    356
    357    /**
    358     * Handle a entity experience orb packet.
    359     */
    360    public void handleEntityExpOrb(Packet26EntityExpOrb par1Packet26EntityExpOrb)
    361    {
    362        this.unexpectedPacket(par1Packet26EntityExpOrb);
    363    }
    364
    365    public void handleEnchantItem(Packet108EnchantItem par1Packet108EnchantItem) {}
    366
    367    public void handleCustomPayload(Packet250CustomPayload par1Packet250CustomPayload) {}
    368
    369    public void handleEntityHeadRotation(Packet35EntityHeadRotation par1Packet35EntityHeadRotation)
    370    {
    371        this.unexpectedPacket(par1Packet35EntityHeadRotation);
    372    }
    373
    374    public void handleTileEntityData(Packet132TileEntityData par1Packet132TileEntityData)
    375    {
    376        this.unexpectedPacket(par1Packet132TileEntityData);
    377    }
    378
    379    /**
    380     * Handle a player abilities packet.
    381     */
    382    public void handlePlayerAbilities(Packet202PlayerAbilities par1Packet202PlayerAbilities)
    383    {
    384        this.unexpectedPacket(par1Packet202PlayerAbilities);
    385    }
    386
    387    public void handleAutoComplete(Packet203AutoComplete par1Packet203AutoComplete)
    388    {
    389        this.unexpectedPacket(par1Packet203AutoComplete);
    390    }
    391
    392    public void handleClientInfo(Packet204ClientInfo par1Packet204ClientInfo)
    393    {
    394        this.unexpectedPacket(par1Packet204ClientInfo);
    395    }
    396
    397    public void handleLevelSound(Packet62LevelSound par1Packet62LevelSound)
    398    {
    399        this.unexpectedPacket(par1Packet62LevelSound);
    400    }
    401
    402    public void handleBlockDestroy(Packet55BlockDestroy par1Packet55BlockDestroy)
    403    {
    404        this.unexpectedPacket(par1Packet55BlockDestroy);
    405    }
    406
    407    public void handleClientCommand(Packet205ClientCommand par1Packet205ClientCommand) {}
    408
    409    public void handleMapChunks(Packet56MapChunks par1Packet56MapChunks)
    410    {
    411        this.unexpectedPacket(par1Packet56MapChunks);
    412    }
    413
    414    /**
    415     * If this returns false, all packets will be queued for the main thread to handle, even if they would otherwise be
    416     * processed asynchronously. Used to avoid processing packets on the client before the world has been downloaded
    417     * (which happens on the main thread)
    418     */
    419    public boolean canProcessPacketsAsync()
    420    {
    421        return false;
    422    }
    423
    424    public abstract void handleVanilla250Packet(Packet250CustomPayload payload);
    425
    426    public abstract EntityPlayer getPlayer();
    427}