Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class InventoryDetectionHandler
- {
- public HashMap<String,InventoryPlayer> inventory_cache = new HashMap<String,InventoryPlayer>();
- @SubscribeEvent
- public void onEntityUpdate(LivingEvent.LivingUpdateEvent event)
- {
- if(event.entityLiving instanceof EntityPlayer){
- EntityPlayer player = (EntityPlayer)event.entityLiving;
- if(inventory_cache.containsKey(player.getCommandSenderName())){
- if(areInventoriesEqual(player.inventory,inventory_cache.get(player.getCommandSenderName()))){
- return;
- }
- System.out.println("Difference has been found");
- inventory_cache.put(player.getCommandSenderName(),player.inventory);
- }else{
- inventory_cache.put(player.getCommandSenderName(),player.inventory);
- System.out.println("Key has not been found");
- }
- }
- }
- @SubscribeEvent
- public void onEntityJoin(EntityJoinWorldEvent event){
- if(event.entity instanceof EntityPlayer){
- EntityPlayer player = (EntityPlayer)event.entity;
- inventory_cache.put(player.getCommandSenderName(),player.inventory);
- }
- }
- //TO DO - SEND PACKET ON START TRACKING
- @SubscribeEvent
- public void onPlayerStartedTracking(PlayerEvent.StartTracking event){
- if(event.entity instanceof EntityPlayer && event.target instanceof EntityPlayer){
- }
- }
- public static boolean areInventoriesEqual(InventoryPlayer a , InventoryPlayer b){
- if(a == null || b == null){
- return false;
- }
- for(int i = 0;i < a.mainInventory.length;i++){
- if(!ItemStack.areItemStacksEqual(a.mainInventory[i],b.mainInventory[i])){
- return false;
- }
- }
- return true;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement