Roven Posted July 23, 2018 Posted July 23, 2018 Как понять, что делают эти функции? О какой синхронизации идёт речь? NAPI.Data.SetEntityData NAPI.Entity.SetEntitySharedData NAPI.Data.GetEntityData NAPI.Data.GetEntitySharedData
WinHexs Posted July 23, 2018 Posted July 23, 2018 (edited) Синхронизация данных сервера с клиентом, например, уровень, опыт, почта и т.д. Хранишь данные игрока в переменной pData: PlayerData pData = new PlayerData(); Заполняешь pData и с помощью SetEntityData изменяешь значение сущности: NAPI.Data.SetEntityData(player, "PlayerData", pData); Эти данные доступны только на сервере и получить ты их можешь с помощью GetEntityData. С помощью SetEntitySharedData изменяешь значение сущности и синхронизируешь его с клиентами: NAPI.Data.SetEntitySharedData(player, "PlayerSyncData", pData); На клиентской стороне можешь получить эти данные следующем образом: let playerData = mp.players.local.getVariable('PlayerSyncData'); И уже работать с ними: let str = playerData.Password + '\n' + playerData.Email; /* Вывод синхронизированных данных тексдравом на экран */ mp.events.add('render', () => { mp.game.graphics.drawText(str, [0.5, 0.005], { font: 1, color: [255,255,0,230], scale: [1,1], outline: true }); }); Класс PlayerData: public class PlayerData { public string Password { get; set; } public string Email { get; set; } } Можешь почитать вот эту статью И ещё список синхронизируемых типов Edited July 23, 2018 by WinHexs 2
Roven Posted July 28, 2018 Author Posted July 28, 2018 Такую статью я еще не находил.. Спасибо! Но.. это типа базы данных, вместо массивов? Т.е, я сохраняю данные сперва, в базе данных, потом считываю с базы дынных информацию и храню ее на сервере с помощью NAPI.Data.SetEntityData Далее, если игроку другому понадобится посмотреть уровень своего друга допустим, то для этого мне нужно синхронизировать нужные данные заранее, что я запомнил тогда в пункте 1 и сделать функцию на получения этих данных, после чего игрок тот будет видеть уровень своего друга.(Например нажал на кнопку в CEF и получить эти синхронизированные данные. Правильно я говорю?
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now