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());
}
}
});
}
}
}