//----------------------------------------Цвета------------------------------------------------
var CNRM = "\x1B[0;0m";
var CBLK = "\x1B[0;30m";
var CRED = "\x1B[0;31m";
var CGRN = "\x1B[0;32m";
var CYEL = "\x1B[0;33m";
var CBLU = "\x1B[0;34m";
var CMAG = "\x1B[0;35m";
var CCYN = "\x1B[0;36m";
var CWHT = "\x1B[0;37m";
var CNUL = "";
var BBLK = "\x1B[1;30m";
var BRED = "\x1B[1;31m";
var BGRN = "\x1B[1;32m";
var BYEL = "\x1B[1;33m";
var BBLU = "\x1B[1;34m";
var BMAG = "\x1B[1;35m";
var BCYN = "\x1B[1;36m";
var BWHT = "\x1B[1;37m";
var BKBLK = "\x1B[40m";
var BKRED = "\x1B[41m";
var BKGRN = "\x1B[42m";
var BKYEL = "\x1B[43m";
var BKBLU = "\x1B[44m";
var BKMAG = "\x1B[45m";
var BKCYN = "\x1B[46m";
var BKWHT = "\x1B[47m";
//---------------------------------------Перехват теллов---------------------------------------
function CaptureTells() {
var m_date = new Date();
var Year = m_date.getYear();
var Month = m_date.getMonth();
var Day = m_date.getDate();
var hours = m_date.getHours();
var mins = m_date.getMinutes();
var secs = m_date.getSeconds();
if (hours < 10) {hours = "0" + hours; }
if (mins < 10) {mins = "0" + mins; }
if (secs < 10) {secs = "0" + secs; }
if (Month < 10) {Month = "0" + Month; }
if (Day < 10) {Day = "0" + Day; }
var datastr = (Day + "." + Month +"." + Year + " " + hours + ":" + mins + ":"+secs );
var tmp=jmc.Event;
var say=/^(\x1B\[0;37m)?([А-Яа-я]+|Кто-то) сказал([аи])? : '(.+)'$/;
var tell=/^(\x1B\[0;37m)?\x1B\[1;36m([А-Яа-я]+|Кто-то|Вы) сказал([аи])? ([А-Яа-я]+|кому-то|Вам) : '(.+)'\x1B\[0;37m$/;
var gtell=/^(\x1B\[0;37m)?([А-Яа-я]+|Кто-то|Вы) сообщил([аи])? группе : '(.+)'$/;
var shout=/^(\x1B\[0;37m)?\x1B\[1;33m([А-Яа-я]+|Кто-то) закричал([аи])? : '(.+)'(\x1B\[0;37m)?$/;
var gossip=/^(\x1B\[0;37m)?\x1B\[0;33m([А-Яа-я]+|Кто-то) заметил([аи])? : '(.+)'(\x1B\[0;37m)?$/;
var holler=/^(\x1B\[0;37m)?\x1B\[1;33m([А-Яа-я]+|Кто-то) заорал([аи])? : '(.+)'(\x1B\[0;37m)?$/;
var clan=/^(\x1B\[0;37m)?(\x1B\[1;32m)?([А-Яа-я]+) дружине: \x1B\[1;31m'(.+)'\.\x1B\[0;37m$/;
var alli=/^(\x1B\[0;37m)?(\x1B\[1;32m)?([А-Яа-я]+) союзникам: \x1B\[1;32m'(.+)'\.\x1B\[0;37m$/;
if(say.test(tmp)==true) {
res = say.exec(tmp);
jmc.Output(BYEL+datastr+CWHT+" "+res[2]+" сказал"+res[3]+" : '"+res[4]+"'");
return;
}
if(tell.test(tmp)==true) {
res = tell.exec(tmp);
if((res[1]!='Кузнец') && (res[1]!='Волшебник') && (res[1]!='Умелец') && (res[1]!='Скорняк')
&& (res[1]!='Трактирщик') && (res[1]!='Травник') && (res[1]!='Индус') && (res[1]!='Пленник')
&& (res[1]!='Пекарь') && (res[1]!='Торговец') && (res[1]!='Подмастерье') && (res[1]!='Старуха')
&& (res[1]!='Старик')) {
jmc.Output(BYEL+datastr+BWHT+" "+res[2]+" сказал"+res[3]+" "+res[4]+" : '"+res[5]+"'");
}
return;
}
if(gtell.test(tmp)==true) {
res = gtell.exec(tmp);
jmc.Output(BYEL+datastr+" "+res[2]+" сообщил"+res[3]+" группе : '"+res[4]+"'");
jmc.Event=BYEL+res[2]+CNRM+" сообщил"+res[3]+" группе : '"+res[4]+"'";
return;
}
if(shout.test(tmp)==true) {
res = shout.exec(tmp);
jmc.Output(BYEL+datastr+" "+res[2]+" закричал"+res[3]+" : '"+res[4]+"'");
return;
}
if(gossip.test(tmp)==true) {
res = gossip.exec(tmp);
jmc.Output(BYEL+datastr+CYEL+" "+res[2]+" заметил"+res[3]+" : '"+res[4]+"'");
return;
}
if(holler.test(tmp)==true) {
res = holler.exec(tmp);
jmc.Output(BYEL+datastr+" "+res[2]+" заорал"+res[3]+" : '"+res[4]+"'");
return;
}
if(clan.test(tmp)==true) {
res = clan.exec(tmp);
jmc.Output(BYEL+datastr+" "+CNRM+res[3]+" дружине: "+BRED+"'"+res[4]+"'.");
return;
}
if(alli.test(tmp)==true) {
res = alli.exec(tmp);
jmc.Output(BYEL+datastr+" "+CNRM+res[3]+" союзникам: "+BGRN+"'"+res[4]+"'.");
return;
}
}
jmc.RegisterHandler("Incoming","CaptureTells();");
Работает это в Былинах.
Created by WorM ©2006-2025
done in 0.02s