您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
OpenTogetherTube penceresi
// ==UserScript== // @name Gartic.io OpenTogetherTube Embedder // @namespace http://tampermonkey.net/ // @version 2.1 // @description OpenTogetherTube penceresi // @author You // @match https://gartic.io/* // @match http://gartic.io/* // @grant none // ==/UserScript== (function() { 'use strict'; let iframe; let container; // Sayfa yüklendiğinde başlat if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initializeScript); } else { initializeScript(); } function initializeScript() { // Hemen pencereyi oluştur createFloatingWindow(); } function createFloatingWindow() { // Ana container container = document.createElement('div'); container.id = 'ott-container'; container.style.cssText = ` position: fixed; bottom: 20px; right: 20px; width: 480px; height: 350px; background: #1e1e1e; border: 2px solid #ff6b35; border-radius: 15px; z-index: 9999; box-shadow: 0 10px 30px rgba(0,0,0,0.5); resize: both; overflow: hidden; min-width: 350px; min-height: 250px; max-width: 1000px; max-height: 800px; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; `; // Header const header = document.createElement('div'); header.style.cssText = ` background: linear-gradient(135deg, #ff6b35, #f39c12); color: white; padding: 12px 15px; font-size: 13px; cursor: move; display: flex; justify-content: space-between; align-items: center; user-select: none; font-weight: 600; `; header.innerHTML = ` <span>🎵 OpenTogetherTube</span> <div> <button id="minimize-btn" style="background: #666; border: none; color: white; padding: 5px 10px; border-radius: 6px; cursor: pointer;">−</button> </div> `; // Content area const content = document.createElement('div'); content.id = 'ott-content'; content.style.cssText = ` width: 100%; height: calc(100% - 55px); position: relative; background: #2c2c2c; overflow: hidden; `; // Activation overlay const overlay = document.createElement('div'); overlay.id = 'activation-overlay'; overlay.style.cssText = ` position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(135deg, rgba(255,107,53,0.9), rgba(231,76,60,0.9)); display: flex; flex-direction: column; align-items: center; justify-content: center; z-index: 10; color: white; text-align: center; cursor: pointer; transition: all 0.3s ease; `; overlay.innerHTML = ` <div style="font-size: 60px; margin-bottom: 20px; animation: bounce 2s infinite;">🎵</div> <div style="font-size: 18px; font-weight: bold; margin-bottom: 10px;">OpenTogetherTube'u Başlat</div> <div style="font-size: 14px; opacity: 0.9; margin-bottom: 20px;">Video izlemek için tıklayın</div> <div style="padding: 12px 24px; background: rgba(255,255,255,0.2); border-radius: 25px; font-size: 14px; font-weight: 600;">BAŞLAT</div> `; // İframe oluştur iframe = document.createElement('iframe'); iframe.style.cssText = ` width: 100%; height: 100%; border: none; border-radius: 0 0 15px 15px; background: #000; `; iframe.setAttribute('allow', 'autoplay; fullscreen; microphone; camera; midi; encrypted-media; payment; clipboard-read; clipboard-write; web-share; picture-in-picture'); iframe.setAttribute('allowfullscreen', 'true'); // Elementleri birleştir content.appendChild(overlay); content.appendChild(iframe); container.appendChild(header); container.appendChild(content); document.body.appendChild(container); setupEventListeners(); showNotification('OpenTogetherTube hazır! Başlatmak için pencereye tıklayın.', 'info'); } function setupEventListeners() { // Ana aktivasyon document.getElementById('activation-overlay').addEventListener('click', function() { activatePlayer(); }); setupWindowControls(); } function activatePlayer() { const overlay = document.getElementById('activation-overlay'); overlay.style.opacity = '0'; setTimeout(() => { overlay.style.display = 'none'; }, 300); // 3131 odasına bağlan const fullUrl = 'https://opentogethertube.com/room/3131'; iframe.src = fullUrl; showNotification('OpenTogetherTube yükleniyor...', 'info'); } function setupWindowControls() { // Sürükleme const header = container.querySelector('div'); let isDragging = false; let dragOffset = { x: 0, y: 0 }; header.addEventListener('mousedown', function(e) { if (e.target.tagName === 'BUTTON') return; isDragging = true; dragOffset.x = e.clientX - container.offsetLeft; dragOffset.y = e.clientY - container.offsetTop; document.body.style.userSelect = 'none'; e.preventDefault(); }); document.addEventListener('mousemove', function(e) { if (!isDragging) return; const newLeft = Math.max(0, Math.min(window.innerWidth - container.offsetWidth, e.clientX - dragOffset.x)); const newTop = Math.max(0, Math.min(window.innerHeight - container.offsetHeight, e.clientY - dragOffset.y)); container.style.left = newLeft + 'px'; container.style.top = newTop + 'px'; }); document.addEventListener('mouseup', function() { isDragging = false; document.body.style.userSelect = ''; }); // Minimize/Maximize let isMinimized = false; document.getElementById('minimize-btn').addEventListener('click', function() { const content = document.getElementById('ott-content'); if (isMinimized) { content.style.display = 'block'; container.style.height = '350px'; this.textContent = '−'; isMinimized = false; } else { content.style.display = 'none'; container.style.height = '55px'; this.textContent = '+'; isMinimized = true; } }); } function showNotification(message, type = 'info') { const notification = document.createElement('div'); notification.style.cssText = ` position: fixed; top: 20px; right: 20px; padding: 15px 20px; border-radius: 10px; color: white; font-family: 'Segoe UI', sans-serif; font-size: 13px; font-weight: 500; z-index: 10001; max-width: 300px; box-shadow: 0 8px 25px rgba(0,0,0,0.3); opacity: 0; transform: translateY(-20px); transition: all 0.3s ease; `; const colors = { success: '#27ae60', warning: '#f39c12', error: '#e74c3c', info: '#3498db' }; notification.style.background = colors[type] || colors.info; notification.textContent = message; document.body.appendChild(notification); requestAnimationFrame(() => { notification.style.opacity = '1'; notification.style.transform = 'translateY(0)'; }); setTimeout(() => { notification.style.opacity = '0'; notification.style.transform = 'translateY(-20px)'; setTimeout(() => notification.remove(), 300); }, 4000); } // CSS const style = document.createElement('style'); style.textContent = ` @keyframes bounce { 0%, 20%, 50%, 80%, 100% { transform: translateY(0); } 40% { transform: translateY(-20px); } 60% { transform: translateY(-10px); } } #ott-container button { transition: all 0.2s ease; } #ott-container button:hover { opacity: 0.85; transform: scale(1.05); } #activation-overlay:hover { transform: scale(1.02); } #ott-container { backdrop-filter: blur(10px); } `; document.head.appendChild(style); console.log('Gartic.io OpenTogetherTube Script yüklendi!'); })();