This is a mobile optimized page that loads fast, if you want to load the real page, click this text.

Проблема Кастомный чат выводит 2 сообщения

Rahal123

Новый участник
3 Фев 2024
5
0
20
Сделал кастомный чат, подключил его и сделал кастомный вывод сообщения,но дефолтное сообщение и сообщения о неправильной команде и т.п все еще выводятся.Как это можно пофиксить?
 

Jerry (ChatGPT)

AI-powered language model
VIP
helper
17 Окт 2023
2,256
233
5
Для того чтобы исправить данную проблему, вам необходимо отключить стандартный вывод сообщений в вашем кастомном чате. Проверьте настройки чата и убедитесь, что вы правильно настроили кастомный вывод и отключили стандартные сообщения.
 

enotit

Гений
High developer
BackEnd developer
13 Ноя 2020
1,541
490
187
21
А куда они должны пропасть? Ты их ограничил? Посмотри что тебе приходит от сервера / клиента в cef. Если вопрос как убрать вывод некорректной команды, то задай конкретный вопрос (как буду работать, то найду метод).
Однако, мы не экстрасенсы, скинь код, как сейчас и как должно быть.
 

Inoi

/dev/null
Команда форума
Moderator
VIP
15 Окт 2020
3,821
1,874
208
35
browser.markAsChat наверное?
не помню чтобы нужно было дефолтный отключить, но мб я не прав
мне кажется что только маркирнуть свой как основной
 

enotit

Гений
High developer
BackEnd developer
13 Ноя 2020
1,541
490
187
21
browser.markAsChat наверное?
ну он вешает события, насколько помню, на браузер. Но тут видишь, у него двоит.

не помню чтобы нужно было дефолтный отключить, но мб я не прав
двоит ли он? не помню, может быть, помню лишь, что да, нужно менять браузер
 

Inoi

/dev/null
Команда форума
Moderator
VIP
15 Окт 2020
3,821
1,874
208
35
не двоит же а

но дефолтное сообщение и сообщения о неправильной команде

мне кажется что как раз если ты не пометишь так свой, то рейдж стандартные мессаги будет слать в дефолтный
а в свой то понятно что ты принудительно можешь че угодно отправить
 

enotit

Гений
High developer
BackEnd developer
13 Ноя 2020
1,541
490
187
21
Реакции: Inoi

Rahal123

Новый участник
3 Фев 2024
5
0
20
Посмотреть вложение 17563
в любом случае, пусть подробнее опишет ошибку.
сделал чат основным с помощью markAsChat(),на сервере отлавливаю отправку сообщения через mp.events.add("playerChat", (player,text) и отправляю измененное сообщение через mp.players.broadcast(), и я не знаю как мне убрать дублирование сообщений и сообщения рейджа по типу команда не найдена из чата
 

Harland David Sanders

🍔 ChefBurger
Команда форума
High developer
10 Сен 2020
3,595
2,752
219
Дефолтный чат от самого RAGE:MP выключи или скрой, пример можешь глянуть в любом моде из раздела Ресурсы - Готовые сервера.
 

enotit

Гений
High developer
BackEnd developer
13 Ноя 2020
1,541
490
187
21
mp.gui.chat.show(false); не забыл?
И дай больше контекст
 
Реакции: Harland David Sanders

Rahal123

Новый участник
3 Фев 2024
5
0
20
mp.gui.chat.show(false); не забыл?
И дай больше контекст
стандартный чат отключил, в скрипте чата подключил апи var chatAPI =
{
"chat: push": insertMessageToChat,
"chat:clear": clearChat,
"chat:activate": enableChatInput,
"chat:show": showChat
};
при отправке сообщения вызываю в скрипте чата
mp.invoke("command", command); или
mp.invoke("chatMessage", message);

на сервере принимаю сообщение через mp.events.add("playerChat", (player,text), редактирую его как мне нужно и отправляю через mp.players.broadcast()
и по итогу в скрипте чата вызывается "chat: push": insertMessageToChat 2 раза: для исходного сообщения и измененного;
 

Inoi

/dev/null
Команда форума
Moderator
VIP
15 Окт 2020
3,821
1,874
208
35
кода всё ещё маловато но звучит так что ты просто на клиенте печатаешь сообщение в чат
ну т.е. отрабатывает чатпуш, которого вообще не должно быть в твоей логике - если ты хочешь не отображать сообщение а сразу пулять его на сервак с цефа через инвок
 

Rahal123

Новый участник
3 Фев 2024
5
0
20
Сделал через ивенты,но это решило лишь проблему дублирования сообщений, а как отлавливать или не отображать сообщения рейджа(errorы и т.д)
?
 

enotit

Гений
High developer
BackEnd developer
13 Ноя 2020
1,541
490
187
21
а как отлавливать или не отображать сообщения рейджа(errorы и т.д)
А какие ты отлавливаешь? У тебя единственная ошибка только "не те аргументы" "команда не найдена"