Server.Network.PacketHandlers.SecureTrade C# (CSharp) Méthode

SecureTrade() public static méthode

public static SecureTrade ( NetState state, PacketReader pvSrc ) : void
state NetState
pvSrc PacketReader
Résultat void
        public static void SecureTrade( NetState state, PacketReader pvSrc )
        {
            switch ( pvSrc.ReadByte() )
            {
                case 1: // Cancel
                {
                    Serial serial = pvSrc.ReadInt32();

                    SecureTradeContainer cont = World.FindItem( serial ) as SecureTradeContainer;

                    if ( cont != null && cont.Trade != null && (cont.Trade.From.Mobile == state.Mobile || cont.Trade.To.Mobile == state.Mobile) )
                        cont.Trade.Cancel();

                    break;
                }
                case 2: // Check
                {
                    Serial serial = pvSrc.ReadInt32();

                    SecureTradeContainer cont = World.FindItem( serial ) as SecureTradeContainer;

                    if ( cont != null )
                    {
                        SecureTrade trade = cont.Trade;

                        bool value = ( pvSrc.ReadInt32() != 0 );

                        if ( trade != null && trade.From.Mobile == state.Mobile )
                        {
                            trade.From.Accepted = value;
                            trade.Update();
                        }
                        else if ( trade != null && trade.To.Mobile == state.Mobile )
                        {
                            trade.To.Accepted = value;
                            trade.Update();
                        }
                    }

                    break;
                }
                case 3: // Update Gold
                {
                    Serial serial = pvSrc.ReadInt32();

                    SecureTradeContainer cont = World.FindItem(serial) as SecureTradeContainer;

                    if (cont != null)
                    {
                        int gold = pvSrc.ReadInt32();
                        int plat = pvSrc.ReadInt32();

                        SecureTrade trade = cont.Trade;

                        if (trade != null)
                        {
                            if (trade.From.Mobile == state.Mobile)
                            {
                                trade.From.Gold = gold;
                                trade.From.Plat = plat;
                                trade.UpdateFromCurrency();
                            }
                            else if (trade.To.Mobile == state.Mobile)
                            {
                                trade.To.Gold = gold;
                                trade.To.Plat = plat;
                                trade.UpdateToCurrency();
                            }
                        }
                    }
                }
                break;
            }
        }
PacketHandlers