Advertisement
Guest User

Inventory/ItemsComponent.java

a guest
Sep 14th, 2014
5,825
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.14 KB | None | 0 0
  1. package com.eu.habbo.habbohotel.users.inventory;
  2.  
  3. import com.eu.habbo.Emulator;
  4. import com.eu.habbo.habbohotel.users.Habbo;
  5. import com.eu.habbo.habbohotel.users.HabboItem;
  6. import gnu.trove.map.hash.THashMap;
  7. import gnu.trove.set.hash.THashSet;
  8.  
  9. import java.sql.PreparedStatement;
  10. import java.sql.ResultSet;
  11. import java.sql.SQLException;
  12. import java.util.Map;
  13.  
  14. /**
  15.  * Created on 28-8-2014 18:45.
  16.  */
  17. public class ItemsComponent {
  18.  
  19.     private THashMap<Integer, HabboItem> items;
  20.  
  21.     public ItemsComponent(Habbo habbo)
  22.     {
  23.         this.items = new THashMap<Integer, HabboItem>();
  24.         this.items.putAll(loadItems(habbo));
  25.     }
  26.  
  27.     public static THashMap<Integer, HabboItem> loadItems(Habbo habbo)
  28.     {
  29.         THashMap<Integer, HabboItem> itemsList = new THashMap<Integer, HabboItem>();
  30.  
  31.         try
  32.         {
  33.             PreparedStatement statement = Emulator.getDatabase().prepare("SELECT * FROM items WHERE room_id = ? AND user_id = ?");
  34.             statement.setInt(1, 0);
  35.             statement.setInt(2, habbo.getHabboInfo().getId());
  36.  
  37.             ResultSet set = statement.executeQuery();
  38.  
  39.             while(set.next())
  40.             {
  41.                 itemsList.put(set.getInt("id"), new HabboItem(set));
  42.             }
  43.         }
  44.         catch(SQLException e)
  45.         {
  46.             Emulator.getLogging().logSQLException(e);
  47.         }
  48.  
  49.         return itemsList;
  50.     }
  51.  
  52.     public void addItem(HabboItem item)
  53.     {
  54.         this.items.put(item.getId(), item);
  55.     }
  56.  
  57.     public void addItems(THashSet<HabboItem> items)
  58.     {
  59.         for(HabboItem item : items)
  60.         {
  61.             this.items.put(item.getId(), item);
  62.         }
  63.     }
  64.  
  65.     public HabboItem getHabboItem(int itemId)
  66.     {
  67.         return this.items.get(itemId);
  68.     }
  69.  
  70.     public THashMap<Integer, HabboItem> getItems()
  71.     {
  72.         return this.items;
  73.     }
  74.  
  75.     public void dispose()
  76.     {
  77.         for(Map.Entry<Integer, HabboItem> item : this.items.entrySet())
  78.         {
  79.             if(item.getValue().needsUpdate())
  80.                 Emulator.getThreading().run(item.getValue());
  81.         }
  82.  
  83.         this.items.clear();
  84.     }
  85. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement