Apps Home
|
Create an App
OS
Author:
rubbinh00d
Description
Source Code
Launch App
Current Users
Created by:
Rubbinh00d
var za = ["\u2591", "\u2592", "\u2588"], Aa = ["\u2591\u2009", "\u2592\u2009", "\u2588\u2009"], Ba = ["\u2002|", "\u2584\u2009|", "\u2588\u2009"]; ! function () { function Za(a, b) { var d = ia(b.toLowerCase()), c = d[0]; return "goal" == c ? function (a, b, d) { if (1 == b.length) return y(a); var c = b[1]; if (q && 2 == b.length && (!isNaN(parseInt(c)) || 0 <= ["counter", "single", "multi", "init"].indexOf(c))) return void h(a, "\n \u25a0 Non updatable parameter when Goal is running. \n(Only Description is updatable).\n \u25a0 Use " + k("/goal off") + " to stop running the Goal."); if ("off" == c && 2 == b.length) return h(a, "\nGoal Feature is confirmed OFF."), m = q = !1, "", cb.drawPanel(), cb.changeRoomSubject(""), y(a); if ("on" == c && 2 == b.length) return q ? void h(a, "\nGoal is already ON (Running).\n") : La(a); if ("init" == c && 2 == b.length) return l = cb.settings.setRemaining, e = goalModeList[cb.settings.goalMode].mode, W = cb.settings.goalSubject, h(a, "\nInitial Goal Parameters have been settled back."), y(a); var f = parseInt(c); if (2 != b.length || isNaN(f)) if (2 == b.length && "counter" == c) a = (e = "COUNTER", h(a, '\nGoal-Mode has been settled at "COUNTER".\n \u25a0 (Tips Counter : Goal-Amount will not be used.)'), y(a, 2)); else if (2 == b.length && "single" == c) a = (e = "SINGLE", h(a, '\nGoal-Mode has been settled at "SINGLE".'), y(a, 2)); else if (2 == b.length && "multi" == c) a = (e = "MULTI", h(a, '\nGoal-Mode has been settled at "MULTI".'), y(a, 2)); else if (0 <= "on off single multi counter init".split(" ").indexOf(c)) a = "Goal description can't begin by :\n on / off / single / multi / counter / init "; else { b = d.substring(5); d = ia(b = (b = b.replace(/\[/g, "")).replace(/\]/g, "")); for (c = 0; c < d.length; c++) ":" == d[c][0] && 1 < d[c].length && (b = b.replace(d[c], "")); a = (W = b, h(a, "\nNew Goal-Description has been settled."), q && !m && Ma(), void y(a, 3)) } else a = 0 >= f ? 'Goal amount must be >0.\n (It will not be used in mode "COUNTER").' : (l = f, h(a, "\nNew Goal-Amount has been settled."), y(a, 1)); return a }(a, d, b) : "sum" == c ? function (a) { if (0 == Na) return h(a, "SUMMARY : No Tipper yet."); var b = Ca(5), c = $a, d = "[hms]", f = (new Date).getTime(), e = (f - c) / 1E3, g = e / 86400; f = (e - 86400 * (g = 1 <= g ? g - g % 1 : 0)) / 3600; f -= f % 1; c = e % 3600 / 60; e = e % 3600 - 60 * (c -= c % 1); e -= e % 1; g = 0 < g ? r(g, "Day$ ") : ""; var l = 10 > f ? "0" + f : f, m = 10 > c ? "0" + c : c, p = 10 > e ? "0" + e : e, q = g + l + ":" + m + ":" + p; f = (d = (d = (d = (d = (d = d.replace("day", g)).replace("hour", "00" == l ? "" : r(f, "hour$ "))).replace("minute", "00" == m ? "" : r(c, "minute$ "))).replace("seconde", "00" == p ? "" : e + " sec")).replace("hms", q)).replace(/ /g, "") ? d : "00"; d = "\n" + b + "\n [ " + Da + " ] \n" + b + "\n \u25a0 RunningTime : " + f + "\n \u25a0 SUMMARY (since the App Started) :"; f = " \u2981 " + r(ja, "Tipper$ / ") + r(Math.round(Ea / ja), "token$ by Tipper.") + "\n \u2981 Highest Tipper : " + k(Oa) + " : " + r(Fa, "Token$.") + "\n \u2981 Highest Tip : " + k(Pa) + " : " + r(Ga, "Token$."); b = "" + b + "\n \u25a0 Total received : " + r(Ea, "Token$.") + "\n" + b + "\n \u25a0 " + k("/sum") + " to display a Summary again."; h(a, d); cb.sendNotice(f, a, "", N, "normal"); h(a, b) }(a) : "token" == c ? 1 == d.length ? h(a, "\nToken Received Setting is : " + (v ? "ON" : "OFF") + "\n \u2981 " + k("/token on") + " : Display the Total Tokens received in Panel.\n \u2981 " + k("/token off") + " : Stop display the Total Tokens received.\n") : "on" == d[1] ? v ? h(a, "Token Received Display already ON") : (v = !0, h(a, "Token Received Display settled ON."), void(q && ta())) : "off" == d[1] ? v ? (v = !1, q && ta(), void h(a, "Token Received Display settled OFF.")) : h(a, "Token Received Display already OFF") : "Format : " + k("/token <on/off>") : "block" == c ? (ka = !0, ua = "#FFFFFF", va = "#FFFFFF", la = "#FFFFFF", O = "#FFFFFF", p = [0, 0], P = [0, 0, 0], z = [0, 0, 0], X = [0, 0], Q = [0, 0, 0], t = [0, 0, 0], R = Y = ma = na = Z = 0, wa = w = A = L = M = "", cb.drawPanel(), !1) : void 0 } function Qa(a, b) { Na += 1; Ea += b; var d, c, f = (a in oa ? oa[a].sum += b : oa[a] = { sum: b, num: ++ja }, oa[a].sum); if (Fa < f && (Fa = f, Oa = a), Ga < b && (Ga = b, Pa = a), q) u += b, f = (c = aa = b, (d = ba = a) in ca ? ca[d].sum += c : ca[d] = { sum: c, num: ++Ra }, ca[d].sum), S < f && (S = f, T = a), Ha < b && (Ha = b, a), "COUNTER" != e && ("SINGLE" != e || m ? "MULTI" == e && function (a, b) { B -= b; var c = Math.floor(b / l); if (C += c += 0 >= B + c * l ? 1 : 0, B += c * l, c) c = 1 == c ? " Goal " + C : " Goals " + (C - c + 1) + _0x4605(2 == c ? "0x7c" : "0x7d") + C, h("", " \u25a0 \u25a0 \u25a0 " + k(a) + " reached " + c + " \u25a0 \u25a0 \u25a0 ", "#DC5500") }(a, b) : function (a) { 0 < (B -= a) || (q = !(m = !0), cb.changeRoomSubject(Sa + " Goal reached : " + W + " " + D), a = Ca(6), h("", a + "\nGoal Reached : Thank you so much.\n" + a, "#DC5500"), h(pa, "\n" + pa + " : \n \u25a0 Use " + k("/sum") + " for a Total Summary Board.\n")) }(b)), ta(); if ("Yes" == cb.settings.autoThanks) { d = parseInt(cb.settings.levelMax); for (f = c = 1; f < d + 1; f++) { if (cb.settings["level" + f + "Tip"] > b) { c = f - 1; break } f == d && (c = f) }(0 < c && "Yes" == cb.settings.autoThanksLevel1 || 1 < c && "No" == cb.settings.autoThanksLevel1) && cb.chatNotice(cb.settings["level" + (4 < c ? "5" : c) + "Thanks"], "", "#FFFFFF", Ia[cb.settings["level" + (4 < c ? "5" : c) + "Color"]].c, "bold") } } function La(a) { m = !(q = !0); B = l; ca = {}; T = ba = ""; Ha = S = aa = Ra = u = C = 0; ab++ && y(a); Ma(); ta() } function Ta() { if (ka) return !1; "Classic Panel" != cb.settings.panel_image && xa ? (M = "MVP", L = "Last", A = "Device ready", w = "Start playing", X = [ma = 9, ma], Q = [Y = 30, Y, Y], t = [R = 50, R, R], p = [20, 45], P = [5, 34, 132], z = [5, 34, 132], E = 14, Z = -1 != ["Revised", "Modern", "Classic"].indexOf(g) ? 25 : 22, na = 12) : (A = "Start Playing", w = "COUNTER" != e || u ? "Start Playing" : "", M = "Best Lover", L = "Last Kiss"); "Lovense Dream" == cb.settings.panel_image && xa ? (X = [34, 34], Q = [2, 15, 15], t = [53, 53, 53], P = [128, 104, 190], p = "COUNTER" == e ? [12, 40] : [14, 40], z = [14, 72, 190], ua = "#f82da0", va = "#364364", la = "#364364", O = "#f82da0", M = " \u2665 Best Lover \u2665 ", L = "Last Kiss", w = A = "", qa = 12, da = 17, Z = "Stars" == g ? -3 : -1, na = "Stars" == g ? 5 : 1, barStyle.Revised.max = 15, barStyle.Modern.max = 15, barStyle.Classic.max = 19, barStyle.Stars.max = 10, barStyle.Hearts.max = 11, wa = "fb634bb8-d386-49b5-a9d5-fe164c644f6e") : "Lovense Dream" == cb.settings.panel_image && (X = [ma = 34, ma], Q = [2, Y = 15, Y], t = [R = 53, R, R], P = [152, 128, 214 ], p = "COUNTER" == e ? [22, 50] : [24, 50], z = [24, 82, 203], ua = "#f82da0", va = "#364364", la = "#364364", O = "#f82da0", M = " \u2665 Best Lover \u2665 ", L = "Last Kiss", w = A = "", qa = 12, da = 17, Z = "Stars" == g ? -5 : -1, -1 != ["Revised", "Modern", "Classic"].indexOf(g) && Z--, na = "Stars" == g ? 22 : 15, barStyle.Revised.max = 18, barStyle.Modern.max = 18, barStyle.Classic.max = 22, barStyle.Stars.max = 12, barStyle.Hearts.max = 13, wa = "14b9f530-4ba2-462c-b0f2-994c60c970ad") } function U() { return Ja[cb.settings.activeToy].text } function bb(a) { var b = parseInt(cb.settings.levelMax); switch (parseInt(a)) { case 1: return ":ldreamlev1lo"; case 2: return 5 == b ? ":ldreamlev2me" : ":ldreamlev2lo"; case 3: return ":ldreamlev3me"; case 4: return 5 == b ? ":ldreamlev4hi" : ":ldreamlev4me"; case 5: return 8 > b ? ":ldreamlev5hi" : ":ldreamlev5me"; case 6: return 9 == b ? ":ldreamlev6me" : ":ldreamlev6hi"; default: return ":ldreamlev" + a + "hi" } } function Ma() { var a = Sa; "COUNTER" != e && (a += ("SINGLE" == e ? " - Goal is : " : " - Multi-Goal : ") + W); cb.changeRoomSubject(a + " " + D) } function ta() { return !ka && (m ? (F = "", G = "Goal Reached - Thanks all !!", H = "Lovense Dream" == cb.settings.panel_image ? I(T, 12) : I(T), J = S + "tk", K = I(ba, da || E), V = aa + "tk", cb.drawPanel()) : q ? "COUNTER" == e ? (u ? (F = v ? r(ja, "Lover$") : U(), G = v ? r(u, "Token$ Received") : r(ja, "Lover$"), H = I(T, qa || E), J = S + "tk", K = I(ba, da || E), V = aa + "tk") : (F = U(), G = "Device is ready!", A, w), cb.drawPanel()) : "MULTI" == e ? (F = "Goal " + ("Classic Panel" == cb.settings.panel_image ? "#" : "") + (C + 1) + ":", G = l - B + " / " + l + " [ " + B + " Remaining ]" + (v && "Classic Panel" == cb.settings.panel_image && 1 <= C ? " (" + u + ")" : ""), V = u ? (H = I(T, qa || E), J = S + "tk", K = I(ba, da || E), aa + "tk") : (H = A, K = w, J = ""), cb.drawPanel()) : "SINGLE" == e ? (F = "Goal :", G = u + " / " + l + " [ " + B + " Remaining ]", V = u ? (H = I(T, qa || E), J = S + "tk", K = I(ba, da || E), aa + "tk") : (H = A, K = w, J = ""), cb.drawPanel()) : void 0 : cb.drawPanel()) } function y(a, b) { var d = ""; l == cb.settings.setRemaining && e == goalModeList[cb.settings.goalMode].mode && W == cb.settings.goalSubject || (d = " \u25a0 " + k("/goal init") + " if you want to restaure initial settings.\n"); var c = Ca(7), f = "\n" + c + "\nGoal Parameters :\n", g = (1 == b ? " \u25b6 " : " \u25a0 ") + "Amount : " + k("/goal <X>") + " : " + l + "\n" + (2 == b ? " \u25b6 " : " \u25a0 ") + "Mode : " + k("/goal [ single / multi / counter ]") + " : " + e + "\n" + (3 == b ? " \u25b6 " : " \u25a0 ") + "Goal is : " + k("/goal <description>") + " : " + W + "\n \u25a0 Run goal : " + k("/goal [ on / off ]") + " : " + (q ? "ON" : "OFF") + (m ? " - (Goal Reached) " : "") + "\n"; d = (q ? "Goal is ON (Running).\n \u25a0 Description (only) is updatable.\n \u25a0 " + k("/goal off") + " to stop running the goal.\n" : "Goal is OFF " + (m ? "(Goal Reached). " : ".") + "\n" + (m ? " \u25a0 (" + k("/goal off") + " if you want to clear the screen.)\n" : "") + " \u25a0 All parameters are updatable.\n" + d + " \u25a0 " + k("/goal on") + " to run the Goal.\n") + c + "\n"; h(a, f); cb.sendNotice(g, a, "", N, "normal"); h(a, d) } function I(a, b) { return a.substring(0, (d = a, c = b || E, f = Math.ceil(d.substring(0, c + 3).replace(/[^(i|l|j)]/g, "").length / 2 + d.substring(0, c + 3).replace(/[^(t|r)]/g, "").length / 4), e = Math.floor(d.substring(0, c + 3).replace(/[^m|w]/g, "").length / 2 + d.substring(0, c + 3).replace(/[^(0|1|2|3|4|5|6|7|8|9|n|d|o|e|h|g|p|q)]/g, "").length / 9), Math.max(9, c + f - e))); var d, c, f, e } function h(a, b, d) { d = d || N; d = ya.includes(a) ? "#000000" : d; cb.sendNotice(b, a, "", d, "bolder") } function ia(a) { return a.trim().replace(/\s+/g, " ").split(" ") } function Ca(a) { var b = ""; for (a *= 5; a--;) b += " \u2500"; return b } function k(a) { return ' "' + a + '"' } function r(a, b) { return a + " " + b.replace("$", 1 < a ? "s" : "") } function Ua() { if (!ka) { for (; 0 == cb.settings["notice" + (ea + 1)];) ea++, ea %= 4; var a = cb.settings["notice" + (ea + 1)]; ea++; ea %= 4; cb.sendNotice(a, "", "", Va, "bold"); cb.setTimeout(Ua, 6E4 * cb.settings.messageTimer) } } function Wa() { "Yes" != cb.settings.specialEnable || "No" == cb.settings.specialSplit ? cb.sendNotice(ra, "", "", N, "bold") : sa && "specials" != sa ? "levels" == sa && (cb.sendNotice(fa, "", "", N, "bold"), sa = "specials") : (cb.sendNotice(ra, "", "", N, "bold"), sa = "levels"); cb.setTimeout(Wa, 6E4 * cb.settings.toymenuTimer) } function Xa(a, b, d, c, f, e, g) { return !!(b && Number.isInteger(a) && 0 < a) && (setTimeout(function () { cb.sendNotice(b, d, c, f, e, g) }, a), !0) } var Ia = { "General Display Color": { c: "" }, Amaranth: { c: "#E61E64" }, Black: { c: "#000000" }, Blue: { c: "#6900CC" }, Brown: { c: "#9F000F" }, Olive: { c: "#9FA64E" }, Eucalyptus: { c: "#2B886D" }, Green: { c: "#296C28" }, Pink: { c: "#F77FBE" }, Red: { c: "#ff3232" }, Purple: { c: "#943293" }, Rose: { c: "#f42cbe" }, Orange: { c: "#DC5500" }, RedViolet: { c: "#BC156C" }, SlateGrey: { c: "#708090" }, Turquoise: { c: "#1ba0a2" }, Violet: { c: "#9F02D4" } }, Ja = { "Lovense Lush": { icon: ":lushsm", text: "Lovense Lush" }, "Lovense Domi": { icon: ":domismall3", text: "Lovense Domi" }, "Lovense Nora": { icon: ":norasmall", text: "Lovense Nora" }, "Lovense Hush": { icon: ":hushsm", text: "Lovense Hush" }, Ohmibod: { icon: ":ohmibodsm1", text: "Ohmibod" }, "Other/None": { icon: "\u2192", text: "My Lovense" } }; barStyle = {}; barStyle.Classic = { black: za[2], gray: za[1], white: za[0], max: 13, size: 8 }; barStyle.Revised = { black: Aa[2], gray: Aa[1], white: Aa[0], max: 10, size: 8 }; barStyle.Modern = { black: Ba[2], gray: Ba[1], white: Ba[0], max: 10, size: 8 }; barStyle.Stars = { black: " \u2605 ", gray: "", white: " \u2606 ", max: 7, size: 11 }; barStyle.Hearts = { black: " \u2665 ", gray: "", white: " \u2661", max: 8, size: 11 }; var F, G, H, J, K, V, Ka = [{ name: "Random", icon: ":ldreamrandom" }, { name: "Wave", icon: ":ldreamwave" }, { name: "Pulse", icon: ":ldreampulse" }, { name: "Earthquake", icon: ":ldreamearth" }, { name: "Fireworks", icon: ":ldreamfireworks" }], Ya = { "/goa": { cmd: "goal" }, "!goa": { cmd: "goal" }, "/sum": { cmd: "sum" }, "!sum": { cmd: "sum" }, "/tok": { cmd: "token" }, "!tok": { cmd: "token" }, "!block": { cmd: "block" } }; goalModeList = { "NO (next info will not be used)": { m: "COUNTER" }, "Single Goal": { m: "SINGLE" }, "Multi Goals (Repeated)": { m: "MULTI" } }; var Da = "", ka = !1, pa = cb.room_slug, ya = [], $a = (new Date).getTime(), ha = [], N = "#6900CC", Va = "#6900CC", xa = ("#2x", !1), Ea = 0, Na = 0, ba = "", aa = 0, T = "", S = 0, ca = {}, Ha = 0, oa = {}, ja = 0, Fa = 0, Oa = "", Ga = (cb.settings.Auto1, cb.settings.level1Thanks, cb.settings.level2Thanks, cb.settings.level3Thanks, cb.settings.level4Thanks, cb.settings.level5Thanks, cb.settings.level6Thanks, cb.settings.level7Thanks, cb.settings.level8Thanks, 0), Pa = "", v = "Not displayed" != cb.settings.tokenOn, e = "", x = "Display progress bar" == cb.settings.progressOn ? 1 : 0, g = cb.settings.progressType, W = cb.settings.goalSubject, l = parseInt(cb.settings.setRemaining), q = !0, m = !1, C = 0, B = l, u = 0, Ra = 0, ab = 0, D = "", Sa = cb.settings.roomSubjectNew, ea = 0, ua = "", va = "", la = "", O = "", M = "", L = "", A = "", w = "", p = [0, 0], P = [0, 0, 0], z = [0, 0, 0], X = [0, 0], Q = [0, 0, 0], t = [0, 0, 0], Z = 0, na = 0, ma = 0, Y = 0, R = 0, wa = "", ra = (cb.settings.levelDisplay, cb.settings.toymenuTimer, ""), fa = "", sa = "", E = 14, qa = 0, da = 0; cb.settings_choices = [{ name: "activeToy", label: "1. LOVENSE DEVICE ........... What toy are you using?", type: "choice", choice1: "Lovense Lush", choice2: "Lovense Domi", choice3: "Lovense Nora", choice4: "Lovense Hush", choice5: "Ohmibod", choice6: "Other/None", "default": "Lovense Lush" }, { name: "roomSubjectNew", label: "2. ROOM SETTINGS ................. Room Subject", type: "str", minLength: 1, maxLength: 150, required: !0, defaultValue: "My Lovense :: Device that vibrates longer at your tips and gives me pleasure" }, { name: "tags", label: "Tags (#) ", type: "str", minLength: 1, maxLength: 120, required: !1, defaultValue: "Lovense" }, { name: "panel_image", label: "3. PANEL SETTINGS .......... What panel will you use?", type: "choice", choice1: "No Panel", "default": "Lovense Dream" }, { name: "tokenOn", label: "Tokens", type: "choice", choice1: 'Display "Total Received" in Panel', choice2: "Not displayed", "default": 'Display "Total Received" in Panel' }, { name: "progressOn", label: "Progress bar", type: "choice", choice1: "Display progress bar", choice2: "Display last tipper", "default": "Display progress bar" }, { name: "progressType", label: "Progress bar style", type: "choice", choice1: "Classic", choice2: "Revised", choice3: "Modern", choice4: "Stars", choice5: "Hearts", "default": "Stars" }, { name: "goalMode", label: "4. GOAL SETTINGS ........... Will you use a Goal", type: "choice", choice1: "NO (next info will not be used)", choice2: "Single Goal", choice3: "Multi Goals (Repeated)", "default": "Multi Goals (Repeated)" }, { name: "goalSubject", label: "Goal is ....", type: "str", minLength: 1, maxLength: 200, required: !0, defaultValue: "A surprise" }, { name: "setRemaining", label: "Amount", type: "int", minValue: 0, maxValue: 9999999, defaultValue: 500 }, { name: "levelDisplay", label: "5. LEVELS SETTINGS .............. Display Levels in the room?", type: "choice", choice1: "Yes", choice2: "No (Skip to section 6)", defaultValue: "Yes", required: !0 }, { name: "levelMax", label: "Number of levels to display", type: "choice", choice1: 5, choice2: 6, choice3: 7, choice4: 8, choice5: 9, defaultValue: 5 }, { name: "levelColor", label: "Levels display Color", type: "choice", choice1: "Amaranth", choice2: "Black", choice3: "Blue", choice4: "Brown", choice5: "Eucalyptus", choice6: "Green", choice7: "Pink", choice8: "Purple", choice9: "Olive", choice10: "Orange", choice11: "Red", choice12: "RedViolet", choice13: "Rose", choice14: "SlateGrey", choice15: "Turquoise", choice16: "Violet", defaultValue: "SlateGrey" }, { name: "toymenuTimer", label: "Interval (in mins) to display levels", type: "int", minValue: 1, maxValue: 60, defaultValue: 4, required: !0 }, { name: "levelsTitle", label: "Title of levels notification", type: "str", minLength: 1, maxLength: 1E3, defaultValue: "Interactive Toy That Responds to Your Tips", required: !0 }, { name: "levelSubTitle", label: "Subtitle of levels notification", type: "str", minLength: 1, maxLength: 1E3, defaultValue: "Durations and Intensity Levels", required: !0 }, { name: "level1Tip", label: "[ Level 1 ] :: Minimum tokens", type: "int", minValue: 1, maxValue: 1E4, defaultValue: 1, required: !0 }, { name: "level1Time", label: "Reaction time (seconds)", type: "int", minValue: 1, maxValue: 1E4, defaultValue: 2, required: !0 }, { name: "level1Intensity", label: "Intensity", type: "choice", choice1: "Low", choice2: "Medium", choice3: "High", choice4: "Ultra high", defaultValue: "Low", required: !0 }, { name: "level2Tip", label: "[ Level 2 ] :: Minimum tokens", type: "int", minValue: 1, maxValue: 1E4, defaultValue: 15, required: !0 }, { name: "level2Time", label: "Reaction time (seconds)", type: "int", minValue: 1, maxValue: 1E4, defaultValue: 5, required: !0 }, { name: "level2Intensity", label: "Intensity", type: "choice", choice1: "Low", choice2: "Medium", choice3: "High", choice4: "Ultra high", defaultValue: "Low", required: !0 }, { name: "level3Tip", label: "[ Level 3 ] :: Minimum tokens", type: "int", minValue: 1, maxValue: 1E4, defaultValue: 100, required: !0 }, { name: "level3Time", label: "Reaction time (seconds)", type: "int", minValue: 1, maxValue: 1E4, defaultValue: 10, required: !0 }, { name: "level3Intensity", label: "Intensity", type: "choice", choice1: "Low", choice2: "Medium", choice3: "High", choice4: "Ultra high", defaultValue: "Medium", required: !0 }, { name: "level4Tip", label: "[ Level 4 ] :: Minimum tokens", type: "int", minValue: 1, maxValue: 1E4, defaultValue: 500, required: !0 }, { name: "level4Time", label: "Reaction time (seconds)", type: "int", minValue: 1, maxValue: 1E4, defaultValue: 30, required: !0 }, { name: "level4Intensity", label: "Intensity", type: "choice", choice1: "Low", choice2: "Medium", choice3: "High", choice4: "Ultra high", defaultValue: "High", required: !0 }, { name: "level5Tip", label: "[ Level 5 ] :: Minimum tokens", type: "int", minValue: 1, maxValue: 1E4, defaultValue: 1E3, required: !0 }, { name: "level5Time", label: "Reaction time (seconds)", type: "int", minValue: 1, maxValue: 1E4, defaultValue: 60, required: !0 }, { name: "level5Intensity", label: "Intensity", type: "choice", choice1: "Low", choice2: "Medium", choice3: "High", choice4: "Ultra high", defaultValue: "Ultra high", required: !0 }, { name: "level6Tip", label: "OPTIONAL LEVELS ..... [ Level 6 ] :: Minimum tokens", type: "int", minValue: 1, maxValue: 1E4, defaultValue: 2E3, required: !0 }, { name: "level6Time", label: "Reaction time (seconds)", type: "int", minValue: 1, maxValue: 1E4, defaultValue: 90, required: !0 }, { name: "level6Intensity", label: "Intensity", type: "choice", choice1: "Low", choice2: "Medium", choice3: "High", choice4: "Ultra high", defaultValue: "Ultra high", required: !0 }, { name: "level7Tip", label: "[ Level 7 ] :: Minimum tokens", type: "int", minValue: 1, maxValue: 1E4, defaultValue: 3E3, required: !0 }, { name: "level7Time", label: "Reaction time (seconds)", type: "int", minValue: 1, maxValue: 1E4, defaultValue: 120, required: !0 }, { name: "level7Intensity", label: "Intensity", type: "choice", choice1: "Low", choice2: "Medium", choice3: "High", choice4: "Ultra high", defaultValue: "Ultra high", required: !0 }, { name: "level8Tip", label: "[ Level 8 ] :: Minimum tokens", type: "int", minValue: 1, maxValue: 1E4, defaultValue: 4E3, required: !0 }, { name: "level8Time", label: "Reaction time (seconds)", type: "int", minValue: 1, maxValue: 1E4, defaultValue: 150, required: !0 }, { name: "level8Intensity", label: "Intensity", type: "choice", choice1: "Low", choice2: "Medium", choice3: "High", choice4: "Ultra high", defaultValue: "Ultra high", required: !0 }, { name: "level9Tip", label: "[ Level 9 ] :: Minimum tokens", type: "int", minValue: 1, maxValue: 1E4, defaultValue: 5E3, required: !0 }, { name: "level9Time", label: "Reaction time (seconds)", type: "int", minValue: 1, maxValue: 1E4, defaultValue: 160, required: !0 }, { name: "level9Intensity", label: "Intensity", type: "choice", choice1: "Low", choice2: "Medium", choice3: "High", choice4: "Ultra high", defaultValue: "Ultra high", required: !0 }, { name: "specialEnable", label: "SPECIAL LEVELS .......... Enable special levels", type: "choice", choice1: "Yes", choice2: "No (Skip to next section)", defaultValue: "No (Skip to next section)", required: !0 }, { name: "specialSplit", label: "Split normal and special levels in 2 notifications", type: "choice", choice1: "Yes", choice2: "No", defaultValue: "Yes" }, { name: "specialTitle", label: "Subtitle of special levels", type: "str", minLength: 1, maxLength: 1E4, defaultValue: "Special Levels", required: !0 }, { name: "randomTip", label: "[ Random Level ] :: Price (set 0 to disable)", type: "int", minValue: 0, maxValue: 9999, defaultValue: 40, required: !0 }, { name: "randomLevelMin", label: "Min. Level", type: "int", minValue: 1, maxValue: 6, defaultValue: 1, required: !0 }, { name: "randomLevelMax", label: "Max. Level", type: "int", minValue: 1, maxValue: 8, defaultValue: 5, required: !0 }, { name: "waveTip", label: "[ Wave Pattern ] :: Price (set 0 to disable)", type: "int", minValue: 0, maxValue: 9999, defaultValue: 99, required: !0 }, { name: "waveTime", label: "Reaction time (seconds)", type: "int", minValue: 1, maxValue: 999, defaultValue: 36, required: !0 }, { name: "pulseTip", label: "[ Pulse Pattern ] :: Price (set 0 to disable)", type: "int", minValue: 0, maxValue: 9999, defaultValue: 98, required: !0 }, { name: "pulseTime", label: "Reaction time (seconds)", type: "int", minValue: 1, maxValue: 999, defaultValue: 35, required: !0 }, { name: "earthquakeTip", label: "[ Earthquake Pattern ] :: Price (set 0 to disable)", type: "int", minValue: 0, maxValue: 9999, defaultValue: 222, required: !0 }, { name: "earthquakeTime", label: "Reaction time (seconds)", type: "int", minValue: 1, maxValue: 999, defaultValue: 90, required: !0 }, { name: "fireworksTip", label: "[ Fireworks Pattern ] :: Price (set 0 to disable)", type: "int", minValue: 0, maxValue: 9999, defaultValue: 111, required: !0 }, { name: "fireworksTime", label: "Reaction time (seconds)", type: "int", minValue: 1, maxValue: 999, defaultValue: 45, required: !0 }, { name: "noticeDisplay", label: "6. NOTICE SETTINGS .............................. Enable optional notices", type: "choice", choice1: "Yes", choice2: "No (Skip to section 7)", defaultValue: "Yes", required: !0 }, { name: "messageTimer", label: "Interval (in mins) for notices", type: "int", minValue: 1, maxValue: 60, defaultValue: 3, required: !0 }, { name: "noteColor", label: "Notice color", type: "choice", choice1: "Amaranth", choice2: "Black", choice3: "Blue", choice4: "Brown", choice5: "Eucalyptus", choice6: "Green", choice7: "Pink", choice8: "Purple", choice9: "Olive", choice10: "Orange", choice11: "Red", choice12: "RedViolet", choice13: "Rose", choice14: "SlateGrey", choice15: "Turquoise", choice16: "Violet", defaultValue: "Brown" }, { name: "notice1", label: "Notice 1", type: "str", minLength: 1, maxLength: 1E3, defaultValue: "Interactive toy that responds to your tips! Give me pleasure and make me wet!", required: !0 }, { name: "notice2", label: "Notice 2", type: "str", minLength: 1, maxLength: 1E3, defaultValue: "Make me wet with your tips!!!", required: !1 }, { name: "notice3", label: "Notice 3", type: "str", minLength: 1, maxLength: 1E3, defaultValue: "Give me pleasure with your tips!!!", required: !1 }, { name: "notice4", label: "Notice 4", type: "str", minLength: 1, maxLength: 1E3, defaultValue: "", required: !1 }, { name: "autoThanks", type: "choice", choice1: "Yes", choice2: "No (Skip this section)", defaultValue: "No (Skip this section)", label: "7. AUTO-THANKS SETTINGS ...... Auto thank you active with tips?" }, { name: "autoThanksLevel1", label: "Auto-Thank Level 1?", type: "choice", choice1: "Yes", choice2: "No", defaultValue: "No" }, { name: "level1Thanks", label: "[ Level 1 ] :: Thanks Message", type: "str", minLength: 0, maxLength: 10240, defaultValue: "I love it, thank you!!" }, { name: "level1Color", label: "Text color", type: "choice", choice1: "Amaranth", choice2: "Black", choice3: "Blue", choice4: "Brown", choice5: "Eucalyptus", choice6: "Green", choice7: "Pink", choice8: "Purple", choice9: "Olive", choice10: "Orange", choice11: "Red", choice12: "RedViolet", choice13: "Rose", choice14: "SlateGrey", choice15: "Turquoise", choice16: "Violet", defaultValue: "Pink" }, { name: "level2Thanks", label: "[ Level 2 ] :: Thanks Message", type: "str", minLength: 0, maxLength: 10240, defaultValue: "Level 2 : Mhmmm... ! Thank you!!" }, { name: "level2Color", label: "Text color", type: "choice", choice1: "Amaranth", choice2: "Black", choice3: "Blue", choice4: "Brown", choice5: "Eucalyptus", choice6: "Green", choice7: "Pink", choice8: "Purple", choice9: "Olive", choice10: "Orange", choice11: "Red", choice12: "RedViolet", choice13: "Rose", choice14: "SlateGrey", choice15: "Turquoise", choice16: "Violet", defaultValue: "Rose" }, { name: "level3Thanks", label: "[ Level 3 ] :: Thanks Message", type: "str", minLength: 0, maxLength: 10240, defaultValue: "Level 3! You know how to give me pleasure, thank you!!" }, { name: "level3Color", label: "Text color", type: "choice", choice1: "Amaranth", choice2: "Black", choice3: "Blue", choice4: "Brown", choice5: "Eucalyptus", choice6: "Green", choice7: "Pink", choice8: "Purple", choice9: "Olive", choice10: "Orange", choice11: "Red", choice12: "RedViolet", choice13: "Rose", choice14: "SlateGrey", choice15: "Turquoise", choice16: "Violet", defaultValue: "RedViolet" }, { name: "level4Thanks", label: "[ Level 4 ] :: Thanks Message", type: "str", minLength: 0, maxLength: 10240, defaultValue: "Level 4!! OMG!!! I love it!! Thank you so much!!" }, { name: "level4Color", label: "Text color", type: "choice", choice1: "Amaranth", choice2: "Black", choice3: "Blue", choice4: "Brown", choice5: "Eucalyptus", choice6: "Green", choice7: "Pink", choice8: "Purple", choice9: "Olive", choice10: "Orange", choice11: "Red", choice12: "RedViolet", choice13: "Rose", choice14: "SlateGrey", choice15: "Turquoise", choice16: "Violet", defaultValue: "Amaranth" }, { name: "level5Thanks", label: "[ Levels 5-9 ] :: Thanks Message", type: "str", minLength: 0, maxLength: 10240, defaultValue: "OMG OMG!! Yeeeeeeeeeah!!!!!! I really love this!! Thank youuu!" }, { name: "level5Color", label: "Text color", type: "choice", choice1: "Amaranth", choice2: "Black", choice3: "Blue", choice4: "Brown", choice5: "Eucalyptus", choice6: "Green", choice7: "Pink", choice8: "Purple", choice9: "Olive", choice10: "Orange", choice11: "Red", choice12: "RedViolet", choice13: "Rose", choice14: "SlateGrey", choice15: "Turquoise", choice16: "Violet", defaultValue: "Red" } ]; cb.onMessage(function (a) { var b = a.user; a.is_mod; if (n = a.m, a.has_tokens, a.hasOwnProperty("X-Spam") && a["X-Spam"]) return a; if (ya.includes(b)) { ! function (a) { var b = a.indexOf("tip"); - 1 != b && (b = ia(a.substring(b)), 3 == b.length && (a = b[1], b = parseInt(b[2]), isNaN(b) || 0 >= b || Qa(a, b))) }(a.m); var d = function (a) { for (var b in Ya) { var c = a.toLowerCase().indexOf(b); if (0 <= c) { var d = ia(a.substring(c)); return a.substring(c).replace(d[0], Ya[b].cmd) } } }(n); if (d) { var c = Za(b, d); c && h(b, "\n Error command : /" + d + "\n \u25a0 " + c + "\n"); a.m = ""; a["X-Spam"] = !0 } } }); cb.onTip(function (a) { var b = parseInt(a.amount); Qa(a.from_user, b) }); cb.onDrawPanel(function () { var a = "", b = "", d = barStyle[g].max, c = 0; if ("COUNTER" != e && x) { "Classic Panel" == cb.settings.panel_image && (d = 10); a = Math.min(Math.floor((l - B) / l * 100), 100); for (var f = 0; f < Math.min(Math.floor(a / 100 * d), d); f++) b += barStyle[g].black, c++; - 1 != ["Revised", "Classic", "Modern"].indexOf(g) && 0 < a % d && !m && (b += barStyle[g].gray, c++); d -= c; for (f = 0; f < d; f++) b += barStyle[g].white } if ("Lovense Dream" == cb.settings.panel_image || xa && "Classic Panel" != cb.settings.panel_image) return { template: "image_template", layers: [{ type: "image", fileID: wa }, { type: "text", text: F, top: X[0], left: "COUNTER" == e ? p[0] + 2 : p[0], "font-size": 11, "font-family": "UbuntuRegular", "font-weight": "normal", color: va }, { type: "text", text: G, top: X[1], left: "COUNTER" == e ? u && v ? p[1] + 36 : p[1] + 53 : "MULTI" == e ? 99 < C + 1 ? p[1] + 25 : 9 < C + 1 ? p[1] + 20 : p[1] + 14 : m ? p[1] - 4 : p[1] + 7, "font-size": 11, "font-family": "UbuntuRegular", "font-weight": "normal", color: ua }, { type: "text", text: M, top: Q[0], left: P[0], "font-size": 11, "font-family": "UbuntuRegular", "font-weight": "normal", color: O }, { type: "text", text: H, top: Q[1], left: P[1], "font-size": 11, "font-family": "UbuntuRegular", "font-weight": "normal", color: la }, { type: "text", text: J, top: Q[2], left: P[2], "font-size": 11, "font-family": "UbuntuRegular", "font-weight": "normal", color: O }, { type: "text", text: "COUNTER" != e && x ? "Progress" : L, top: t[0], left: z[0], "font-size": 11, "font-family": "UbuntuRegular", "font-weight": "normal", color: O }, { type: "text", text: "COUNTER" != e && x ? b : K, top: "COUNTER" != e && x ? "Hearts" == g ? m ? t[1] + 1 : t[1] - 1 : "Stars" == g ? t[1] - 2 : t[1] + 2 : t[1], left: "COUNTER" != e && x ? z[1] + Z : z[1], "font-size": "COUNTER" != e && x ? barStyle[g].size : 11, "font-family": "UbuntuRegular", "font-weight": ("COUNTER", "normal"), color: la }, { type: "text", text: "COUNTER" != e && x ? a + "%" : V, top: t[2], left: "COUNTER" != e && x ? z[2] + na - ("Hearts" == g ? c : 0) - (m ? 1 : 0) : z[2], "font-size": 11, "font-family": "UbuntuRegular", "font-weight": "normal", color: O }] }; f = d = c = ""; return f = u ? "COUNTER" == e ? (c = (v ? F : U()) + " - " + G, d = M + " - \u2665 " + H + " \u2665 (" + J + ")", L + " - \u2605 " + K + " \u2605 (" + V + ")") : (c = F + " " + G, d = M + " - \u2665 " + H + " \u2665 (" + J + ")", x ? "Progress - " + b + " - " + a + "%" : L + " - \u2605 " + K + " \u2605 (" + V + ")") : "COUNTER" == e ? (c = U() + " - Vibrator that react to your Tips", d = A, w) : (c = F + " " + G, d = U() + " - Vibrator that reacts to your Tips", x ? "Progress - " + b + " - " + a + "%" : w), { template: "3_rows_11_21_31", row1_value: c, row2_value: d, row3_value: f } }); (function () { cb.settings.goalMode && cb.settings.levelColor && (e = goalModeList[cb.settings.goalMode].m, N = Ia[cb.settings.levelColor].c, Va = Ia[cb.settings.noteColor].c); cb.settings.tags && (D = cb.settings.tags.trim() ? cb.settings.tags : ""); Da = "Lovense Dream"; ha.push.apply(ha, "noiett pettitka divineangelx allice_fox oliviaorgasmique gooooodgirl".split(" ")); ha.push.apply(ha, "mia_becker deeadiamond valerie_devine hangayun cutesonya4u angelslive99 hotbunny".split(" ")); ya.push.apply(ya, [pa, "noiett", "loveyounaked"]); for (var a = 0, b = 0; b < cb.settings_choices.length; b++) if ("panel_image" == cb.settings_choices[b].name) { a = b; break } a: { if (!0||12147 == cb.app_id) for (b = 0; b < ha.length; b++) if (ha[b] == pa) { b = !0; break a } b = !1 } if (b) xa = !0, cb.settings_choices[a].choice1 = "Lovense Dream", cb.settings_choices[a].choice2 = "Classic Panel", Ta(); else if (!0||12147 == cb.app_id) { cb.settings_choices[a].choice1 = "Lovense Dream"; cb.settings_choices[a].choice2 = "Classic Panel"; for (b = 3; 10 >= b; b++) cb.settings_choices[a]["choice" + b] && (cb.settings_choices[a]["choice" + b ] = "Error"); Ta() } else ka = !0; (!D || 0 > D.toLowerCase().indexOf("Lovense")) && (D += ""); a = ia(D); D = ""; for (b = 0; b < a.length; b++) D += "#" == a[b].substring(0, 1) ? a[b] : "#" + a[b]; La(pa); if (cb.settings.activeToy) { b = parseInt(cb.settings.levelMax); ra = U() + " - " + cb.settings.levelsTitle + "\n \u2665 " + cb.settings.levelSubTitle + " \u2665 "; for (a = 1; a < b + 1; a++) ra += "\n" + bb(a) + " \u23f5 Tip " + cb.settings["level" + a + "Tip"] + (a == b ? "+" : "-" + (cb.settings["level" + (a + 1) + "Tip"] - 1)) + " " + Ja[cb.settings.activeToy].icon + " " + cb.settings["level" + a + "Time"] + " sec (" + cb.settings["level" + a + "Intensity"] + " vibrations)"; if ("Yes" == cb.settings.specialEnable) { fa += "\n \u2605 " + cb.settings.specialTitle + " \u2605 "; for (a = 0; a < Ka.length; a++) b = Ka[a].name.toLowerCase(), 0 < cb.settings[b + "Tip"] && (fa += "\n" + Ka[a].icon + " \u23f5 Tip " + cb.settings[b + "Tip"] + " " + Ja[cb.settings.activeToy].icon + ("random" != b ? " " + cb.settings[b + "Time"] + " seconds" : " Random level " + cb.settings.randomLevelMin + "-" + cb.settings.randomLevelMax)); "No" == cb.settings.specialSplit ? ra += "\n" + fa : "Yes" == cb.settings.specialSplit && (fa = U() + " - " + cb.settings.levelsTitle + fa) } } "Yes" == cb.settings.levelDisplay && cb.setTimeout(Wa, 2E4); "Yes" == cb.settings.noticeDisplay && cb.setTimeout(Ua, 3E4 * cb.settings.messageTimer); Xa(300, ":lushsm " + Da + " v2.1 :lushsm", "", "#000000", "#FFFFFF", "bold"); Xa(500, "Built by noiett (Mar 5, 2019)", "", "", "#000000", "normal") })() }()
© Copyright Chaturbate 2011- 2025. All Rights Reserved.