Очень легкая система, почему не можешь потратить от силы 15 минут и сделать ее?
function playerDeathHandler(player, reason, killer) {
// Тут ты определяешь игрока, которому нужно отправить событие через call
// Можешь админам, можешь просто в целом выводить логи всем
// Далее вызываешь, как пример, так
// Важно: player - это тот игрок, которого ты выбрал для отправки события
player.call("client::onPlayerDeath", player, reason, killer);
}
mp.events.add("playerDeath", playerDeathHandler);
function PlayerDeathHandler(deathPlayer, weaponHash, killerPlayer)
{
// Тут ты можешь добавлять это в массив, в cef, куда удобнее и выводить на экран.
// Я бы подобное для теста реализовал через mp.game.graphics.drawText
// По weaponHash уже можно вывести название или сразу textLabel
// Пример с выводом в чат.
mp.gui.chat.push(`( ${killerPlayer.remoteId} ) ${killerPlayer.name} kill ( ${deathPlayer.remoteId} ) ${deathPlayer.name} with ${weaponHash}`)
}
mp.events.add("client::onPlayerDeath", PlayerDeathHandler);
я канеш в программировании 0, даже меньше нуля, но разве массив когда забьется, не будет нагружать клиент?Смотри, есть серверное событие:
JavaScript:function playerDeathHandler(player, reason, killer) { // Тут ты определяешь игрока, которому нужно отправить событие через call // Можешь админам, можешь просто в целом выводить логи всем // Далее вызываешь, как пример, так // Важно: player - это тот игрок, которого ты выбрал для отправки события player.call("client::onPlayerDeath", player, reason, killer); } mp.events.add("playerDeath", playerDeathHandler);
Потом на клиент добавляешь обработчик этого события:
JavaScript:function PlayerDeathHandler(deathPlayer, weaponHash, killerPlayer) { // Тут ты можешь добавлять это в массив, в cef, куда удобнее и выводить на экран. // Я бы подобное для теста реализовал через mp.game.graphics.drawText // По weaponHash уже можно вывести название или сразу textLabel // Пример с выводом в чат. mp.gui.chat.push(`( ${killerPlayer.remoteId} ) ${killerPlayer.name} kill ( ${deathPlayer.remoteId} ) ${deathPlayer.name} with ${weaponHash}`) } mp.events.add("client::onPlayerDeath", PlayerDeathHandler);
UPD: Аналог события playerDeath на C# -> тык
Зависит от реализации, если постоянно его заполнять строками и не чистить - да, спустя пару сотен или пару тысяч объектов клиенту будет уже не очень приятно.я канеш в программировании 0, даже меньше нуля, но разве массив когда забьется, не будет нагружать клиент?
получаеться мне надо соверное событие в какой файл?Смотри, есть серверное событие:
JavaScript:function playerDeathHandler(player, reason, killer) { // Тут ты определяешь игрока, которому нужно отправить событие через call // Можешь админам, можешь просто в целом выводить логи всем // Далее вызываешь, как пример, так // Важно: player - это тот игрок, которого ты выбрал для отправки события player.call("client::onPlayerDeath", player, reason, killer); } mp.events.add("playerDeath", playerDeathHandler);
Потом на клиент добавляешь обработчик этого события:
JavaScript:function PlayerDeathHandler(deathPlayer, weaponHash, killerPlayer) { // Тут ты можешь добавлять это в массив, в cef, куда удобнее и выводить на экран. // Я бы подобное для теста реализовал через mp.game.graphics.drawText // По weaponHash уже можно вывести название или сразу textLabel // Пример с выводом в чат. mp.gui.chat.push(`( ${killerPlayer.remoteId} ) ${killerPlayer.name} kill ( ${deathPlayer.remoteId} ) ${deathPlayer.name} with ${weaponHash}`) } mp.events.add("client::onPlayerDeath", PlayerDeathHandler);
UPD: Аналог события playerDeath на C# -> тык
В папке с файлами сервера у тебя естьполучаеться мне надо соверное событие в какой файл?
и клинскую добавлять обработчик события
спасибоВ папке с файлами сервера у тебя есть
-- client_packages - это, что считается клиентом (Эти файлы юзеры загружают, когда заходят на твой сервер)
-- packages - это серверные файлы.
В принципе, ты можешь добавить эти два примера хоть в Index.js (верхний код - в серверные файлы, нижний - в клиентские)
В папке с файлами сервера у тебя есть
-- client_packages - это, что считается клиентом (Эти файлы юзеры загружают, когда заходят на твой сервер)
-- packages - это серверные файлы.
В принципе, ты можешь добавить эти два примера хоть в Index.js (верхний код - в серверные файлы, нижний - в клиентские)
Выглядит как страшная солянка, конечно, но.
ладно понялВыглядит как страшная солянка, конечно, но.
Ты сейчас в файле index.js который относится к клиенту (client_packages) - здесь тебе нужно только то, что ты добавил с 760 по 770 строчку.
То, что с 746 по 756 нужно перенести в index.js, который серверный.
Выглядит как страшная солянка, конечно, но.
Ты сейчас в файле index.js который относится к клиенту (client_packages) - здесь тебе нужно только то, что ты добавил с 760 по 770 строчку.
То, что с 746 по 756 нужно перенести в index.js, который серверный.