예제 #1
0
        private static void ParseLine(string line)
        {
            var splittedLine = line.Split('\t').ToList();
            var shopTab      = GenerateShopTab(splittedLine);

            NpcShopManager.AddTab(shopTab);
        }
예제 #2
0
 internal static void Stop()
 {
     Console.WriteLine(Resources.Server_Stop_Stop);
     ClientManager.Shutdown();
     NetworkConfig.Stop();
     foreach (var server in servers)
     {
         server.Value.Shutdown();
     }
     NetworkComms.CloseAllConnections();
     NetworkComms.Shutdown();
     NpcShopManager.Shutdown();
     ItemManager.Shutdown();
     servers.Clear();
     Console.WriteLine(Resources.Server_Stop_Success);
 }
예제 #3
0
        internal static void OnC2SAskBuyItem(ByteBuffer buffer, Connection connection)
        {
            var incPacket = new ItemPackets.C2SAskBuyItem(buffer);
            var itemId    = NpcShopManager.GetItem(incPacket.unkId1, incPacket.shopPage, incPacket.itemIndex);
            var item      = ItemManager.GetItem((uint)itemId);
            var character = ClientManager.GetClient(connection).GetSelectedCharacter();
            var inv       = character.Inventory;

            character.BuyItem(item);



            var invCount  = inv.inventoryItemCount;
            var money     = inv.Money;
            var outPacket = new ItemPackets.S2CAnsBuyItem(money, invCount, character.Inventory.invSlotsInfo);

            outPacket.Send(connection);

            //var ItemSlotInfo = new PacketStructs.ItemSlotInfo(0, item, 1);
            //character.Inventory.invSlotsInfo[0] = ItemSlotInfo;
            //character.Inventory.Money -= item.ItemSellMoney;
            //var outPacket = new ItemPackets.S2CAnsBuyItem(character.Inventory.Money, 1, 0, character.Inventory.invSlotsInfo);
            //outPacket.Send(connection);
        }