// ---------- CONFIGURATION ---------- /* Adjust any of these values to suit your preferences */ const CONFIG = // Colors (RGB values) COLOR_PRIMARY: r: 255, g: 0, b: 0 , // Red (first flash) COLOR_SECONDARY: r: 0, g: 0, b: 255 , // Blue (second flash)
// Which devices should react? (true = include) TARGETS: mouse: true, keyboard: true, headset: true, lightStrip: true // Any G‑Series RGB strip ,
// 1️⃣ Play sound immediately playSound(); V.G Hub SharkBite 1 Script
// Audio cue (must be .wav or .mp3 in same folder) SOUND_PATH: "sharkbite.wav",
// ------------------------------------------------------------ // Core routine – the actual "shark bite" flash function doSharkBite() if (isRunning) return; // ignore if already in progress isRunning = true; // ---------- CONFIGURATION ---------- /* Adjust any of
// ---------- INTERNAL STATE ---------- let isRunning = false; // prevents overlapping runs
// ------------------------------------------------------------ // Helper: set all zones on a device to a specific color function setDeviceColor(device, color) // device is an object passed by G Hub (mouse, keyboard, etc.) // Each device can have multiple zones; we iterate them all. for (let zone of device.zones) zone.setColor(color.r, color.g, color.b); // 1️⃣ Play sound immediately playSound()
// 2️⃣ Flash Primary color if (CONFIG.TARGETS.mouse) setDeviceColor(GHub.mouse, CONFIG.COLOR_PRIMARY); if (CONFIG.TARGETS.keyboard) setDeviceColor(GHub.keyboard, CONFIG.COLOR_PRIMARY); if (CONFIG.TARGETS.headset) setDeviceColor(GHub.headset, CONFIG.COLOR_PRIMARY); if (CONFIG.TARGETS.lightStrip) setDeviceColor(GHub.lightStrip, CONFIG.COLOR_PRIMARY);