public void whisper(String packet, String sender)
    {
        Packet pack = new Packet();
        String[] packs = new String[2];
        pack.setPacket(packet);
        pack.removeHeader();
        int len = pack.getInt(2);
        String recvUser = pack.getString(0, 15, false);
        String message = pack.getString(0, pack.getLen(), false);
        pack.clean();
        if (func.compareChat(message, sender, true, false) == -1)
        {
            kickPlayer(sender, "Player " + sender + " has been kick for wrong chatname(hacking)");
        }
        else
        {
            pack.addHeader((byte) 0x2B, (byte) 0x2F);
            int num = getNum(recvUser);
            if (num == -1)
            {
                pack.addByte4((byte) 0x00, (byte) 0x6B, (byte) 0x00, (byte) 0x00);
                packs[0] = pack.getHeader();
                packs[1] = pack.getPacket();
                num = getNum(sender);
                usersocks[num].write(packs[0]);
                usersocks[num].flush();
                usersocks[num].write(packs[1]);
                usersocks[num].flush();
            }
            else
            {
                pack.addByte2((byte) 0x01, (byte) 0x00);
                pack.addInt(len, 2, false);
                pack.addString(message);
                pack.addByte((byte) 0x00);
                packs[0] = pack.getHeader();
                packs[1] = pack.getPacket();
                debug("test " + packs[1]);
                usersocks[num].write(packs[0]);
                usersocks[num].flush();
                usersocks[num].write(packs[1]);
                usersocks[num].flush();
                num = getNum(sender);
                usersocks[num].write(packs[0]);
                usersocks[num].flush();
                usersocks[num].write(packs[1]);
                usersocks[num].flush();
            }
        }
    }