Finished tokebot implementation. tz and of tokes decapitalized and

consolidated, !r added, toke log and  per user toke count tracking. Toke
count on tooltip. Improved moderator commands & tokebot output
formatting.
This commit is contained in:
rainbownapkin 2022-07-23 09:24:19 +00:00
parent 46bcb040f2
commit fcb562397a
8 changed files with 389 additions and 49 deletions

View file

@ -192,6 +192,7 @@ body{
display: flex;
flex-wrap: wrap;
align-items: center;
z-index: 2;
}
#chatheader > p, #videowrap-header {

View file

@ -522,10 +522,26 @@ Callbacks = {
},
chatMsg: function(data) {
if(data.username === "tokebot" && data.meta.addClass === "server-whisper" && USEROPTS.toke_pm){
data.meta = {};
window.Callbacks.pm(data);
return;
if(data.username === "tokebot"){
console.log(data);
if(data.meta.addClass === "server-whisper"){
data.meta.modflair = 3;
if( USEROPTS.toke_pm){
data.meta = {
modflair: 3
};
window.Callbacks.pm(data);
return;
}
}else if(data.meta.addClass === "shout" && data.msg.startsWith("Take a toke")){
data.msg.split(" ").forEach(function(w){
var n = w.slice(0,-1);
if(usrColors[0].includes(n)){
$(".userlist_" + n).data().meta.toke++;
}
});
}
}
addChatMessage(data);
},
@ -577,7 +593,6 @@ Callbacks = {
addUser: function(data) {
CyTube._internal_do_not_use_or_you_will_be_banned.addUserToList(data, true);
console.log(data);
sortUserlist();
},

View file

@ -207,8 +207,8 @@ $("#usercount").mousemove(function (ev) {
if(popup.length == 0)
return;
popup.css("top", (ev.clientY + 5) + "px");
popup.css("left", (ev.clientX - 120) + "px");
popup.css("top", (ev.clientY + 5) - $("#usercount").parent().offset().top + "px");
popup.css("left", (ev.clientX - 120) - $("#usercount").parent().offset().left + "px");
});
$("#usercount").mouseleave(function () {

View file

@ -184,6 +184,9 @@ function formatUserlistItem(div) {
$("<br/>").appendTo(profile);
$("<em/>").text(meta.ip).appendTo(profile);
}
$("<br/>").appendTo(profile);
$("<em/>").text("tokes: " + div.data().meta.toke).appendTo(profile);
if (meta.aliases) {
$("<br/>").appendTo(profile);
$("<em/>").text("aliases: " + meta.aliases.join(", ")).appendTo(profile);
@ -195,12 +198,13 @@ function formatUserlistItem(div) {
profile.css("left", horiz + "px")
});
name.mousemove(function(ev) {
var top = ev.clientY + 5;
var horiz = ev.clientX;
if ($("body").hasClass("synchtube")) horiz -= profile.outerWidth();
var top = ev.clientY + 5 - div.parent().offset().top;
var horiz = ev.clientX - div.offset().left;
//if ($("body").hasClass("synchtube")) horiz -= profile.outerWidth();
profile.css("left", horiz + "px")
.css("top", top + "px");
.css("top", top + "px");
});
name.mouseleave(function() {
profile.remove();
@ -494,10 +498,11 @@ function sortUserlist() {
},
meta: {
afk: false,
aliases: [],
aliases: ["tokebot"],
ip: "127.0.0.1",
muted: false,
smuted: false
smuted: false,
toke: '∞'
}
}
);
@ -3555,7 +3560,7 @@ CyTube._internal_do_not_use_or_you_will_be_banned.addUserToList = function (data
}
assignColors(data.name);
var div = $("<div/>")
.addClass("userlist_item").attr('id', getColor(data.name));
.addClass("userlist_item").addClass("userlist_" + data.name).attr('id', getColor(data.name));
var icon = $("<span/>").appendTo(div);
var nametag = $("<span/>").text(data.name).appendTo(div);
div.data("name", data.name);