fakelush

fake love lush driver

Dovrai installare un'estensione come Tampermonkey, Greasemonkey o Violentmonkey per installare questo script.

Dovrai installare un'estensione come Tampermonkey o Violentmonkey per installare questo script.

Dovrai installare un'estensione come Tampermonkey o Violentmonkey per installare questo script.

Dovrai installare un'estensione come Tampermonkey o Userscripts per installare questo script.

Dovrai installare un'estensione come ad esempio Tampermonkey per installare questo script.

Dovrai installare un gestore di script utente per installare questo script.

(Ho già un gestore di script utente, lasciamelo installare!)

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

(Ho già un gestore di stile utente, lasciamelo installare!)

// ==UserScript==
// @name        fakelush
// @description fake love lush driver
// @namespace   lovelush goes droopy
// @include     https://*.strip.chat*
// @include     https://*.strip.chat*
// @include     https://*.strip.chat*
// @include     https://*.strip.chat*
// @version     1.1
// @grant       none
// ==/UserScript==

// fake lovelush driver


        var busy=false;
        var tipque = [];

        t1=3;
        t2=10;
        t3=30;
        t4=60;
        t5=130;

        l1=15;
        l2=99;
        l3=499;
        l4=999;
        l5=10000;

        a1="Low vibrations";
        a2="Low vibrations";
        a3="Medium vibrations";
        a4="Medium vibrations";
        a5="High vibrations";

        p1="--------Lovense Toys respond to tips. Models can create their own levels. Here are my levels:";
        p2="--------[1 to "+l1+" tokens] = "+t1+" SECONDS ("+a1+").";
        p3="--------["+(l1+1)+" to "+l2+" tokens] = "+t2+" SECONDS ("+a2+").";
        p4="--------["+(l2+1)+" to "+l3+" tokens] = "+t3+" SECONDS ("+a3+").";
        p5="--------["+(l3+1)+" to "+l4+" tokens] = "+t4+" SECONDS ("+a4+").";
        p6="--------["+(l4+1)+" to "+l5+" tokens] = "+t5+" SECONDS ("+a5+").";

        title="Lovense Lush : Device that vibrates longer at your tips and gives me pleasures.";

        place=document.getElementById("defchat").getElementsByClassName('section')[0].nextSibling;
        info=document.createElement('div');
        info.style.textAlign="right";
        info.style.margin="10px";
        info.innerHTML='<b>lush on/off</b><input type="checkbox" id="onoff">';
        document.getElementById("defchat").insertBefore(info,place);
        document.getElementById("onoff").addEventListener('change',function(){onoff();}, false);

        function onoff(){
            if (document.getElementById("onoff").checked){turnon()}
            else{turnoff()}
        }

        function turnon(){
            getchat();
            t=setInterval(function(){ tipout() }, 500);
            u=setInterval(function(){ promo() }, 300000);
            promo();
            if (document.getElementById("roomtitle").innerHTML.indexOf("Lovense Lush :")==-1){
                setTimeout(function(){settit(title)},1000);
            }
        }

        function turnoff(){
            ws_handler.consolelog=oldFunction;
            oldFunction="";
            clearInterval(t);
            clearInterval(u);
            tipque = [];
            busy=false;
        }


        function getchat(){
            oldFunction=ws_handler.consolelog;
            ws_handler.consolelog = function(msg2){
                if (msg2['method']){
                    if (msg2['method']=='onNotify'){
                        argm=JSON.parse(msg2.args[0]);
                        if (argm.type=="tip_alert"){
                            amount=argm.amount;
                            user=argm.from_username;
                            tipque.push(amount+";"+user);
                        }
                    }
                }
            return oldFunction(msg2);
            }
        }

        function tipout(){
            if (busy==true){return}
            if (tipque.length==0){return}
            busy=true;
            tipque.reverse();
            tipinfo=tipque.pop();
            tipque.reverse();
            tipinfop=tipinfo.split(";");
            process(tipinfop[1],Number(tipinfop[0]));
        }

        function process(tipper,tokens){
            ttime=t5;
            if (tokens<l4+1){ttime=t4}
            if (tokens<l3+1){ttime=t3}
            if (tokens<l2+1){ttime=t2}
            if (tokens<l1+1){ttime=t1}
            message="********My LOVENSE toy is now reacting to "+tipper+"'s tip. It will stop after "+ttime+" seconds!!";
            msend(message);
            document.getElementById("roomtitle").style.backgroundColor = "red";
            setTimeout(function(){ document.getElementById("roomtitle").style.backgroundColor = "white";busy=false }, ttime*1000);
        }

        function promo(){
            msend (p1);
            msend (p2);
            msend (p3);
            msend (p4);
            msend (p5);
            msend (p6);
        }

        function msend(message){
            window.defchat_settings.handler.message_outbound.send_room_message(message, '', '');
        }

        function settit(titlemsg){
            window.defchat_settings.handler.message_outbound.send_change_title(titlemsg);
        }