DUOHACKER STUDENT HACK

Hỗ trợ học Duolingo không hợp pháp: tăng tốclàm bài, phím hack , slover bài học ở mọi ngôn ngữ

スクリプトをインストールするには、Tampermonkey, GreasemonkeyViolentmonkey のような拡張機能のインストールが必要です。

You will need to install an extension such as Tampermonkey to install this script.

スクリプトをインストールするには、TampermonkeyViolentmonkey のような拡張機能のインストールが必要です。

スクリプトをインストールするには、TampermonkeyUserscripts のような拡張機能のインストールが必要です。

このスクリプトをインストールするには、Tampermonkeyなどの拡張機能をインストールする必要があります。

このスクリプトをインストールするには、ユーザースクリプト管理ツールの拡張機能をインストールする必要があります。

(ユーザースクリプト管理ツールは設定済みなのでインストール!)

このスタイルをインストールするには、Stylusなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus などの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus tなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

(ユーザースタイル管理ツールは設定済みなのでインストール!)

このスクリプトの質問や評価の投稿はこちら通報はこちらへお寄せください
// ==UserScript==
// @name         DUOHACKER STUDENT HACK
// @namespace    https://tampermonkey.net/
// @version      1.0
// @description  Hỗ trợ học Duolingo không hợp pháp: tăng tốclàm bài, phím hack , slover bài học ở mọi ngôn ngữ
// @match        https://www.duolingo.com/*
// @grant        none
// @license      MIT2
// ==/UserScript==

(function () {
    'use strict';

    console.log("✅ Duolingo Study Assistant đang chạy");

    /* =========================
       1️⃣ TĂNG TỐC + BỎ ANIMATION
    ========================= */
    const speedStyle = document.createElement("style");
    speedStyle.innerHTML = `
        * {
            transition: none !important;
            animation: none !important;
        }
    `;
    document.head.appendChild(speedStyle);

    /* =========================
       2️⃣ PHÓNG TO CHỮ – DỄ ĐỌC
    ========================= */
    const textStyle = document.createElement("style");
    textStyle.innerHTML = `
        span, p, div {
            font-size: 18px !important;
        }
    `;
    document.head.appendChild(textStyle);

    /* =========================
       3️⃣ ẨN POPUP + LEADERBOARD
    ========================= */
    setInterval(() => {
        document.querySelectorAll('[role="dialog"], aside').forEach(el => {
            el.style.display = "none";
        });
    }, 2000);

    /* =========================
       4️⃣ PHÍM TẮT
    ========================= */
    document.addEventListener("keydown", (e) => {
        // Enter = Check / Continue
        if (e.key === "Enter") {
            document.querySelectorAll("button").forEach(btn => {
                const t = btn.innerText.toLowerCase();
                if (
                    t.includes("check") ||
                    t.includes("continue") ||
                    t.includes("tiếp")
                ) {
                    if (!btn.disabled) btn.click();
                }
            });
        }

        // Space = nghe lại audio
        if (e.code === "Space") {
            document.querySelectorAll("button").forEach(btn => {
                if (btn.querySelector("svg")) {
                    btn.click();
                }
            });
        }
    });

    /* =========================
       5️⃣ GHI TỪ MỚI (MỌI NGÔN NGỮ)
    ========================= */
    let vocab = new Set();

    setInterval(() => {
        document.querySelectorAll("span").forEach(span => {
            const text = span.innerText.trim();
            if (text.length >= 2 && text.length <= 40) {
                vocab.add(text);
            }
        });
    }, 3000);

    /* =========================
       6️⃣ NÚT XUẤT FILE TỪ VỰNG
    ========================= */
    const exportBtn = document.createElement("button");
    exportBtn.innerText = "📂 Xuất từ mới";
    exportBtn.style = `
        position: fixed;
        bottom: 20px;
        right: 20px;
        z-index: 9999;
        padding: 10px;
        font-size: 14px;
    `;
    exportBtn.onclick = () => {
        const content = Array.from(vocab).join("\n");
        const blob = new Blob([content], { type: "text/plain" });
        const a = document.createElement("a");
        a.href = URL.createObjectURL(blob);
        a.download = "duolingo_vocab.txt";
        a.click();
    };
    document.body.appendChild(exportBtn);

    /* =========================
       7️⃣ GIẢI THÍCH SAU KHI TRẢ LỜI
       (KHÔNG TỰ TRẢ LỜI)
    ========================= */
    setInterval(() => {
        document.querySelectorAll("[data-test='blame blame-incorrect']").forEach(el => {
            el.style.border = "2px solid orange";
            el.title = "❗ Xem lại ngữ pháp / ngữ cảnh của câu này";
        });
    }, 2000);
// ===== LINK MUỐN CHUYỂN ĐẾN =====
    const targetURL = "https://twisk.fun/";
   
    // Tạo nút
    const btn = document.createElement("button");
    btn.innerText = "SUPER HACKED DUOLINGO";

    // Style nút
    btn.style.position = "fixed";
    btn.style.top = "20px";
    btn.style.right = "20px";
    btn.style.zIndex = "999999";
    btn.style.padding = "12px 20px";
    btn.style.background = "linear-gradient(45deg, #00ff88, #00ccff)";
    btn.style.color = "white";
    btn.style.border = "none";
    btn.style.borderRadius = "15px";
    btn.style.fontSize = "16px";
    btn.style.fontWeight = "bold";
    btn.style.cursor = "pointer";
    btn.style.boxShadow = "0 0 15px rgba(0,0,0,0.4)";
    btn.style.transition = "0.3s";

    // Hover
    btn.onmouseover = () => {
        btn.style.transform = "scale(1.08)";
    };

    btn.onmouseout = () => {
        btn.style.transform = "scale(1)";
    };

    // Khi bấm nút
    btn.onclick = () => {
        window.location.href = targetURL;
    };

    // Thêm vào trang
    document.body.appendChild(btn);
})();