示例#1
0
        public static void SubPasswordSet(PacketReader packet, PacketBuilder builder, ClientHandler client, EventHandler events)
        {
            var pass = packet.ReadString(10).Trim('\0');

            packet.Skip(5);
            var question = packet.ReadInt();
            var answer   = packet.ReadString(16).Trim('\0');

            packet.Skip(112);
            var changeSub = packet.ReadInt();

            var syncServer = client.Metadata["syncServer"] as SyncReceiver;

            if (changeSub == 0)
            {
                SubpassManagement.SetSubPass(syncServer, client.AccountID, pass, question, answer);
            }
            else
            {
                SubpassManagement.SetSubPass(syncServer, client.AccountID, pass, -1, string.Empty);
            }

            builder.New(0x406);
            {
                builder += 1;
                builder += 0;
                builder += 1;
                builder += 0;
            }

            SubpassManagement.SetSubPassTime(syncServer, client.AccountID, 0);
            client.Send(builder, "SubPasswordSet");
        }
        public static void SubPasswordChangeQA(PacketReader packet, PacketBuilder builder, ClientHandler client, EventHandler events)
        {
            packet.Skip(4);
            var question = packet.ReadInt();
            var answer   = packet.ReadString(16).Trim('\0');

            var syncServer = client.Metadata["syncServer"] as SyncReceiver;

            SubpassManagement.SetSubPass(syncServer, client.AccountID, string.Empty, question, answer);

            builder.New(0x416);
            {
                builder += 1;
                builder += 1;
            }

            client.Send(builder, "SubPasswordChangeQA");
        }