mirror of
https://github.com/KAMKEEL/CustomNPC-Plus.git
synced 2026-11-12 17:47:32 +00:00
Fix some Categorical Assign Packets
This commit is contained in:
1 parent
2e21b36796
commit
b10dad8bcc
4 files changed
+26
-3
No files matched your search
@@ -7,6 +7,7 @@ import kamkeel.npcs.network.PacketHandler;
|
||||
import kamkeel.npcs.network.PacketUtil;
|
||||
import kamkeel.npcs.network.enums.EnumItemPacketType;
|
||||
import kamkeel.npcs.network.enums.EnumRequestPacket;
|
||||
import kamkeel.npcs.network.packets.data.large.GuiDataPacket;
|
||||
import kamkeel.npcs.util.ByteBufUtils;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.entity.player.EntityPlayerMP;
|
||||
@@ -72,5 +73,6 @@ public class EffectSavePacket extends AbstractPacket {
|
||||
}
|
||||
|
||||
NoppesUtilServer.sendCustomEffectDataAll((EntityPlayerMP) player);
|
||||
GuiDataPacket.sendGuiData((EntityPlayerMP) player, effect.writeToNBT(false));
|
||||
}
|
||||
}
|
||||
@@ -9,6 +9,7 @@ import kamkeel.npcs.network.PacketHandler;
|
||||
import kamkeel.npcs.network.PacketUtil;
|
||||
import kamkeel.npcs.network.enums.EnumItemPacketType;
|
||||
import kamkeel.npcs.network.enums.EnumRequestPacket;
|
||||
import kamkeel.npcs.network.packets.data.large.GuiDataPacket;
|
||||
import kamkeel.npcs.util.ByteBufUtils;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.entity.player.EntityPlayerMP;
|
||||
@@ -73,5 +74,6 @@ public final class LinkedItemSavePacket extends AbstractPacket {
|
||||
}
|
||||
|
||||
NoppesUtilServer.sendLinkedItemDataAll((EntityPlayerMP) player);
|
||||
GuiDataPacket.sendGuiData((EntityPlayerMP) player, linkedItem.writeToNBT(false));
|
||||
}
|
||||
}
|
||||
@@ -304,6 +304,15 @@ public class GuiAbilityDirectory extends GuiDirectoryCategorized
|
||||
// Not used — we override executeMoveItems for name-based moves
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onMoveNewItem(int catId) {
|
||||
String name = prevItemName;
|
||||
if (name != null && !name.isEmpty()) {
|
||||
PacketClient.sendClient(new AbilityCategoryMovePacket(getCategoryType(), name, catId));
|
||||
if (selectedCatId >= 0) requestItemsInCategory(selectedCatId);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected GuiScreen getWindowedVariant() {
|
||||
return new GuiNpcManageAbilities(originalNpc, false);
|
||||
|
||||
@@ -145,6 +145,12 @@ public abstract class GuiDirectoryCategorized extends GuiDirectory
|
||||
protected void drawItemDetails(int x, int y, int w) {}
|
||||
protected void saveCurrentItem() {}
|
||||
|
||||
/**
|
||||
* Hook for name-based items (e.g. abilities) that don't use numeric IDs.
|
||||
* Called when a new item needs to be moved to a category but getSelectedItemId() returns -1.
|
||||
*/
|
||||
protected void onMoveNewItem(int catId) {}
|
||||
|
||||
protected void setPrevItemName(String name) {
|
||||
this.prevItemName = name;
|
||||
}
|
||||
@@ -728,9 +734,13 @@ public abstract class GuiDirectoryCategorized extends GuiDirectory
|
||||
return;
|
||||
}
|
||||
onItemReceived(compound);
|
||||
if (pendingNewItemCatId > 0 && hasSelectedItem() && getSelectedItemId() >= 0) {
|
||||
sendMovePacket(getSelectedItemId(), pendingNewItemCatId);
|
||||
if (selectedCatId >= 0) requestItemsInCategory(selectedCatId);
|
||||
if (pendingNewItemCatId > 0 && hasSelectedItem()) {
|
||||
if (getSelectedItemId() >= 0) {
|
||||
sendMovePacket(getSelectedItemId(), pendingNewItemCatId);
|
||||
if (selectedCatId >= 0) requestItemsInCategory(selectedCatId);
|
||||
} else {
|
||||
onMoveNewItem(pendingNewItemCatId);
|
||||
}
|
||||
}
|
||||
pendingNewItemCatId = -1;
|
||||
initGui();
|
||||
|
||||
Reference in new issue
Block a user