private void TriggerItem() { if (RoomUser.CalculateRights(Client.GetHabbo().RoomId, Client.GetHabbo().ID)) { int furniID = Request.PopWiredInt32(); FloorItems mFloor = AleedaEnvironment.GetCache().GetFloorItems().getItem(furniID); WallItems mWall = AleedaEnvironment.GetCache().GetWallItems().getItem(furniID); if (mFloor == null) { Response.Initialize(85); // "AU" Response.AppendString(mWall.ID + ""); Response.AppendInt32(mWall.SpriteID); Response.AppendString(mWall.Wall); if (mWall.Trigger == 0) { Response.Append(1); Update.UpdateFurniTrigger(furniID, 1); //Set the trigger AleedaEnvironment.GetCache().GetWallItems().getItem(mWall.ID).Trigger = 1; } else { Response.Append(0); Update.UpdateFurniTrigger(furniID, 0); //Set the trigger AleedaEnvironment.GetCache().GetWallItems().getItem(mWall.ID).Trigger = 0; } SendRoom(); } else if (mWall == null) { Response.Initialize(88); // "AX" Response.Append(furniID); Response.AppendChar(2); if (mFloor.Trigger == 0) { Response.Append(1); Update.UpdateFurniTrigger(furniID, 1); //Set the trigger AleedaEnvironment.GetCache().GetFloorItems().getItem(mFloor.ID).Trigger = 1; } else { Response.Append(0); Update.UpdateFurniTrigger(furniID, 0); //Set the trigger AleedaEnvironment.GetCache().GetFloorItems().getItem(mFloor.ID).Trigger = 0; } Response.AppendChar(2); SendRoom(); } } }
private void InsertItems(IEnumerable <WallEntry> result) { foreach (var wallEntry in result) { WallItems.Add(wallEntry); } RaisePropertyChanged(() => WallItems); }
private void ScrollToRecentSelectedItem() { var index = _storageProvider.GetLastSelectedIndex(); if (WallItems.Count > index && index != -1) { Messenger.Default.Send <object>(WallItems.ElementAt(index)); } SelectedIndex = index; }
// TODO Use visitor pattern to achieve this? public virtual void Add(Item item) { if (item is FloorItem) { FloorItems.Add((FloorItem)item); } else if (item is WallItem) { WallItems.Add((WallItem)item); } else if (item is PetItem) { Pets.Add((PetItem)item); } }
private void PickUpItem() { //Remove garbage Request.PopWiredInt32(); int furniID = Request.PopWiredInt32(); FloorItems mFloor = GetFloorItems().getItem(furniID); WallItems mWall = GetWallItems().getItem(furniID); uint ServerMessageID = 0; string FurnitureType = ""; if (mFloor == null) { ServerMessageID = 84; FurnitureType = "i"; //Add item to inventory. Client.GetHabbo().AddItem(furniID, mWall.SpriteID, FurnitureType); //Get rid of item from cache. AleedaEnvironment.GetCache().GetWallItems().deleteItem(furniID); } else if (mWall == null) { ServerMessageID = 94; FurnitureType = "s"; //Add item to inventory. Client.GetHabbo().AddItem(furniID, mFloor.SpriteID, FurnitureType); //Get rid of item from cache. AleedaEnvironment.GetCache().GetFloorItems().deleteItem(furniID); } if (Client.GetHabbo().ItemUsingID != 0) { Client.GetHabbo().IsOnItem = false; MoveUser(true); } Response.Initialize(ServerMessageID); Response.AppendRawInt32(furniID); Response.AppendString(""); Response.AppendBoolean(false); SendRoom(); }