using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data; using DuckEmulator.HabboHotel.Inside.Storage.MySql.Database.Interfaces; namespace DuckEmulator.HabboHotel.Outside.Items { class ItemManager { internal Dictionary Items; internal ItemManager() { LoadFurni(); } internal void LoadFurni() { Items = new Dictionary(); DataTable Data = null; using (IQueryAdapter Adapter = DuckEnvironment.GetAdapter()) { Adapter.setQuery("SELECT * FROM furniture"); Data = Adapter.getTable(); } if (Data == null) return; foreach (DataRow Row in Data.Rows) { Item Item = new Item(Convert.ToUInt32(Row["id"]), Convert.ToString(Row["item_name"]), Convert.ToString(Row["type"]), Convert.ToInt32(Row["width"]), Convert.ToInt32(Row["length"]), Convert.ToDouble(Row["stack_height"]), (Convert.ToInt32(Row["can_stack"]) == 1), (Convert.ToInt32(Row["can_sit"]) == 1), (Convert.ToInt32(Row["is_walkable"]) == 1), Convert.ToUInt32(Row["sprite_id"]), (Convert.ToInt32(Row["allow_recycle"]) == 1), (Convert.ToInt32(Row["allow_trade"]) == 1), (Convert.ToInt32(Row["allow_marketplace_sell"]) == 1), (Convert.ToInt32(Row["allow_gift"]) == 1), (Convert.ToInt32(Row["allow_inventory_stack"]) == 1), Convert.ToString(Row["interaction_type"]), Convert.ToInt32(Row["interaction_modes_count"]), Convert.ToString(Row["vending_ids"]).Split(' ').ToList()); Items.Add(Item.Id, Item); } DuckEnvironment.WriteLine("Loaded " + Items.Count + " furni items.", ConsoleColor.Yellow); } internal Item GetItem(uint Id) { try { return Items[Id]; } catch { return null; } } } }