public void SaveToDatabase(IQueryAdapter dbClient) { WiredUtillity.SaveTriggerItem(dbClient, (int)itemID, "integer", string.Empty, delay.ToString(), false); if (dbClient.dbType == Pici.Storage.Database.DatabaseType.MSSQL) { dbClient.runFastQuery("DELETE FROM trigger_rotation WHERE item_id = " + itemID); dbClient.setQuery("INSERT INTO trigger_rotation(item_id,rotation_status,movement_status) VALUES (@id,@rot_id,@mov_id)"); } else { dbClient.setQuery("REPLACE INTO trigger_rotation SET item_id = @id, rotation_status = @rot_id, movement_status = @mov_id"); } dbClient.addParameter("id", (int)itemID); dbClient.addParameter("rot_id", (int)this.rotation); dbClient.addParameter("mov_id", (int)this.movement); dbClient.runQuery(); lock (items) { dbClient.runFastQuery("DELETE FROM trigger_in_place WHERE original_trigger = '" + this.itemID + "'"); foreach (RoomItem i in items) { WiredUtillity.SaveTrigger(dbClient, (int)itemID, (int)i.Id); } } }
private void WriteFloorItem(Item Item, int UserID, bool HideWired) { WriteInteger(Item.Id); WriteInteger((HideWired && WiredUtillity.TypeIsWired(Item.GetBaseItem().InteractionType) && (Item.GetBaseItem().InteractionType != InteractionType.highscore && Item.GetBaseItem().InteractionType != InteractionType.highscorepoints)) ? 31294061 : Item.GetBaseItem().SpriteId); WriteInteger(Item.GetX); WriteInteger(Item.GetY); WriteInteger(Item.Rotation); WriteString(String.Format("{0:0.00}", TextHandling.GetString(Item.GetZ))); WriteString(String.Empty); if (Item.LimitedNo > 0) { WriteInteger(1); WriteInteger(256); WriteString(Item.ExtraData); WriteInteger(Item.LimitedNo); WriteInteger(Item.LimitedTot); } else { ItemBehaviourUtility.GenerateExtradata(Item, this); } WriteInteger(-1); // to-do: check WriteInteger(1); //(Item.GetBaseItem().Modes > 1) ? 1 : 0 WriteInteger(UserID); }
public ObjectUpdateComposer(Item Item, int UserId, bool HideWired = false) : base(ServerPacketHeader.ObjectUpdateMessageComposer) { WriteInteger(Item.Id); WriteInteger((HideWired && WiredUtillity.TypeIsWired(Item.GetBaseItem().InteractionType) && (Item.GetBaseItem().InteractionType != InteractionType.highscore && Item.GetBaseItem().InteractionType != InteractionType.highscorepoints)) ? 31294061 : Item.GetBaseItem().SpriteId); WriteInteger(Item.GetX); WriteInteger(Item.GetY); WriteInteger(Item.Rotation); WriteString(String.Format("{0:0.00}", TextHandling.GetString(Item.GetZ))); WriteString(String.Empty); if (Item.LimitedNo > 0) { WriteInteger(1); WriteInteger(256); WriteString(Item.ExtraData); WriteInteger(Item.LimitedNo); WriteInteger(Item.LimitedTot); } else { ItemBehaviourUtility.GenerateExtradata(Item, this); } WriteInteger(-1); // to-do: check WriteInteger(1); //(Item.GetBaseItem().Modes > 1) ? 1 : 0 WriteInteger(UserId); }
internal bool RemoveFromMap(RoomItem item) { if (room.GotWired() && WiredUtillity.TypeIsWired(item.GetBaseItem().InteractionType)) { room.GetWiredHandler().RemoveFurniture(item); } return(RemoveFromMap(item, true)); }
public void SaveToDatabase(IQueryAdapter dbClient) { lock (items) { dbClient.runFastQuery("DELETE FROM trigger_in_place WHERE original_trigger = '" + this.item.Id + "'"); foreach (RoomItem i in items) { WiredUtillity.SaveTrigger(dbClient, (int)item.Id, (int)i.Id); } } }
public void SaveToDatabase(IQueryAdapter dbClient) { WiredUtillity.SaveTriggerItem(dbClient, (int)itemID, "integer", string.Empty, delay.ToString(), false); lock (items) { dbClient.runFastQuery("DELETE FROM trigger_in_place WHERE original_trigger = '" + this.itemID + "'"); foreach (RoomItem i in items) { WiredUtillity.SaveTrigger(dbClient, (int)itemID, (int)i.Id); } } }
public bool RemoveFromMap(Item item) { if (this.room.GotWired() && WiredUtillity.TypeIsWired(item.GetBaseItem().InteractionType)) { this.room.GetWiredHandler().RemoveFurniture(item); } this.RemoveSpecialItem(item); bool flag = false; foreach (Point coord in item.GetCoords) { if (this.RemoveCoordinatedItem(item, coord)) { flag = true; } } Dictionary <Point, List <Item> > NoDoublons = new Dictionary <Point, List <Item> >(); foreach (Point Tile in item.GetCoords.ToList()) { Point point = new Point(Tile.X, Tile.Y); if (this.CoordinatedItems.ContainsKey(point)) { List <Item> list = (List <Item>) this.CoordinatedItems[point]; if (!NoDoublons.ContainsKey(Tile)) { NoDoublons.Add(Tile, list); } } this.SetDefaultValue(Tile.X, Tile.Y); } foreach (Point Coord in NoDoublons.Keys.ToList()) { if (!NoDoublons.ContainsKey(Coord)) { continue; } List <Item> SubItems = NoDoublons[Coord]; foreach (Item roomItem in SubItems.ToList()) { this.ConstructMapForItem(roomItem, Coord); } } NoDoublons.Clear(); NoDoublons = null; return(flag); }
public void SaveToDatabase(IQueryAdapter dbClient) { WiredUtillity.SaveTriggerItem(dbClient, (int)item.Id, "integer", string.Empty, delay.ToString(), false); lock (items) { dbClient.runFastQuery("DELETE FROM trigger_in_place WHERE original_trigger = '" + this.item.Id + "'"); foreach (RoomItem i in items) { WiredUtillity.SaveTrigger(dbClient, (int)item.Id, (int)i.Id); } //Logging.WriteLine("save trigger 'updatestate' items: " + items.Count); } }
public void SaveToDatabase(IQueryAdapter dbClient) { string triggerdata = ""; int i = 0; foreach (KeyValuePair <string, int> score in this.item.Scores.OrderByDescending(x => x.Value).Take(20)) { if (i != 0) { triggerdata += ";"; } triggerdata += score.Key + ":" + score.Value; i++; } WiredUtillity.SaveTriggerItem(dbClient, this.item.Id, string.Empty, triggerdata, false, null); }
public void SaveToDatabase(IQueryAdapter dbClient) { string rotationandmove = (int)this.rotation + ";" + (int)this.movement; WiredUtillity.SaveTriggerItem(dbClient, this.itemID, rotationandmove, this.Delay.ToString(), false, this.items); }
public void SaveToDatabase(IQueryAdapter dbClient) { WiredUtillity.SaveTriggerItem(dbClient, this.itemID, string.Empty, string.Empty, false, this.items); }
public void SaveToDatabase(IQueryAdapter dbClient) { WiredUtillity.SaveTriggerItem(dbClient, this.itemID, string.Empty, this.NameBot + '\t' + this.Look, false, null); }
public void Parse(GameClient Session, ClientPacket Packet) { if (Session == null || Session.GetHabbo() == null || !Session.GetHabbo().InRoom) { return; } Room Room = ButterflyEnvironment.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId); if (Room == null || !Room.CheckRights(Session)) { Session.SendPacket(new RoomNotificationComposer("furni_placement_error", "message", "${room.error.cant_set_not_owner}")); return; } if (Room.RoomData.SellPrice > 0) { Session.SendNotification(ButterflyEnvironment.GetLanguageManager().TryGetValue("roomsell.error.7", Session.Langue)); return; } string RawData = Packet.PopString(); string[] Data = RawData.Split(new char[1] { ' ' }); int ItemId = 0; if (!int.TryParse(Data[0], out ItemId)) { return; } if (ItemId <= 0) { return; } Item userItem = Session.GetHabbo().GetInventoryComponent().GetItem(ItemId); if (userItem == null) { return; } if (userItem.GetBaseItem().InteractionType == InteractionType.BADGE_TROC) { if (Session.GetHabbo().GetBadgeComponent().HasBadge(userItem.ExtraData)) { Session.SendNotification("Vous posséder déjà ce badge !"); return; } using (IQueryAdapter queryreactor = ButterflyEnvironment.GetDatabaseManager().GetQueryReactor()) queryreactor.RunQuery("DELETE FROM items WHERE id = " + ItemId); Session.GetHabbo().GetInventoryComponent().RemoveItem(ItemId); Session.GetHabbo().GetBadgeComponent().GiveBadge(userItem.ExtraData, true); Session.SendPacket(new ReceiveBadgeComposer(userItem.ExtraData)); Session.SendNotification("Vous avez reçu le badge: " + userItem.ExtraData + " !"); return; } if (!userItem.IsWallItem) { if (Data.Length < 4) { return; } int X = 0; int Y = 0; int Rotation = 0; if (!int.TryParse(Data[1], out X)) { return; } if (!int.TryParse(Data[2], out Y)) { return; } if (!int.TryParse(Data[3], out Rotation)) { return; } if (Session.GetHabbo().forceRot > -1) { Rotation = Session.GetHabbo().forceRot; } Item roomItem = new Item(userItem.Id, Room.Id, userItem.BaseItem, userItem.ExtraData, userItem.LimitedNo, userItem.LimitedTot, X, Y, 0.0, Rotation, "", Room); if (Room.GetRoomItemHandler().SetFloorItem(Session, roomItem, X, Y, Rotation, true, false, true)) { using (IQueryAdapter queryreactor = ButterflyEnvironment.GetDatabaseManager().GetQueryReactor()) queryreactor.RunQuery("UPDATE items SET room_id = " + Room.Id + ", user_id = " + Room.RoomData.OwnerId + " WHERE id = " + ItemId); Session.GetHabbo().GetInventoryComponent().RemoveItem(ItemId); if (WiredUtillity.TypeIsWired(userItem.GetBaseItem().InteractionType)) { WiredSaver.HandleDefaultSave(userItem.Id, Room, roomItem); } ButterflyEnvironment.GetGame().GetQuestManager().ProgressUserQuest(Session, QuestType.FURNI_PLACE, 0); } else { Session.SendPacket(new RoomNotificationComposer("furni_placement_error", "message", "${room.error.cant_set_item}")); return; } } else if (userItem.IsWallItem) { string[] CorrectedData = new string[Data.Length - 1]; for (int i = 1; i < Data.Length; i++) { CorrectedData[i - 1] = Data[i]; } string WallPos = string.Empty; if (TrySetWallItem(CorrectedData, out WallPos)) { Item roomItem = new Item(userItem.Id, Room.Id, userItem.BaseItem, userItem.ExtraData, userItem.LimitedNo, userItem.LimitedTot, 0, 0, 0.0, 0, WallPos, Room); if (Room.GetRoomItemHandler().SetWallItem(Session, roomItem)) { using (IQueryAdapter queryreactor = ButterflyEnvironment.GetDatabaseManager().GetQueryReactor()) queryreactor.RunQuery("UPDATE items SET room_id = " + Room.Id + ", user_id = " + Room.RoomData.OwnerId + " WHERE id = " + ItemId); Session.GetHabbo().GetInventoryComponent().RemoveItem(ItemId); } } else { Session.SendPacket(new RoomNotificationComposer("furni_placement_error", "message", "${room.error.cant_set_item}")); return; } } }
public void SaveToDatabase(IQueryAdapter dbClient) { WiredUtillity.SaveTriggerItem(dbClient, (int)item.Id, "string", string.Empty, triggerMessage, isOwnerOnly); }
internal void LoadFurniture() { //this.Items.Clear(); this.mFloorItems.Clear(); this.mWallItems.Clear(); DataTable Data; using (IQueryAdapter dbClient = FirewindEnvironment.GetDatabaseManager().getQueryreactor()) { dbClient.setQuery("CALL getroomitems(@roomid)"); dbClient.addParameter("roomid", room.RoomId); Data = dbClient.getTable(); uint itemID; decimal x; decimal y; sbyte n; uint baseID; int dataType; string extradata; WallCoordinate wallCoord; int extra; foreach (DataRow dRow in Data.Rows) { itemID = Convert.ToUInt32(dRow[0]); x = Convert.ToDecimal(dRow[1]); y = Convert.ToDecimal(dRow[2]); n = Convert.ToSByte(dRow[3]); baseID = Convert.ToUInt32(dRow[4]); IRoomItemData data; if (DBNull.Value.Equals(dRow[5])) { data = new StringData(""); extra = 0; } else { dataType = Convert.ToInt32(dRow[5]); extradata = (string)dRow[6]; extra = Convert.ToInt32(dRow[7]); switch (dataType) { case 0: data = new StringData(extradata); break; case 1: data = new MapStuffData(); break; case 2: data = new StringArrayStuffData(); break; case 3: data = new StringIntData(); break; default: data = new StringData(extradata); break; } try { data.Parse(extradata); } catch { Logging.LogException(string.Format("Error in furni data! Item ID: \"{0}\" and data: \"{1}\"", itemID, extradata.Replace(Convert.ToChar(1).ToString(), "[1]"))); dbClient.runFastQuery(string.Format("DELETE FROM items_extradata WHERE item_id = {0}", itemID)); } } if (FirewindEnvironment.GetGame().GetItemManager().GetItem(baseID).Type == 'i') // Is wallitem { wallCoord = new WallCoordinate((double)x, (double)y, n); RoomItem item = new RoomItem(itemID, room.RoomId, baseID, data, extra, wallCoord, room); if (!mWallItems.ContainsKey(itemID)) { mWallItems.Inner.Add(itemID, item); } } else //Is flooritem { int coordX, coordY; TextHandling.Split((double)x, out coordX, out coordY); RoomItem item = new RoomItem(itemID, room.RoomId, baseID, data, extra, coordX, coordY, (double)y, n, room); if (!mFloorItems.ContainsKey(itemID)) { mFloorItems.Inner.Add(itemID, item); } } } foreach (RoomItem Item in mFloorItems.Values) { if (Item.IsRoller) { mGotRollers = true; } else if (Item.GetBaseItem().InteractionType == Firewind.HabboHotel.Items.InteractionType.dimmer) { if (room.MoodlightData == null) { room.MoodlightData = new MoodlightData(Item.Id); } } else if (WiredUtillity.TypeIsWired(Item.GetBaseItem().InteractionType)) { WiredLoader.LoadWiredItem(Item, room, dbClient); room.GetWiredHandler().AddWire(Item, Item.Coordinate, Item.Rot, Item.GetBaseItem().InteractionType); } } } }
public void SaveToDatabase(IQueryAdapter dbClient) { WiredUtillity.SaveTriggerItem(dbClient, this.itemID, this.Delay.ToString(), this.message, false, null); }
public void SaveToDatabase(IQueryAdapter dbClient) { WiredUtillity.SaveTriggerItem(dbClient, (int)item.Id, "integer", string.Empty, scoreLevel.ToString(), false); }
public void SaveToDatabase(IQueryAdapter dbClient) { WiredUtillity.SaveTriggerItem(dbClient, (int)itemID, "integer", scoreToGive.ToString(), maxCountPerGame.ToString(), false); }
internal void LoadFurniture() { //this.Items.Clear(); this.mFloorItems.Clear(); this.mWallItems.Clear(); DataTable Data; using (IQueryAdapter dbClient = PiciEnvironment.GetDatabaseManager().getQueryreactor()) { if (dbClient.dbType == Pici.Storage.Database.DatabaseType.MySQL) { dbClient.setQuery("CALL getroomitems(@roomid)"); dbClient.addParameter("roomid", room.RoomId); } else { dbClient.setQuery("EXECUTE getroomitems " + room.RoomId); } Data = dbClient.getTable(); uint itemID; decimal x; decimal y; sbyte n; uint baseID; string extradata; WallCoordinate wallCoord; foreach (DataRow dRow in Data.Rows) { itemID = Convert.ToUInt32(dRow[0]); x = Convert.ToDecimal(dRow[1]); y = Convert.ToDecimal(dRow[2]); n = Convert.ToSByte(dRow[3]); baseID = Convert.ToUInt32(dRow[4]); if (DBNull.Value.Equals(dRow[5])) { extradata = string.Empty; } else { extradata = (string)dRow[5]; } if (n > 6) // Is wallitem { wallCoord = new WallCoordinate((double)x, (double)y, n); RoomItem item = new RoomItem(itemID, room.RoomId, baseID, extradata, wallCoord, room); if (!mWallItems.ContainsKey(itemID)) { mWallItems.Inner.Add(itemID, item); } } else //Is flooritem { int coordX, coordY; TextHandling.Split((double)x, out coordX, out coordY); RoomItem item = new RoomItem(itemID, room.RoomId, baseID, extradata, coordX, coordY, (double)y, n, room); if (!mFloorItems.ContainsKey(itemID)) { mFloorItems.Inner.Add(itemID, item); } } } foreach (RoomItem Item in mFloorItems.Values) { if (Item.IsRoller) { mGotRollers = true; } else if (Item.GetBaseItem().InteractionType == Pici.HabboHotel.Items.InteractionType.dimmer) { if (room.MoodlightData == null) { room.MoodlightData = new MoodlightData(Item.Id); } } else if (WiredUtillity.TypeIsWired(Item.GetBaseItem().InteractionType)) { WiredLoader.LoadWiredItem(Item, room, dbClient); } if (WiredHandler.TypeIsWire(Item.GetBaseItem().InteractionType)) { room.GetWiredHandler().AddWire(Item, Item.Coordinate, Item.Rot, Item.GetBaseItem().InteractionType); } } } }
public void SaveToDatabase(IQueryAdapter dbClient) { WiredUtillity.SaveTriggerItem(dbClient, this.itemID, string.Empty, this.NomBot + '\t' + this.message, this.IsMurmur, null); }
public void SaveToDatabase(IQueryAdapter dbClient) { WiredUtillity.SaveTriggerItem(dbClient, (int)itemID, "integer", string.Empty, message, false); }
internal WiredLoaderSQL(RoomItem Item, Room Room, IQueryAdapter dbClient) { wiredItems = new List <RoomItem>(5); StringSettings = new string[3] { "", "", "" }; originalPositionList = new Dictionary <uint, OriginalItemLocation>(); dbClient.setQuery("SELECT * FROM items_wired WHERE item_id = " + Item.Id + " LIMIT 1"); DataRow dRow = dbClient.getRow(); if (dRow == null) { return; } if (WiredUtillity.NeedsFurnitures(Item.GetBaseItem().InteractionType)) { string result = (string)dRow["wired_to_item"]; if (result.Contains(";")) { foreach (string itemId in result.Split(';')) { RoomItem targetItem = Room.GetRoomItemHandler().GetItem(Convert.ToUInt32(itemId)); if (targetItem != null && !wiredItems.Contains(targetItem)) { wiredItems.Add(targetItem); } } } else if (result.Length > 0) { RoomItem targetItem = Room.GetRoomItemHandler().GetItem(Convert.ToUInt32(result)); if (targetItem != null && !wiredItems.Contains(targetItem)) { wiredItems.Add(targetItem); } } } if (WiredUtillity.HaveSettings(Item.GetBaseItem().InteractionType)) { string result = (string)dRow["wired_data"]; for (int i = 0; i < 3; i++) { StringSettings[i] = result.Split(';')[i].ToString(); } } if (WiredUtillity.HaveLocations(Item.GetBaseItem().InteractionType)) { string result = (string)dRow["wired_original_location"]; foreach (string value in result.Split(';')) { try { uint itemID = Convert.ToUInt32(value.Split(',')[0]); int x = Convert.ToInt32(value.Split(',')[1].ToString()); int y = Convert.ToInt32(value.Split(',')[2].ToString()); double height = Double.Parse(value.Split(',')[4], OtanixEnvironment.cultureInfo); int rot = Convert.ToInt32(value.Split(',')[3].ToString()); string extradata = (string)value.Split(',')[5]; originalPositionList.Add(itemID, new OriginalItemLocation(itemID, x, y, height, rot, extradata)); } catch { } } } }
public void LoadFurniture(int RoomId = 0) { if (RoomId == 0) { this._floorItems.Clear(); this._wallItems.Clear(); } using (IQueryAdapter queryreactor = ButterflyEnvironment.GetDatabaseManager().GetQueryReactor()) { queryreactor.SetQuery("SELECT items.id, items.user_id, items.room_id, items.base_item, items.extra_data, items.x, items.y, items.z, items.rot, items.wall_pos, items_limited.limited_number, items_limited.limited_stack FROM items LEFT JOIN items_limited ON (items_limited.item_id = items.id) WHERE items.room_id = @roomid"); queryreactor.AddParameter("roomid", (RoomId == 0) ? this.GetRoom.Id : RoomId); int itemID; int UserId; int baseID; string ExtraData; int x; int y; double z; sbyte n; string wallposs; int Limited; int LimitedTo; string wallCoord; foreach (DataRow dataRow in queryreactor.GetTable().Rows) { itemID = Convert.ToInt32(dataRow[0]); UserId = Convert.ToInt32(dataRow[1]); baseID = Convert.ToInt32(dataRow[3]); ExtraData = !DBNull.Value.Equals(dataRow[4]) ? (string)dataRow[4] : string.Empty; x = Convert.ToInt32(dataRow[5]); y = Convert.ToInt32(dataRow[6]); z = Convert.ToDouble(dataRow[7]); n = Convert.ToSByte(dataRow[8]); wallposs = !DBNull.Value.Equals(dataRow[9]) ? (string)(dataRow[9]) : string.Empty; Limited = !DBNull.Value.Equals(dataRow[10]) ? Convert.ToInt32(dataRow[10]) : 0; LimitedTo = !DBNull.Value.Equals(dataRow[11]) ? Convert.ToInt32(dataRow[11]) : 0; ItemData Data = null; ButterflyEnvironment.GetGame().GetItemManager().GetItem(baseID, out Data); if (Data == null) { continue; } if (Data.Type.ToString() == "i") { if (string.IsNullOrEmpty(wallposs)) { wallCoord = "w=0,0 l=0,0 l"; } else { wallCoord = wallposs;//WallPositionCheck(":" + wallposs.Split(':')[1]); } Item roomItem = new Item(itemID, this.GetRoom.Id, baseID, ExtraData, Limited, LimitedTo, 0, 0, 0.0, 0, wallCoord, this.GetRoom); if (!this._wallItems.ContainsKey(itemID)) { this._wallItems.TryAdd(itemID, roomItem); } if (roomItem.GetBaseItem().InteractionType == InteractionType.MOODLIGHT) { if (this.GetRoom.MoodlightData == null) { this.GetRoom.MoodlightData = new MoodlightData(roomItem.Id); } } } else //Is flooritem { Item roomItem = new Item(itemID, this.GetRoom.Id, baseID, ExtraData, Limited, LimitedTo, x, y, (double)z, n, "", this.GetRoom); if (!this._floorItems.ContainsKey(itemID)) { this._floorItems.TryAdd(itemID, roomItem); } } } if (RoomId == 0) { foreach (Item Item in _floorItems.Values) { if (WiredUtillity.TypeIsWired(Item.GetBaseItem().InteractionType)) { WiredLoader.LoadWiredItem(Item, this.GetRoom, queryreactor); } } } } }
public bool AddItemToMap(Item Item) { if (this.room.GotWired() && WiredUtillity.TypeIsWired(Item.GetBaseItem().InteractionType)) { this.room.GetWiredHandler().AddFurniture(Item); } this.AddSpecialItems(Item); switch (Item.GetBaseItem().InteractionType) { case InteractionType.roller: if (!this.room.GetRoomItemHandler().GetRollers().Contains(Item)) { this.room.GetRoomItemHandler().TryAddRoller(Item.Id, Item); } break; case InteractionType.footballgoalgreen: case InteractionType.footballcountergreen: case InteractionType.banzaiscoregreen: case InteractionType.banzaigategreen: case InteractionType.freezegreencounter: case InteractionType.freezegreengate: this.room.GetGameManager().AddFurnitureToTeam(Item, Team.green); break; case InteractionType.footballgoalyellow: case InteractionType.footballcounteryellow: case InteractionType.banzaiscoreyellow: case InteractionType.banzaigateyellow: case InteractionType.freezeyellowcounter: case InteractionType.freezeyellowgate: this.room.GetGameManager().AddFurnitureToTeam(Item, Team.yellow); break; case InteractionType.footballgoalblue: case InteractionType.footballcounterblue: case InteractionType.banzaiscoreblue: case InteractionType.banzaigateblue: case InteractionType.freezebluecounter: case InteractionType.freezebluegate: this.room.GetGameManager().AddFurnitureToTeam(Item, Team.blue); break; case InteractionType.footballgoalred: case InteractionType.footballcounterred: case InteractionType.banzaiscorered: case InteractionType.banzaigatered: case InteractionType.freezeredcounter: case InteractionType.freezeredgate: this.room.GetGameManager().AddFurnitureToTeam(Item, Team.red); break; } if (Item.GetBaseItem().Type != 's') { return(true); } foreach (Point point in Item.GetCoords) { this.AddCoordinatedItem(Item, new Point(point.X, point.Y)); } if (Item.GetBaseItem().InteractionType == InteractionType.football) { return(true); } foreach (Point Coord in Item.GetCoords) { if (!this.ConstructMapForItem(Item, Coord)) { return(false); } } return(true); }
public void SaveToDatabase(IQueryAdapter dbClient) { WiredUtillity.SaveTriggerItem(dbClient, this.item.Id, string.Empty, this.Delay.ToString(), false, this.items); }
public void SaveToDatabase(IQueryAdapter dbClient) { WiredUtillity.SaveTriggerItem(dbClient, this.item.Id, string.Empty, this.userName, false, null); }
internal bool AddItemToMap(RoomItem Item, bool handleGameItem) { if (handleGameItem) { if (room.GotWired() && WiredUtillity.TypeIsWired(Item.GetBaseItem().InteractionType)) { room.GetWiredHandler().AddFurniture(Item); } AddSpecialItems(Item); switch (Item.GetBaseItem().InteractionType) { case InteractionType.footballgoalred: case InteractionType.footballcounterred: case InteractionType.banzaiscorered: case InteractionType.freezeredcounter: case InteractionType.freezeredgate: { room.GetGameManager().AddFurnitureToTeam(Item, Games.Team.red); break; } case InteractionType.footballgoalgreen: case InteractionType.footballcountergreen: case InteractionType.banzaiscoregreen: case InteractionType.freezegreencounter: case InteractionType.freezegreengate: { room.GetGameManager().AddFurnitureToTeam(Item, Games.Team.green); break; } case InteractionType.footballgoalblue: case InteractionType.footballcounterblue: case InteractionType.banzaiscoreblue: case InteractionType.freezebluecounter: case InteractionType.freezebluegate: { room.GetGameManager().AddFurnitureToTeam(Item, Games.Team.blue); break; } case InteractionType.footballgoalyellow: case InteractionType.footballcounteryellow: case InteractionType.banzaiscoreyellow: case InteractionType.freezeyellowcounter: case InteractionType.freezeyellowgate: { room.GetGameManager().AddFurnitureToTeam(Item, Games.Team.yellow); break; } case InteractionType.freezeexit: { room.GetFreeze().ExitTeleport = Item; break; } case InteractionType.roller: { if (!room.GetRoomItemHandler().mRollers.ContainsKey(Item.Id)) { room.GetRoomItemHandler().mRollers.Add(Item.Id, Item); } break; } } } if (Item.GetBaseItem().Type != 's') { return(true); } foreach (Point coord in Item.GetCoords) { Point point = new Point(coord.X, coord.Y); AddCoordinatedItem(Item, point); } if (Item.GetX > (Model.MapSizeX - 1)) { Model.AddX(); GenerateMaps(); return(false); } if (Item.GetY > (Model.MapSizeY - 1)) { Model.AddY(); GenerateMaps(); return(false); } foreach (Point coord in Item.GetCoords) { if (!ConstructMapForItem(Item, coord)) { return(false); } } return(true); }
public void SaveToDatabase(IQueryAdapter dbClient) { WiredUtillity.SaveTriggerItem(dbClient, this.item.Id, string.Empty, this.triggerMessage, this.isOwnerOnly, null); }
public void SaveToDatabase(IQueryAdapter dbClient) { WiredUtillity.SaveTriggerItem(dbClient, this.itemID, string.Empty, ((int)this.team).ToString(), false, null); }
public void SaveToDatabase(IQueryAdapter dbClient) { string SaveRoomCount = this.RoomCountMin + ":" + this.RoomCountMax; WiredUtillity.SaveTriggerItem(dbClient, this.Item.Id, string.Empty, SaveRoomCount, false, null); }