예제 #1
0
    private void handleRealmList(RealmPacket packet)
    {
        SRealmList realmList = SRealmList.getInstance();

        packet.readUint16();                // size
        packet.readUint32();                // unk1
        int nbrealms = packet.readUint16(); // nb realms

        for (int i = 0; i < nbrealms; i++)
        {
            Realm r = new Realm();
            r.Icon         = packet.readByte();    // icon
            r.IsLock       = packet.readByte();    // lock
            r.Color        = packet.readByte();    // color
            r.Name         = packet.readCString(); // name
            r.Address      = packet.readCString(); // address
            r.Population   = packet.readFloat();   // population
            r.NbCharacters = packet.readByte();    // nb characters
            r.Timezone     = packet.readByte();    // timezone
            packet.readByte();                     // unk

            realmList.add(r);
        }

        packet.readByte(); // unk2
        packet.readByte(); // unk3
    }
예제 #2
0
 private void handleAuthLogonProof(RealmPacket packet)
 {
     // *TODO* Do the proper checks
     packet.readByte();                // error
     byte[] M2 = packet.readBytes(20); // M2
     packet.readUint32();              // unk1
     packet.readUint32();              // unk2
     packet.readUint16();              // unk3
 }
예제 #3
0
    private void handleRealmList(RealmPacket packet)
    {
        SRealmList realmList = SRealmList.getInstance();

        packet.readUint16(); // size
        packet.readUint32(); // unk1
        int nbrealms = packet.readUint16(); // nb realms

        for (int i = 0; i < nbrealms; i++)
        {
            Realm r = new Realm();
            r.Icon = packet.readByte(); // icon
            r.IsLock = packet.readByte(); // lock
            r.Color = packet.readByte(); // color
            r.Name = packet.readCString(); // name
            r.Address = packet.readCString(); // address
            r.Population = packet.readFloat(); // population
            r.NbCharacters = packet.readByte(); // nb characters
            r.Timezone = packet.readByte(); // timezone
            packet.readByte(); // unk

            realmList.add(r);
        }

        packet.readByte(); // unk2
        packet.readByte(); // unk3
    }
예제 #4
0
 private void handleAuthLogonProof(RealmPacket packet)
 {
     // *TODO* Do the proper checks
     packet.readByte(); // error
     byte[] M2 = packet.readBytes(20); // M2
     packet.readUint32(); // unk1
     packet.readUint32(); // unk2
     packet.readUint16(); // unk3
 }