Смотрите, сделал кастомные ивенты,и почему то чат работает некорректно, использую все правильно(все выводится) команда (/s, /b, /do) и т.д работает а вот в обычный чат когда пишу не работает,кто знает в чем проблема может быть
chat.js
.......
var chatAPI = {
push: (text) => {
chat.size++;
chat.container = $(".chat ul.chat_messages");
if (chat.size >= 50) chat.container.children(":first").remove();
if (chat.timestamp == 0) chat.container.append("<li>" + text + "</li>");
else chat.container.append("<li>[" + chat.stime + "] " + text + "</li>");
chat.container.scrollTop(9999);
},
clear: () => {
chat.container.html("");
},
activate: (toggle) => {
if (toggle == false && $('.footer_chat').hasClass('active')) enableChatInput(false);
chat.active = toggle;
},
show: (toggle) => {
if (toggle) chatvar.show();
else chatvar.hide();
chat.active = toggle;
}
};
if (mp.events) {
let api = { "chat:push": chatAPI.push, "chat:clear": chatAPI.clear, "chat:activate": chatAPI.activate, "chat:show": chatAPI.show };
for (let fn in api) {
mp.events.add(fn, api[fn]);
}
}
SafeTrigger.ClientEvent(player, "sendChat", "s", "{name} кричит: " + message, names);
mp.events.add('sendChat', (type, msg, players) => {
....
// всякие-разные обработки
....
mp.gui.chat.push(msg);
// или
browser.call("chat:push", msg);
// в зависимости от того, обозначен ли у тебя чат как browser.markAsChat()
});
к сожалению у меня стандарт "редаговский метод" с mp.events.add не будет работать ибо у меня кастомные ивенты %)что значит кастомные евенты?
насколько я видел почти во всех сборках стоит один и тот же кастомный чат +-
что-то вроде
JavaScript:chat.js ....... var chatAPI = { push: (text) => { chat.size++; chat.container = $(".chat ul.chat_messages"); if (chat.size >= 50) chat.container.children(":first").remove(); if (chat.timestamp == 0) chat.container.append("<li>" + text + "</li>"); else chat.container.append("<li>[" + chat.stime + "] " + text + "</li>"); chat.container.scrollTop(9999); }, clear: () => { chat.container.html(""); }, activate: (toggle) => { if (toggle == false && $('.footer_chat').hasClass('active')) enableChatInput(false); chat.active = toggle; }, show: (toggle) => { if (toggle) chatvar.show(); else chatvar.hide(); chat.active = toggle; } }; if (mp.events) { let api = { "chat:push": chatAPI.push, "chat:clear": chatAPI.clear, "chat:activate": chatAPI.activate, "chat:show": chatAPI.show }; for (let fn in api) { mp.events.add(fn, api[fn]); } }
и у тебя есть какой-то евент в худе или где-то ещё который обрабатывает сообщения с сервера, и вызывает чат апи
если у тебя работают команды - получается то что ты вводишь в чате уходит на сервер, но не возвращается обратно
значит тебе нужно проверить всю цепочку от своего
до обработки на клиенте внутри этого евента сообщения и отправки в чат апиC#:SafeTrigger.ClientEvent(player, "sendChat", "s", "{name} кричит: " + message, names);
JavaScript:mp.events.add('sendChat', (type, msg, players) => { .... // всякие-разные обработки .... mp.gui.chat.push(msg); // или browser.call("chat:push", msg); // в зависимости от того, обозначен ли у тебя чат как browser.markAsChat() });
Если ты сделал "свои кастомные евенты" и всё перестало работать - видимо дело в них.
Но ты же их не показываешь - получается принти себе в консоль или нотифайки то, что через них проходит, чтобы понять где ты ошибся
что значит кастомные евенты?к сожалению у меня стандарт "редаговский метод" с mp.events.add не будет работать ибо у меня кастомные ивенты %)
ну а у меня кастомный это ивентчто значит кастомные евенты?
mp.events.add - это не "редаговский метод", это функция рейджа
у меня шифрованные ивентычто значит кастомные евенты?
mp.events.add - это не "редаговский метод", это функция рейджа
уже изменено к сожалению не работаеттак
и в чём проблема
ну поменяй название функции с mp.events.add на ту, которой ты её присвоил
глобально это же ничего не меняет
global.GenalnayaShifrovka = mp.events.callRemote
mp.events.callRemote = null
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?