• Из-за обновления 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) последний раз были обновлены:

Вопрос Как из VueJS передать значение переменной на серверную часть

Sublimate

Участник портала
11 Июн 2023
129
6
55
В каком плане "что именно"?
 

Vermilion

Высший разум
high coder
29 Сен 2021
1,008
554
181
34
Правильно, потому что ты передаешь 2 параметра, а пытаешься принять только один. Замени (player, data) на (player, login, password)
 
Реакции: youngBeaver

Sublimate

Участник портала
11 Июн 2023
129
6
55
Правильно, потому что ты передаешь 2 параметра, а пытаешься принять только один. Замени (player, data) на (player, login, password)
И в серверной части тоже?

JavaScript:
const mysqlc = require('./mysql.js');


mp.events.add("register", (player, login, password) => {
    try {console.log(JSON.stringify(data.login), JSON.stringify(data.password))} catch (e) {console.log(e)}
    // mp.trigger("ui:server:event", "register", login, password);
    //Получить логин и пароль
    
})
 

Vermilion

Высший разум
high coder
29 Сен 2021
1,008
554
181
34
Либо оберни отправку данных из CEF в объект. Не работаю с стандартными методами, точно не скажу
 

youngBeaver

Гений
high coder
24 Янв 2023
1,146
448
171
24
Вадим нашел ошибку быстрее меня, я не подумал, что ты не полностью взял мой код. В моем примере я данные передавал в скобках, что образовало массив. Но в твоем случае, ты передаешь 2 переменные, а на сервере принимаешь лишь один.
 

Sublimate

Участник портала
11 Июн 2023
129
6
55
Вадим нашел ошибку быстрее меня, я не подумал, что ты не полностью взял мой код. В моем примере я данные передавал в скобках, что образовало массив. Но в твоем случае, ты передаешь 2 переменные, а на сервере принимаешь лишь один.
Я думал оно массивом передаётся, поэтому и пытался через data[x] итд
 

youngBeaver

Гений
high coder
24 Янв 2023
1,146
448
171
24
Я думал оно массивом передаётся, поэтому и пытался через data[x] итд
mp.trigger - согласно вики принимает через запятую после названия эвента неограниченное количество параметров. Поэтому без скобок ты туда мог еще штук 10 передать и все бы они шли отдельными аргументами.
 

Sublimate

Участник портала
11 Июн 2023
129
6
55
И в серверной части тоже?

JavaScript:
const mysqlc = require('./mysql.js');


mp.events.add("register", (player, login, password) => {
    try {console.log(JSON.stringify(data.login), JSON.stringify(data.password))} catch (e) {console.log(e)}
    // mp.trigger("ui:server:event", "register", login, password);
    //Получить логин и пароль
   
})
Извиняюсь, поплыл, в клиентской
:

JavaScript:
mp.events.add("ui:server:event", (eventName, data) => {
    try {
        mp.events.callRemote(eventName, data)
    } catch (e) {
        console.log(e)
    }
})
 

Vermilion

Высший разум
high coder
29 Сен 2021
1,008
554
181
34
Нет, если передаешь объект , то на сервере он будет data.login и data.password
 

Sublimate

Участник портала
11 Июн 2023
129
6
55
Нет, если передаешь объект , то на сервере он будет data.login и data.password
Немного не соображаю, как

JavaScript:
mp.events.add("register", (player, data, login, password) => {
    try {console.log(JSON.stringify(data), JSON.stringify(data.password))} catch (e) {console.log(e)}
    
})

Если data.password до undefined, если password то тоже undefined
 

Vermilion

Высший разум
high coder
29 Сен 2021
1,008
554
181
34
Объект а не массив
 

Sublimate

Участник портала
11 Июн 2023
129
6
55
Объект а не массив
JavaScript:
mp.trigger("ui:server:event", "register", { login: login, password: password });

JavaScript:
mp.events.add("register", (player, data, login, password) => {
    try {
        console.log(JSON.stringify(data));
    } catch (e) {
        console.log(e);
    }
});
 

Sublimate

Участник портала
11 Июн 2023
129
6
55
JavaScript:
mp.trigger("ui:server:event", "register", { login: login, password: password });

JavaScript:
mp.events.add("register", (player, data, login, password) => {
    try {
        console.log(JSON.stringify(data));
    } catch (e) {
        console.log(e);
    }
});
Возвращает 0
 

X-Clusiv

Модератор
Команда форума
high coder
4 Окт 2020
683
311
161
30
Дружище)
В общем.
Браузер:
JavaScript:
mp.trigger("youEventInClient", arg1, arg2)
На клиенте:
JavaScript:
mp.events.add("youEventInClient", ("youEventInClient") => {
    mp.events.callRemote("youEventInServer", arg1, arg2);
}
На сервере:

JavaScript:
mp.events.add("youEventInServer", (player, arg1, arg2) => {
    console.log(arg1);
    console.log(arg2);
}
 

X-Clusiv

Модератор
Команда форума
high coder
4 Окт 2020
683
311
161
30
А еще проще, чтобы общаться на прямую с сервером из браузера, можно написать что-то по типу.

JavaScript:
//CEF
window.callServerEvent = (event, ...args) => {
  try {
    mp.trigger('callServerEvent', event, JSON.stringify(args))
  } catch (e) {
    console.warn(e)
  }
}
//Client

mp.events.add("callServerEvent", (event, args) => {
  try{
    args = JSON.parse(args);
    mp.events.callRemote(event, ...args);
  } catch (e){
  }
};)

А после уже можно вызывать серверные евенты напрямую из браузера.


JavaScript:
//CEF
callSeverEvent("youSeverEvent", login, password)

//Server
mp.events.add("youServerEvent", (player, login, password) => {
    console.log(login);
    console.log(password)
})