コード例 #1
0
ファイル: OnRecvBuy.cs プロジェクト: eveJiang/MMORPG
        private void OnRecvBuy(IChannel channel, Message message)
        {
            SBuyMessage msg = message as SBuyMessage;

            Debug.Log("Frontend: OnRecvBuy");
            if (msg.success == true)
            {
                MessageBox.Show(":)");
            }
            else
            {
                MessageBox.Show(":(");
            }
        }
コード例 #2
0
        private void OnRecvBuy(IChannel channel, Message message)
        {
            Player      player   = channel.GetContent() as Player;
            CBuyMessage request  = message as CBuyMessage;
            SBuyMessage response = new SBuyMessage();

            response.success = false;
            Console.WriteLine("Backend: OnRecvBuy.cs");
            var conn      = db.Instance.Connect();
            int totalCost = 0;
            int mark      = 0;
            int silver    = 0;
            int gold      = 0;

            foreach (var item in request.items)
            {
                totalCost += item.price;
                if (item.type != 'e')
                {
                    mark  = 1;
                    gold += item.price;
                }
                else
                {
                    silver += item.price;
                }
                Console.WriteLine(string.Format("item_name: {0}", item.name));
            }
            response.gold   = gold;
            response.silver = silver;
            Console.WriteLine(string.Format("player_goldcoin: {0}; player_silvercoin: {1}", Database.Instance.GetGoldCoins(player.dbid), Database.Instance.GetSilverCoins(player.dbid)));
            if (db.Instance.BuyItems(request.items, gold, silver, player.dbid, mark, conn))
            {
                response.success = true;
            }
            response.items = db.Instance.GetInventory(request.dbid, conn);
            channel.Send(response);
            Console.WriteLine("Backend : Finish OnRecvBuy");
        }