public static final void buyCashItem(SeekableLittleEndianAccessor slea, MapleClient c) {
        int action = slea.readByte();
        if (action == 3) {
            slea.skip(1);
            int useNX = slea.readInt();
            int snCS = slea.readInt();
            CashItemInfo item = CashItemFactory.getItem(snCS);
            if (item.getBlock() == 1) {
                c.getPlayer().dropMessage(1, "This Item is Blocked from being bought. too bad so sad");
                showCS(c);
                return;
            }
            if (!MapleInventoryManipulator.checkSpace(c, item.getId(), item.getCount(), "")) {
                c.getPlayer().dropMessage(1, "You do not have enough inventory space!");
            } else {
                if (c.getPlayer().getCSPoints(useNX) >= item.getPrice()) {
                    c.getPlayer().addCSPoints(useNX, -item.getPrice());
                } else {
                    c.getPlayer().dropMessage(1, "You do not have enough Nx!");
                    showCS(c);
                    return;
                }
                MapleInventoryManipulator.addById(c, item.getId(), (short) item.getCount(), "");
                c.getSession().write(MTSCSPacket.showBoughtCSItem(c, item));
            }
            showCS(c);
        } else if (action == 4) { // Gifting, not GMS like without the cash inventories
            showCS(c);
        } else if (action == 5) {
            c.getPlayer().clearWishlist();
            int[] wishlist = new int[10];
            for (int i = 0; i < 10; i++) {
                wishlist[i] = slea.readInt();
            }
            c.getSession().write(MTSCSPacket.sendWishList(c.getPlayer(), true));
            showCS(c);
        } else if (action == 12) {
            c.getPlayer().dropMessage(1, "This item is already in your inventory!");
            showCS(c);
        } else if (action == 31) {
            c.getPlayer().dropMessage(1, "You don't need this item any way");
            showCS(c);
        }

    }