/// <summary> /// 添加和修改 /// </summary> /// <returns></returns> public ActionResult SaveData() { string result = ""; string dataitem = Request["GoodItem"]; string savetype = Request["savetype"].ToString().Trim(); GoodItem model_lgt = JsonConvert.DeserializeObject <GoodItem>(dataitem); model_lgt.CreateDate = DateTime.Now; model_lgt.CreateBy = Session["UserName"].ToString().Trim(); if (savetype == "add") { var gooditemlist = GoodItemService.LoadEntities(a => a.ItemCode == model_lgt.ItemCode).FirstOrDefault(); if (gooditemlist == null) { GoodItemService.AddEntity(model_lgt); result = "保存成功!"; } else { result = "编码重复,请重新填写!"; } } else if (savetype == "edit") { if (GoodItemService.EditEntity(model_lgt)) { result = "编辑成功!"; } else { result = "编辑失败"; } } return(Content(result.ToString())); }
void RefreshGoods() { List <GoodsData> goods = GameManager.Instance.goodsList; //string jsonStr = File.ReadAllText("shopJson.txt"); //Recv_Get_Shop shopData = JsonMapper.ToObject<Recv_Get_Shop>(jsonStr); //Debug.Log(jsonStr); if (goods != null) { int index = 0; foreach (var item in goods) { GoodItem tempItem = goodsItem.Clone() as GoodItem; if (tempItem) { tempItem.SetActive(true); tempItem.OpenUI(); tempItem.SetItemInfo(item, index); goodsList.Add(tempItem); } index++; } } }
private static void LoadDataMatching2(int cafe) { List <GoodItem> matchs = new List <GoodItem>(); lock (ShopAllList) { for (int i = 0; i < ShopAllList.Count; i++) { GoodItem good = ShopAllList[i]; if (good._item._count == 0) { continue; } if (!(good.tag == 4 && cafe == 0) && (good.tag == 4 && cafe > 0 || good.visibility != 2)) { matchs.Add(good); } } } TotalMatching2 = matchs.Count; int Pages = (int)Math.Ceiling(matchs.Count / 741d); int count = 0; for (int i = 0; i < Pages; i++) { byte[] buffer = getMatchingData(741, i, ref count, matchs); ShopData data = new ShopData { Buffer = buffer, ItemsCount = count, Offset = (i * 741) }; ShopDataMt2.Add(data); } }
public override void run() { try { Account player = this._client._player; if (player == null) { return; } PlayerEvent playerEvent = player._event; GoodItem good = ShopManager.getGood(this.goodId); if (good == null || playerEvent == null) { return; } PlayTimeModel runningEvent = EventPlayTimeSyncer.getRunningEvent(); if (runningEvent == null) { return; } uint rewardCount = (uint)runningEvent.GetRewardCount(this.goodId); if (playerEvent.LastPlaytimeFinish != 1 || rewardCount <= 0U || !ComDiv.updateDB("player_events", "last_playtime_finish", (object)2, "player_id", (object)this._client.player_id)) { return; } playerEvent.LastPlaytimeFinish = 2; this._client.SendPacket((SendPacket) new INVENTORY_ITEM_CREATE_PAK(1, player, new ItemsModel(good._item._id, good._item._category, "Playtime reward", good._item._equip, rewardCount, 0L))); } catch (Exception ex) { Logger.info("EVENT_PLAYTIME_REWARD_REC] " + ex.ToString()); } }
public override void RunImplement() { try { Account player = client.SessionPlayer; if (player == null || player.events == null || player.checkEventPlayTimeReward) { return; } GoodItem good = ShopManager.GetGood(goodId); if (good == null) { return; } PlayTimeModel eventPlayTime = EventPlayTimeSyncer.GetRunningEvent(); if (eventPlayTime != null) { int count = eventPlayTime.GetRewardCount(goodId); if (player.events.LastPlaytimeFinish == 1 && count > 0 && player.UpdatePlayTimeReward()) { player.events.LastPlaytimeFinish = 2; client.SendPacket(new PROTOCOL_INVENTORY_ITEM_CREATE_ACK(1, player, new ItemsModel(good.item.id, good.item.category, "Playtime reward", good.item.equip, count))); } player.checkEventPlayTimeReward = true; } } catch (Exception ex) { PacketLog(ex); } }
private static void LoadDataItems() { List <GoodItem> items = new List <GoodItem>(); lock (ShopUniqueList) { for (int i = 0; i < ShopUniqueList.Values.Count; i++) { GoodItem good = ShopUniqueList.Values[i]; if (good.visibility != 1 && good.visibility != 3) { items.Add(good); } } } TotalItems = items.Count; int ItemsPages = (int)Math.Ceiling(items.Count / 1111d); int count = 0; for (int i = 0; i < ItemsPages; i++) { byte[] buffer = getItemsData(1111, i, ref count, items); ShopData data = new ShopData { Buffer = buffer, ItemsCount = count, Offset = (i * 1111) }; ShopDataItems.Add(data); } }
public async Task <IActionResult> PutGoodItem(int id, GoodItem goodItem) { if (id != goodItem.ID) { return(BadRequest()); } _context.Entry(goodItem).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!GoodItemExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task <ActionResult <GoodItem> > GetGoodItem(int id) { GoodItem goodItem = await _context.GoodItems .Where(i => i.ID == id) .Include("Pictures") .Select(g => new GoodItem { ID = g.ID, Name = g.Name, Description = g.Description, Price = g.Price, Date = g.Date, PicURL = g.PicURL, CategoryId = g.CategoryId, Pictures = g.Pictures.Select(p => new Picture { ID = p.ID, pathURL = p.pathURL, GoodItemId = p.GoodItemId }) }).FirstOrDefaultAsync(); if (goodItem == null) { return(NotFound()); } return(goodItem); }
public static List <GoodItem> getGoods(List <CartGoods> ShopCart, out int GoldPrice, out int CashPrice) { GoldPrice = 0; CashPrice = 0; List <GoodItem> items = new List <GoodItem>(); if (ShopCart.Count == 0) { return(items); } lock (ShopBuyableList) { for (int i = 0; i < ShopBuyableList.Count; i++) { GoodItem good = ShopBuyableList[i]; for (int i2 = 0; i2 < ShopCart.Count; i2++) { CartGoods CartGood = ShopCart[i2]; if (CartGood.GoodId == good.id) { items.Add(good); if (CartGood.BuyType == 1) { GoldPrice += good.price_gold; } else if (CartGood.BuyType == 2) { CashPrice += good.price_cash; } } } } } return(items); }
public async Task <ActionResult <GoodItem> > PostGoodItem(GoodItem goodItem) { goodItem.Date = DateTime.Now; _context.GoodItems.Add(goodItem); await _context.SaveChangesAsync(); return(CreatedAtAction("GetGoodItem", new { id = goodItem.ID }, goodItem)); }
private static void WriteItemsData(GoodItem good, SendGPacket p) { p.writeD(good._item._id); p.writeC((byte)good.auth_type); p.writeC((byte)good.buy_type2); p.writeC((byte)good.buy_type3); p.writeC((byte)good.title); }
private static void WriteGoodsData(GoodItem good, SendGPacket p) { p.writeD(good.id); p.writeC(1); p.writeC((byte)(good.visibility == 4 ? 4 : 1)); //Flag1 = Show icon + Buy option | Flag2 = UNK | Flag4 = Show icon + No buy option p.writeD(good.price_gold); p.writeD(good.price_cash); p.writeC((byte)good.tag); }
public OrderDto GetTotals(OrderDto orderDto) { var order = new Domain.OrderAggregate.Order(); foreach (var orderItemDto in orderDto.OrderItems) { var goodItem = new GoodItem(orderItemDto.UnitPrice, orderItemDto.Quantity, orderItemDto.IsImported, GoodItemTypeEnum.FromName(orderItemDto.Type), null, new GoodItemDetails(orderItemDto.Name)); order.AddGoodItem(goodItem); } //todo: use object-object mapper instead return(new OrderDto(order)); }
protected override void OnInit(object userData) { base.OnInit(userData); GUILink link = GetComponent <GUILink>(); goodsItem = link.Get <GoodItem>("GoodInfo"); goodsItem.SetActive(false); goodsList = new List <GoodItem>(); link.SetEvent("ButtonClose", UIEventType.Click, OnClickExit); RefreshGoods(); }
/// <summary> /// 删除记录 /// </summary> /// <returns></returns> public ActionResult DeleteData() { string res = ""; if (Request["DeleteItem"] == null) { res = "参数错误!"; } else { string item = Request["DeleteItem"].ToString(); GoodItem itemLine = JsonConvert.DeserializeObject <GoodItem>(item); res = GoodItemService.DeleteEntity(itemLine) ? "删除成功" : "删除失败"; } return(Content(res)); }
/// <summary> /// 添加和修改 /// </summary> /// <returns></returns> public ActionResult SaveData() { bool result = false; string dataitem = Request["GoodItem"]; string savetype = Request["savetype"].ToString().Trim(); GoodItem model_lgt = JsonConvert.DeserializeObject <GoodItem>(dataitem); if (savetype == "add") { GoodItemService.AddEntity(model_lgt); result = true; } else if (savetype == "edit") { result = GoodItemService.EditEntity(model_lgt); } return(Content(result.ToString())); }
public static GoodItem getGood(int goodId) { if (goodId == 0) { return(null); } lock (ShopAllList) { for (int i = 0; i < ShopAllList.Count; i++) { GoodItem good = ShopAllList[i]; if (good.id == goodId) { return(good); } } } return(null); }
public override void run() { try { if (_client == null) { return; } Account p = _client._player; if (p == null) { return; } if (p._inventory._items.Count >= 500) { _client.SendPacket(new INVENTORY_ITEM_EQUIP_PAK(2147487785)); _client.SendPacket(new BOX_MESSAGE_GIFT_TAKE_PAK(0x80000000)); } else { Message msg = MessageManager.getMessage(msgId, p.player_id); if (msg != null && msg.type == 2) { GoodItem good = ShopManager.getGood((int)msg.sender_id); if (good != null) { SaveLog.warning("Received gift. [Good: " + good.id + "; Item: " + good._item._id + "]"); _client.SendPacket(new BOX_MESSAGE_GIFT_TAKE_PAK(1, good._item, p)); MessageManager.DeleteMessage(msgId, p.player_id); } } else { _client.SendPacket(new BOX_MESSAGE_GIFT_TAKE_PAK(0x80000000)); } } } catch (Exception ex) { SaveLog.fatal(ex.ToString()); Printf.b_danger("[BOX_MESSAGE_GIFT_TAKE_REC.run] Erro fatal!"); } }
public override void run() { try { if (this._client == null) { return; } Account player = this._client._player; if (player == null) { return; } if (player._inventory._items.Count >= 500) { this._client.SendPacket((SendPacket) new INVENTORY_ITEM_EQUIP_PAK(2147487785U, (ItemsModel)null, (Account)null)); this._client.SendPacket((SendPacket) new BOX_MESSAGE_GIFT_TAKE_PAK(2147483648U, (ItemsModel)null, (Account)null)); } else { Message message = MessageManager.getMessage(this.msgId, player.player_id); if (message != null && message.type == 2) { GoodItem good = ShopManager.getGood((int)message.sender_id); if (good == null) { return; } Logger.warning("Received gift. [Good: " + (object)good.id + "; Item: " + (object)good._item._id + "]"); this._client.SendPacket((SendPacket) new BOX_MESSAGE_GIFT_TAKE_PAK(1U, good._item, player)); MessageManager.DeleteMessage(this.msgId, player.player_id); } else { this._client.SendPacket((SendPacket) new BOX_MESSAGE_GIFT_TAKE_PAK(2147483648U, (ItemsModel)null, (Account)null)); } } } catch (Exception ex) { Logger.info("[BOX_MESSAGE_GIFT_TAKE_REC] " + ex.ToString()); } }
public static string SendGiftById(string str) { if (!ServerConfig.GiftSystem) { return(Translation.GetLabel("SendGift_SystemOffline")); } string txt = str.Substring(str.IndexOf(" ") + 1); string[] split = txt.Split(' '); long player_id = Convert.ToInt64(split[0]); int shopGiftId = Convert.ToInt32(split[1]); Account pR = AccountManager.getAccount(player_id, 0); if (pR == null) { return(Translation.GetLabel("SendGift_Fail4")); } GoodItem good = ShopManager.getGood(shopGiftId); if (good != null && (good.visibility == 0 || good.visibility == 4)) { Message gift = new Message(30) { sender_id = shopGiftId, state = 0, type = 2 }; if (MessageManager.CreateMessage(player_id, gift)) { pR.SendPacket(new BOX_MESSAGE_GIFT_RECEIVE_PAK(gift), false); return(Translation.GetLabel("SendGift_Success", good._item._name, pR.player_name)); } else { return(Translation.GetLabel("SendGift_Fail1")); } } else { return(good == null?Translation.GetLabel("SendGift_Fail2") : Translation.GetLabel("SendGift_Fail3", good._item._name)); } }
public void Additem(int itemId) { var tempItem = itemJsonDataList.FirstOrDefault(t => t.ID == itemId); ItemData itemToAdd = tempItem == null ? null : tempItem; //判断当前物品属性是否可叠加且 if (itemToAdd.Stackable == true) { tempItem = itemBagList.FirstOrDefault(t => t.ID == itemId); bool isExist = tempItem == null ? false : true; //当前背包内是否已经存在同类型 if (isExist) { for (int i = 0; i < itemBagList.Count; i++) { if (itemBagList[i].ID == itemId) { GoodItem data = slotBagList[i].transform.GetChild(0).GetComponent <GoodItem>(); if (data.amount < itemToAdd.StackMax) { data.amount++; data.transform.GetChild(0).GetComponent <Text>().text = data.amount.ToString(); return; } } } CreatNewItem(itemToAdd); } else { CreatNewItem(itemToAdd); } } else { CreatNewItem(itemToAdd); } }
public override void RunImplement() { try { Account player = client.SessionPlayer; if (player == null) { return; } if (player.inventory.items.Count >= 500) { client.SendCompletePacket(PackageDataManager.INVENTORY_ITEM_EQUIP_2147487785_PAK); client.SendCompletePacket(PackageDataManager.BOX_MESSAGE_GIFT_TAKE_0x80000000_PAK); } else { Message msg = player.GetMessage(objectId); if (msg != null && msg.type == 2) { GoodItem good = ShopManager.GetGood((int)msg.senderId); if (good != null) { Logger.Warning($" [BOX_MESSAGE_GIFT_TAKE_REQ] Received gift. [Good: {good.id} Item: {good.item.id}]"); client.SendPacket(new BOX_MESSAGE_GIFT_TAKE_PAK(1, good.item, player)); player.DeleteMessage(objectId); } } else { client.SendCompletePacket(PackageDataManager.BOX_MESSAGE_GIFT_TAKE_0x80000000_PAK); } } } catch (Exception ex) { PacketLog(ex); } }
public static string SendGiftById(string str) { if (!GameManager.Config.GiftSystem) { return(Translation.GetLabel("SendGift_SystemOffline")); } string[] strArray = str.Substring(str.IndexOf(" ") + 1).Split(' '); long int64 = Convert.ToInt64(strArray[0]); int int32 = Convert.ToInt32(strArray[1]); Account account = AccountManager.getAccount(int64, 0); if (account == null) { return(Translation.GetLabel("SendGift_Fail4")); } GoodItem good = ShopManager.getGood(int32); if (good != null && (good.visibility == 0 || good.visibility == 4)) { Message message = new Message(30.0) { sender_id = (long)int32, state = 0, type = 2 }; if (!MessageManager.CreateMessage(int64, message)) { return(Translation.GetLabel("SendGift_Fail1")); } account.SendPacket((SendPacket) new BOX_MESSAGE_GIFT_RECEIVE_PAK(message), false); return(Translation.GetLabel("SendGift_Success", (object)good._item._name, (object)account.player_name)); } if (good == null) { return(Translation.GetLabel("SendGift_Fail2")); } return(Translation.GetLabel("SendGift_Fail3", (object)good._item._name)); }
public override void run() { try { if (_client == null) { return; } Account p = _client._player; if (p == null || p.player_name.Length == 0 || type > 1) { erro = EventErrorEnum.VisitEvent_UserFail; } else if (p._event != null) { if (p._event.LastVisitSequence1 == p._event.LastVisitSequence2) { erro = EventErrorEnum.VisitEvent_AlreadyCheck; } else { EventVisitModel eventv = EventVisitSyncer.getEvent(eventId); if (eventv == null) { erro = EventErrorEnum.VisitEvent_Unknown; goto Result; } if (eventv.EventIsEnabled()) { VisitItem chI = eventv.getReward(p._event.LastVisitSequence2, type); if (chI != null) { GoodItem good = ShopManager.getGood(chI.good_id); if (good != null) { p._event.NextVisitDate = int.Parse(DateTime.Now.AddDays(1).ToString("yyMMdd")); ComDiv.updateDB("player_events", "player_id", p.player_id, new string[] { "next_visit_date", "last_visit_sequence2" }, p._event.NextVisitDate, ++p._event.LastVisitSequence2); _client.SendPacket(new INVENTORY_ITEM_CREATE_PAK(1, p, new ItemsModel(good._item._id, good._item._category, good._item._name, good._item._equip, (uint)chI.count))); } else { erro = EventErrorEnum.VisitEvent_NotEnough; } } else { erro = EventErrorEnum.VisitEvent_Unknown; } } else { erro = EventErrorEnum.VisitEvent_WrongVersion; } } } else { erro = EventErrorEnum.VisitEvent_Unknown; } Result: _client.SendPacket(new EVENT_VISIT_REWARD_PAK(erro)); } catch (Exception ex) { SaveLog.fatal(ex.ToString()); Printf.b_danger("[EVENT_VISIT_REWARD_REC.run] Erro fatal!"); } }
public override void run() { try { if (this._client == null) { return; } Account player = this._client._player; if (player == null || player.player_name.Length == 0 || this.type > 1) { this.erro = EventErrorEnum.VisitEvent_UserFail; } else if (player._event != null) { if (player._event.LastVisitSequence1 == player._event.LastVisitSequence2) { this.erro = EventErrorEnum.VisitEvent_AlreadyCheck; } else { EventVisitModel eventVisitModel = EventVisitSyncer.getEvent(this.eventId); if (eventVisitModel == null) { this.erro = EventErrorEnum.VisitEvent_Unknown; } else if (eventVisitModel.EventIsEnabled()) { VisitItem reward = eventVisitModel.getReward(player._event.LastVisitSequence2, this.type); if (reward != null) { GoodItem good = ShopManager.getGood(reward.good_id); if (good != null) { PlayerEvent playerEvent = player._event; DateTime dateTime = DateTime.Now; dateTime = dateTime.AddDays(1.0); int num = int.Parse(dateTime.ToString("yyMMdd")); playerEvent.NextVisitDate = num; ComDiv.updateDB("player_events", "player_id", (object)player.player_id, new string[2] { "next_visit_date", "last_visit_sequence2" }, (object)player._event.NextVisitDate, (object)++player._event.LastVisitSequence2); this._client.SendPacket((SendPacket) new INVENTORY_ITEM_CREATE_PAK(1, player, new ItemsModel(good._item._id, good._item._category, good._item._name, good._item._equip, (uint)reward.count, 0L))); } else { this.erro = EventErrorEnum.VisitEvent_NotEnough; } } else { this.erro = EventErrorEnum.VisitEvent_Unknown; } } else { this.erro = EventErrorEnum.VisitEvent_WrongVersion; } } } else { this.erro = EventErrorEnum.VisitEvent_Unknown; } this._client.SendPacket((SendPacket) new EVENT_VISIT_REWARD_PAK(this.erro)); } catch (Exception ex) { Logger.info("[EVENT_VERIFICATION_REWARD_REC] " + ex.ToString()); } }
private static void WriteMatchData(GoodItem good, SendGPacket p) { p.writeD(good.id); p.writeD(good._item._id); p.writeD(good._item._count); }
private void AddItems(List <GoodItem> items) { GoodItem goodItem1 = (GoodItem)null; try { foreach (GoodItem goodItem2 in items) { goodItem1 = goodItem2; ItemsModel itemsModel1 = this.p._inventory.getItem(goodItem2._item._id); ItemsModel itemsModel2 = new ItemsModel(goodItem2._item); if (itemsModel1 == null) { if (PlayerManager.CreateItem(itemsModel2, this.p.player_id)) { this.p._inventory.AddItem(itemsModel2); } } else { itemsModel2._count = itemsModel1._count; itemsModel2._objId = itemsModel1._objId; if (itemsModel1._equip == 1) { itemsModel2._count += goodItem2._item._count; ComDiv.updateDB("player_items", "count", (object)(long)itemsModel2._count, "owner_id", (object)this.p.player_id, "item_id", (object)itemsModel2._id); } else if (itemsModel1._equip == 2 && itemsModel2._category != 3) { DateTime exact = DateTime.ParseExact(itemsModel1._count.ToString(), "yyMMddHHmm", (IFormatProvider)CultureInfo.InvariantCulture); itemsModel2._count = uint.Parse(exact.AddSeconds((double)goodItem2._item._count).ToString("yyMMddHHmm")); ComDiv.updateDB("player_items", "count", (object)(long)itemsModel2._count, "owner_id", (object)this.p.player_id, "item_id", (object)itemsModel2._id); } itemsModel2._equip = itemsModel1._equip; itemsModel1._count = itemsModel2._count; } if (itemsModel2._category == 1) { this.weapons.Add(itemsModel2); } else if (itemsModel2._category == 2) { this.charas.Add(itemsModel2); } else if (itemsModel2._category == 3) { this.cupons.Add(itemsModel2); } } } catch (Exception ex) { this.erro = 2147487767U; Logger.warning("[SHOP_BUY_PAK] " + ex.ToString()); if (goodItem1 == null) { return; } Logger.warning("[SHOP_BUY_PAK] Good: " + (object)goodItem1.id); } }
private void AddItems(List <GoodItem> items) { try { for (int i = 0; i < items.Count; i++) { GoodItem good = items[i]; ItemsModel iv = player.inventory.GetItem(good.item.id); ItemsModel modelo = new ItemsModel(good.item); if (iv == null) { if (player.CreateItem(modelo)) { player.inventory.AddItem(modelo); } else { error = 2147487767; break; } } else { modelo.count = iv.count; modelo.objectId = iv.objectId; if (iv.equip == 1) { if ((good.item.count + modelo.count) > Settings.MaxBuyItemUnits) { Logger.Warning($" [GAME] [{GetType().Name}] Não foi possivel comprar mais de {Settings.MaxBuyItemUnits} unidades do mesmo equipamento. ItemId: {iv.id} PlayerId: {player.playerId} Date: {DateTime.Now}"); error = 2147487767; break; } modelo.count += good.item.count; if (!player.ExecuteQuery($"UPDATE player_items SET count='{modelo.count}' WHERE owner_id='{player.playerId}' AND item_id='{modelo.id}'")) { error = 2147487767; break; } } else if (iv.equip == 2 && modelo.category != 3) { DateTime data = DateTime.ParseExact(iv.count.ToString(), "yyMMddHHmm", CultureInfo.InvariantCulture).AddSeconds(good.item.count); if ((data - DateTime.Now).Days + 1 > Settings.MaxBuyItemDays) //+1 porque ele não conta o dia atual da compra neste calculo, no jogo compra 30 dias, aqui mostra 29 e somo mais 1 { Logger.Warning($" [GAME] [{GetType().Name}] Não foi possivel comprar mais de {Settings.MaxBuyItemDays} dias do mesmo equipamento. ItemId: {iv.id} PlayerId: {player.playerId} Date: {DateTime.Now}"); error = 2147487767; break; } modelo.count = int.Parse(data.ToString("yyMMddHHmm")); if (!player.ExecuteQuery($"UPDATE player_items SET count='{modelo.count}' WHERE owner_id='{player.playerId}' AND item_id='{modelo.id}'")) { error = 2147487767; break; } } modelo.equip = iv.equip; iv.count = modelo.count; } if (modelo.category == 1) { weapons.Add(modelo); } else if (modelo.category == 2) { charas.Add(modelo); } else if (modelo.category == 3) { cupons.Add(modelo); } } } catch (Exception ex) { error = 2147487767; Logger.Exception(ex); } }
public static void Load(int type) { try { using (NpgsqlConnection connection = SQLjec.getInstance().conn()) { connection.Open(); NpgsqlCommand command = connection.CreateCommand(); command.CommandText = "SELECT * FROM shop"; command.CommandType = CommandType.Text; NpgsqlDataReader data = command.ExecuteReader(); while (data.Read()) { GoodItem good = new GoodItem { id = data.GetInt32(0), price_gold = data.GetInt32(3), price_cash = data.GetInt32(4), auth_type = data.GetInt16(6), buy_type2 = data.GetInt16(7), buy_type3 = data.GetInt16(8), tag = data.GetInt16(9), title = data.GetInt16(10), visibility = data.GetInt16(11) }; good._item.SetItemId(data.GetInt32(1)); good._item._name = data.GetString(2); good._item._count = (UInt32)data.GetInt32(5); int Static = ComDiv.getIdStatics(good._item._id, 1); if (type == 1 || type == 2 && Static == 12) { ShopAllList.Add(good); if (good.visibility != 2 && good.visibility != 4) { ShopBuyableList.Add(good); } if (!ShopUniqueList.ContainsKey(good._item._id) && good.auth_type > 0) { ShopUniqueList.Add(good._item._id, good); if (good.visibility == 4) { set4p++; } } } } if (type == 1) { LoadDataMatching1Goods(0); LoadDataMatching2(1); LoadDataItems(); } command.Dispose(); data.Close(); connection.Dispose(); connection.Close(); } if (set4p > 0) { Printf.warning("[Aviso] Existem " + set4p + " itens na loja invisíveis, porém com os ícones liberados."); } } catch (Exception ex) { SaveLog.fatal(ex.ToString()); Printf.b_danger("[ShopManager.Load] Erro fatal!"); } }
private void AddItems(List <GoodItem> items) { GoodItem g2 = null; try { foreach (GoodItem good in items) { g2 = good; ItemsModel iv = p._inventory.getItem(good._item._id); ItemsModel modelo = new ItemsModel(good._item); if (iv == null) { if (PlayerManager.CreateItem(modelo, p.player_id)) { p._inventory.AddItem(modelo); } } else { modelo._count = iv._count; modelo._objId = iv._objId; if (iv._equip == 1) { modelo._count += good._item._count; ComDiv.updateDB("player_items", "count", (long)modelo._count, "owner_id", p.player_id, "item_id", modelo._id); } else if (iv._equip == 2 && modelo._category != 3) { DateTime data = DateTime.ParseExact(iv._count.ToString(), "yyMMddHHmm", CultureInfo.InvariantCulture); modelo._count = uint.Parse(data.AddSeconds(good._item._count).ToString("yyMMddHHmm")); ComDiv.updateDB("player_items", "count", (long)modelo._count, "owner_id", p.player_id, "item_id", modelo._id); } modelo._equip = iv._equip; iv._count = modelo._count; } if (modelo._category == 1) { weapons.Add(modelo); } else if (modelo._category == 2) { charas.Add(modelo); } else if (modelo._category == 3) { cupons.Add(modelo); } } } catch (Exception ex) { erro = 2147487767; SaveLog.fatal(ex.ToString()); Printf.b_danger("[SHOP_BUY_PAK.AddItems] Erro fatal!"); if (g2 != null) { SaveLog.fatal("[SHOP_BUY_PAK] Good: " + g2.id); } } }