private void SetUpChair(Creature creature, long chairItemEntityId)
{
if (chairItemEntityId == 0)
return;
// Check item
var item = creature.Inventory.GetItem(chairItemEntityId);
if (item == null || item.Data.Type != ItemType.Misc)
return;
// Get chair data
var chairData = AuraData.ChairDb.Find(item.Info.Id);
if (chairData == null)
return;
var pos = creature.GetPosition();
// Effect
if (chairData.Effect != 0)
Send.Effect(creature, chairData.Effect, true);
// Chair prop
var sittingProp = new Prop((!creature.IsGiant ? chairData.PropId : chairData.GiantPropId), creature.RegionId, pos.X, pos.Y, MabiMath.ByteToRadian(creature.Direction));
sittingProp.Info.Color1 = item.Info.Color1;
sittingProp.Info.Color2 = item.Info.Color2;
sittingProp.Info.Color3 = item.Info.Color3;
sittingProp.State = "stand";
creature.Region.AddProp(sittingProp);
// Update chair
sittingProp.Xml.SetAttributeValue("OWNER", creature.EntityId);
this.SitOnProp(creature, sittingProp, chairData);
}