MountGamePacketHandler class

Пакет: com.hypixel.hytale.builtin.mounts

Файл: com/hypixel/hytale/builtin/mounts/MountGamePacketHandler.java

implements: SubPacketHandler

Поля (8)

МодификаторыТипИмя
final IPacketHandler packetHandler
PlayerRef var2
Player var2
Ref var3
MountedComponent var3
Store var4
EntityStore var5
World var6

Методы (2)

МодификаторыВозвратСигнатура
public void handlevoid handle(DismountNPC var1)
if if(var3 == null)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.mounts;

class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import com.hypixel.hytale.protocol.MountController;
class="kw">import com.hypixel.hytale.protocol.packets.interaction.DismountNPC;
class="kw">import com.hypixel.hytale.server.core.entity.entities.Player;
class="kw">import com.hypixel.hytale.server.core.io.handlers.IPacketHandler;
class="kw">import com.hypixel.hytale.server.core.io.handlers.SubPacketHandler;
class="kw">import com.hypixel.hytale.server.core.universe.PlayerRef;
class="kw">import com.hypixel.hytale.server.core.universe.world.World;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;

class="kw">public class MountGamePacketHandler class="kw">implements SubPacketHandler {
   class="kw">private class="kw">final IPacketHandler packetHandler;

   class="kw">public MountGamePacketHandler(IPacketHandler var1) {
      this.packetHandler = var1;
   }

   @Override
   class="kw">public void registerHandlers() {
      this.packetHandler.registerHandler(294, var1 -> this.handle((DismountNPC)var1));
   }

   class="kw">public void handle(DismountNPC var1) {
      PlayerRef var2 = this.packetHandler.getPlayerRef();
      Ref var3 = var2.getReference();
      if (var3 != null && var3.isValid()) {
         Store var4 = var3.getStore();
         EntityStore var5 = var4.getExternalData();
         World var6 = var5.getWorld();
         var6.execute(() -> {
            Player var2 = var4.getComponent(var3, Player.getComponentType());
            assert var2 != null;
            MountedComponent var3 = var4.getComponent(var3, MountedComponent.getComponentType());
            if (var3 == null) {
               MountPlugin.checkDismountNpc(var4, var3, var2);
            } else {
               if (var3.getControllerType() == MountController.BlockMount) {
                  var4.tryRemoveComponent(var3, MountedComponent.getComponentType());
               }
            }
         });
      }
   }
}