• Из-за обновления GTA 5 (был добавлен новый патч) может временно не работать вход в RAGE Multiplayer.

    Ошибка: Ваша версия Grand Theft Auto V не поддерживается RAGE Multiplayer.
    ERROR: Your game version is not supported by RAGE Multiplayer.

    Данная ошибка говорит о том, что GTA V обновилась до новой версии (GTA Online тоже). Вам необходимо обновить саму игру в главном меню вашего приложения (Steam / Epic Games / Rockstar Games).
    Если после этого RAGE:MP все равно не работает - вам нужно дождаться выхода патча для самого мультиплеера (обычно это занимает от нескольких часов до нескольких дней).

    Новости и апдейты Rockstar Games - https://www.rockstargames.com/newswire/
    Статус всех служб для Rockstar Games Launcher и поддерживаемых игр: https://support.rockstargames.com/ru/servicestatus


    Grand Theft Auto 5 (+ GTA Online) последний раз были обновлены:

Вопрос Откуда запятые?

Yara_Amon

Новый участник
25 Июл 2024
65
2
28
Добавил команду /asms, но по итогу когда пишу сообщение игроку, то после каждого слова появляются запятые.
Код:

mp.events.addCommand('asms', (player, _, id, ...message) => {
if (id == undefined || message == undefined) return player.outputChatBox('/asms [id] [message]');
let target = mp.players.at(id);
if (target == null) return player.notify('~r~ID игрока не найден!');
target.outputChatBox(!{#f00}[ADM] ${player.name}!{#fff} : ${message});
})
Фото:
1743790808311.jpeg
 

Jerry (ChatGPT)

AI-powered language model
VIP
helper
17 Окт 2023
2,253
231
5
Проблема в том, что переменная message имеет тип массива после использования оператора rest (…) в стрелочной функции. Для корректного вывода сообщения в чат необходимо преобразовать массив в строку, используя метод .join(' '):

JavaScript:
mp.events.addCommand('asms', (player, _, id, ...message) => {
    if (id == undefined || message.length == 0) return player.outputChatBox('/asms [id] [message]');
    let target = mp.players.at(id);
    if (target == null) return player.notify('~r~ID игрока не найден!');
    target.outputChatBox(`!{#f00}[ADM] ${player.name}!{#fff} : ${message.join(' ')}`);
})

Это позволит объединить все слова в сообщении без запятых между ними.
 
Реакции: Inoi

Inoi

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

потом ты вставляешь его в строку ${message}, не преобразовывая ручками в строку сначала, например каким-то let msg = message.join(' ');
поэтому в этом месте срабатывает аррей2стринг, неявно преобразовывая массив в строку

а он так и работает - элементы массива вставляет через запятую

1743791249885.png


вот отсюда и запятые.
 
Реакции: Vermilion и derrsak

derrsak

Специалист
17 Июн 2023
340
79
76
в целом бот верно ответил
чуть чуть на понятном если то
ты используешь остаточный параметр ...message
в жсе он работает так, что собирает в массив оставшиеся аргументы

потом ты вставляешь его в строку ${message}, не преобразовывая ручками в строку сначала, например каким-то let msg = message.join(' ');
поэтому в этом месте срабатывает аррей2стринг, неявно преобразовывая массив в строку

а он так и работает - элементы массива вставляет через запятую

Посмотреть вложение 19147

вот отсюда и запятые.
Как всегда ответ на высшем уровне, мои аплодисменты 👏
 
  • Wow
Реакции: Inoi

Inoi

/dev/null
Команда форума
Moderator
VIP
15 Окт 2020
3,812
1,866
208
35
  • Love
Реакции: derrsak

Vermilion

Высший разум
High developer
BackEnd developer
FrontEnd developer
29 Сен 2021
1,285
756
181
34

Вложения

  • IMG_2030.jpeg
    IMG_2030.jpeg
    145.8 KB · Просмотры: 23
  • Haha
Реакции: derrsak

Yara_Amon

Новый участник
25 Июл 2024
65
2
28
в целом бот верно ответил
чуть чуть на понятном если то
ты используешь остаточный параметр ...message
в жсе он работает так, что собирает в массив оставшиеся аргументы

потом ты вставляешь его в строку ${message}, не преобразовывая ручками в строку сначала, например каким-то let msg = message.join(' ');
поэтому в этом месте срабатывает аррей2стринг, неявно преобразовывая массив в строку

а он так и работает - элементы массива вставляет через запятую

Посмотреть вложение 19147

вот отсюда и запятые.
Спасибо большое