This is a mobile optimized page that loads fast, if you want to load the real page, click this text.
Статус
В этой теме нельзя размещать новые ответы.

X-Clusiv

Модератор
Команда форума
high coder
4 Окт 2020
681
340
161
29
нажатие клавиш, назначение
Я же говорил что написал систему но не проверял) Пришлось залить на проект и затестировать. И действительно допустил ошибки. Сейчас поправил и все работает. В прошлом посте тоже исправил. И сейчас должно заработать.
 

frytech

Начинающий специалист
15 Янв 2022
128
17
53
Дружище, зачем ты сохраняешь настройки игрока (особенно, такие, как бинд) на сервер, когда есть mp.storage?
 

XDeveluxe

Модератор
Команда форума
high coder
30 Авг 2021
2,292
1,533
211
27
mp.storage сбрасывается, если игрок сносит систему или просто чистит папку с рейджом (именно там и хранится твой mp.storage), или пересядет на другой компьютер, или еще сотня причин.
Это плохой способ хранения данных, которые желательно для игрока было бы сохранять. Я, как игрок, не хотел бы свои настройки потерять, если я даже не знал, что они там хранятся.
В mp.storage можно хранить что-то, что не страшно потерять, но не более.
 
Реакции: Harland David Sanders

frytech

Начинающий специалист
15 Янв 2022
128
17
53
Ну хз, для этого достаточно на форуме гайд сделать, мол файл storage.json стоит сохранить, если хотите что либо удалить/сбросить.
Но если хочется иметь облачные настройки игрока, тогда да, mp.storage не нужен.
Я спросил его об этом потому, что мало ли он не знал, так то вещь полезная для хранения исключительно локальной информации.
 

X-Clusiv

Модератор
Команда форума
high coder
4 Окт 2020
681
340
161
29
Бывает что этот файл затирается при какой-либо ошибке на клиенте. И не угадаешь когда сохранить.
Да и сохранять какой-то файл, не уважение к игрокам как минимум. Игрок вообще не должен замарачиаться о сохранении его данных.
 
Реакции: hun1yy

hun1yy

Активный участник
2 Авг 2022
248
12
33
Всем привет, решил вернуться к этому вопросу т.к. ничего не работает, код остался такой же, у кого есть еще предположения отпишите
 

lmklde

Специалист
1 Мар 2021
75
51
80
Судя по твоему коду:
JavaScript:
mp.events.add('setSettingsBindsS',(player,bind,key) => {
  console.log(`bind ${bind} to key ${key}`);
  settings = player.getVariable('settings');
  settings.binds[bind] = key;
  player.call('loadUnBinds',[JSON.stringify(settings)]);
  player.setVariable('settings',settings);
  setTimeout(() => {player.call('loadBinds');},200);
  player.call('menu:updateSettings');
  mp.db.query("UPDATE `accounts` SET `settings` = ? WHERE username = ?",[JSON.stringify(player.getVariable('settings')),player.name]);
});
Ты сначала присваиваешь новую клавишу, а потом её анбиндишь
JavaScript:
settings.binds[bind] = key;
player.call('loadUnBinds',[JSON.stringify(settings)]);
Нужно анбиндить старый key, а потом присваивать новый
 
Реакции: XDeveluxe

hun1yy

Активный участник
2 Авг 2022
248
12
33
действительно помогло, спасибо, я не заметил
 
Реакции: lmklde
Статус
В этой теме нельзя размещать новые ответы.