• Unfortunately, we have experienced significant hard drive damage that requires urgent maintenance and rebuilding. The forum will be a state of read only until we install our new drives and rebuild all the configurations needed. Please follow our Facebook page for updates, we will be back up shortly! (The forum could go offline at any given time due to the nature of the failed drives whilst awaiting the upgrades.) When you see an Incapsula error, you know we are in the process of migration.

AzureSharp 2.1.0.4 Bugfixes and and some added features

Junior Spellweaver
Joined
Dec 28, 2011
Messages
185
Reaction score
59
Please provide the fixes you've done instead of releasing the whole source as people (like others have said) have an already edited version of this emulator.
Or provide the location of each fix so we can grab them.
 
Newbie Spellweaver
Joined
Dec 27, 2015
Messages
10
Reaction score
1
Works, However when I try to talk no bubbles show up. My avatars mouth moves but nothing else.
 
Newbie Spellweaver
Joined
Jun 24, 2012
Messages
71
Reaction score
14
Run the query below to set every can_walk to be 1. Make sure to run the query in the main thread first.

Run This:
Code:
 [COLOR=#474B51]UPDATE `catalog_furnis` SET can_walk = '1'; 
[/COLOR]

Then you are saying are furnitures are walkable.

On-Topic: Good Release man, some fixes I already had them, others I couldn't see like the one with the friend request, I had it working:eek:

Thanks for the SSO Ticket problem FIX<3 :D
 
Newbie Spellweaver
Joined
Jun 28, 2013
Messages
44
Reaction score
2
I've changed the emulator so that you don't need that sql but it is in the furnidata_xml.xml. do you need them?!
 
Newbie Spellweaver
Joined
Aug 22, 2015
Messages
71
Reaction score
9
i mean its a pain in the butt if we have to re-do the walkable theres like 8k furnitures
 
Newbie Spellweaver
Joined
Jun 28, 2013
Messages
44
Reaction score
2
I've you don't change it to the can_walk change ItemManager.cs
with these:
#region

using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Globalization;
using System.Linq;
using AzureSharp.Configuration;
using AzureSharp.Database.Queries;
using AzureSharp.HabboHotel.Catalogs;
using log4net;


#endregion


namespace AzureSharp.HabboHotel.Items
{
/// <summary>
/// Class ItemManager.
/// </summary>
internal class ItemManager
{
/// <summary>
/// The Logger.
/// </summary>
private static readonly ILog Logger = LogManager.GetLogger(typeof(ItemManager));


/// <summary>
/// The items
/// </summary>
private Hashtable _items;


/// <summary>
/// The photo identifier
/// </summary>
internal uint PhotoId;


/// <summary>
/// Initializes a new instance of the <see cref="ItemManager"/> class.
/// </summary>
internal ItemManager()
{
_items = new Hashtable();
}


public int CountItems()
{
return _items.Count;
}


/// <summary>
/// Loads the items.
/// </summary>
/// <param name="dbClient">The database client.</param>
internal void LoadItems(Query dbClient)
{
_items = new Hashtable();
_items.Clear();


GiftWrappers.Clear();


dbClient.SetQuery("SELECT * FROM catalog_furnis");
var table = dbClient.GetTable();
if (table == null) return;
List<double> heights = null;


foreach (DataRow dataRow in table.Rows)
{
try
{
var id = Convert.ToUInt32(dataRow["id"]);
var type = Convert.ToChar(dataRow["type"]);
var name = Convert.ToString(dataRow["item_name"]);
var flatId = Convert.ToInt32(dataRow["flat_id"]);
var stackHeightStr = dataRow["stack_height"].ToString();
double stackHeight;
uint modes;
uint.TryParse(dataRow["interaction_modes_count"].ToString(), out modes);
var vendingIds = (string)dataRow["vending_ids"];
var sub = Utility.EnumToBool(dataRow["subscriber"].ToString());
var effect = (int)dataRow["effectid"];
var stackable = Convert.ToInt32(dataRow["can_stack"]) == 1;
var allowRecycle = Convert.ToInt32(dataRow["allow_recycle"]) == 1;
var allowTrade = Convert.ToInt32(dataRow["allow_trade"]) == 1;
var allowMarketplaceSell = Convert.ToInt32(dataRow["allow_marketplace_sell"]) == 1;
var allowGift = Convert.ToInt32(dataRow["allow_gift"]) == 1;
var allowInventoryStack = Convert.ToInt32(dataRow["allow_inventory_stack"]) == 1;
var typeFromString = InteractionTypes.GetTypeFromString((string)dataRow["interaction_type"]);


var sprite = 0;


ushort x = ushort.MinValue, y = ushort.MinValue;
var publicName = Convert.ToString(dataRow["item_name"]);
bool canWalk = false, canSit = false, stackMultiple = false;


if (name.StartsWith("external_image_wallitem_poster")) PhotoId = id;
// Special Types of Furnis
if (name == "landscape" || name == "floor" || name == "wallpaper")
{
sprite = FurniDataParser.WallItems[name].Id;
x = 1;
y = 1;
}
else if (type == 's' && FurniDataParser.FloorItems.ContainsKey(name))
{
sprite = FurniDataParser.FloorItems[name].Id;
publicName = FurniDataParser.FloorItems[name].Name;
x = FurniDataParser.FloorItems[name].X;
y = FurniDataParser.FloorItems[name].Y;
canWalk = FurniDataParser.FloorItems[name].CanWalk;
canSit = FurniDataParser.FloorItems[name].CanSit;
}
else if (type == 'i' && FurniDataParser.WallItems.ContainsKey(name))
{
sprite = FurniDataParser.WallItems[name].Id;
publicName = FurniDataParser.WallItems[name].Name;
}
else if (name.StartsWith("a0 pet", StringComparison.InvariantCulture))
{
x = 1;
y = 1;
publicName = name;
}
else if (type != 'e' && type != 'h' && type != 'r' && type != 'b') continue;


if (name.StartsWith("present_gen")) GiftWrappers.AddOld(sprite);
else if (name.StartsWith("present_wrap*")) GiftWrappers.Add(sprite);


// Stack Height Values
if (stackHeightStr.Contains(';'))
{
var heightsStr = stackHeightStr.Split(';');
heights = heightsStr.Select(heightStr => double.Parse(heightStr, CultureInfo.InvariantCulture)).ToList();
stackHeight = heights[0];
stackMultiple = true;
}
else
{
stackHeight = double.Parse(stackHeightStr, CultureInfo.InvariantCulture);
}


// If Can Walk
if (InteractionTypes.AreFamiliar(GlobalInteractions.Gate, typeFromString) || (typeFromString == Interaction.BanzaiPyramid) || name.StartsWith("hole")) canWalk = false;


// Add Item
var value = new Item(id, sprite, publicName, name, type, x, y, stackHeight, stackable, canWalk, canSit, allowRecycle, allowTrade, allowMarketplaceSell, allowGift, allowInventoryStack, typeFromString, modes, vendingIds, sub, effect, stackMultiple, heights == null ? null : heights.ToArray(), flatId);


_items.Add(id, value);
}
catch (Exception ex)
{
Logger.Warn($"Could not load item #{Convert.ToUInt32(dataRow[0])}, please verify the data is okay.", ex);
}
}
}


internal Item GetItem(uint id)
{
return (Item)_items[id];
}


internal bool GetItem(string itemName, out Item item)
{
foreach (DictionaryEntry entry in _items)
{
item = (Item)entry.Value;
if (item.Name == itemName) return true;
}


item = null;


return false;
}


internal Item GetItemByName(string name)
{
foreach (DictionaryEntry entry in _items)
{
var item = (Item)entry.Value;
if (item.Name == name) return item;
}


return null;
}


internal Item GetItemBySpriteId(int spriteId)
{
foreach (DictionaryEntry entry in _items)
{
var item = (Item)entry.Value;
if (item.SpriteId == spriteId) return item;
}
return null;
}


/// <summary>
/// Determines whether the specified identifier contains item.
/// </summary>
/// <param name="id">The identifier.</param>
/// <returns><c>true</c> if the specified identifier contains item; otherwise, <c>false</c>.</returns>
internal bool ContainsItem(uint id)
{
return _items.ContainsKey(id);
}
}
}
 
Newbie Spellweaver
Joined
Oct 16, 2010
Messages
71
Reaction score
3
My emulator is already edited and translated, i only need seperate fixes like the sitting bug and stacking with rollers.
Could you please provide those fixes?
 
Newbie Spellweaver
Joined
Jan 17, 2012
Messages
14
Reaction score
12
Most furnis are not walkable. Thats why by default can_walk is 0. You only need to change chairs, rugs and floor items.
 
Experienced Elementalist
Joined
Nov 11, 2015
Messages
238
Reaction score
89
If you don't want to change 6000 furnitures' can_walk by yourself. Let my script do it for you. It will generate UPDATE SQL's for the catalog_items where can_walk should be 1.
http://pastebin.com/wvArLwiz
 
Last edited:
Newbie Spellweaver
Joined
May 28, 2013
Messages
12
Reaction score
2
Can you please post a list of your fixes/additions with the source location so I can implement some of your fixes into my edit. Credits will be added to my hotel :about.
 
Back
Top