- Баллы
- 78
а не вкурсе как происходит открытие этого файла для просмотра?Ну это само собой, хотелось бы это прикрутить к тому же mcshop'у
Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
а не вкурсе как происходит открытие этого файла для просмотра?Ну это само собой, хотелось бы это прикрутить к тому же mcshop'у
ну фришку то я виделПонятия не имею, но могу кинуть шоп
Будьте проще, временное хранилищеЕсли во время редактирования инвентаря на сайте игрок решит зайти на сервер, может произойти 2 вещи: краш в случае крафтбаккита и кик игрока в случае спайгота, полюбому нужен плагин который хотя бы запрещает подключение к серверу пока игрок редактирует инвентарь на сайте.

Апну тему, тоже интересно, как это сделать. Чтобы не было "весело серверу", перед перезаписью надо проверять, онлайн игрок или нет. Так как сделать запись в dat ? С помощью того скрипта вышеНе подскажу, ибо работать с инвентарём игрока не из главного потока - самоубийство, а этот файл вообще из другой программы с файлом собирается работать, весело серверу будет если кто-то зайдёт пока файл открыт где-нибудь ещё.
Если игрок онлайн, то можно работать напрямую с его инвентарём, координатами и т.д., а если оффлайн, то считывать NBT из .dat, менять данные и производить запись (не забываем про проверку онлайна).Апну тему, тоже интересно, как это сделать. Чтобы не было "весело серверу", перед перезаписью надо проверять, онлайн игрок или нет. Так как сделать запись в dat ? С помощью того скрипта выше
Вот именно. Считывать данные, используя скрипт, который выкладывали в этой теме, из NBT я научился. А как записывать? Считываю я так:Если игрок онлайн, то можно работать напрямую с его инвентарём, координатами и т.д., а если оффлайн, то считывать NBT из .dat, менять данные и производить запись (не забываем про проверку онлайна).
$nbt = new NBT();
$pathServer = "ftp://user:pass@host:21/world/players/";
$massiv=$nbt->loadFile($pathServer.$_GET['player'].".dat");
print_r($massiv);
Есть writeTag и writeType.Вот именно. Считывать данные, использую скрипт, который выкладывали в этой теме, из NBT я научился. А как записывать? Считываю я так:
PHP:$nbt = new NBT(); $pathServer = "ftp://user:pass@host:21/world/players/"; $massiv=$nbt->loadFile($pathServer.$_GET['player'].".dat"); print_r($massiv);
Можно пример? Когда массив я извлекаю, там ведь сначала идут обычные параметры типа скорости, режима игры, потом уже инвентарь, и в самом инвентаре куча массивов, каждый из которых является отдельным предметом. Как добавить например в слот 2 стак предметов, имеющих ид=5?Есть writeTag и writeType.
Пример кода дать не могу. Чтобы посмотреть на примеры тегов и типов, можно с помощью NBTExplorer открыть любой .dat игрока.Можно пример? Когда массив я извлекаю, там ведь сначала идут обычные параметры типа скорости, режима игры, потом уже инвентарь, и в самом инвентаре куча массивов, каждый из которых является отдельным предметом. Как добавить например в слот 2 стак предметов, имеющих ид=5?
Не знаете или не хотите? В любом случае, спасибо за хоть какую-то помощь. Посмотрю NBTExplorer...Пример кода дать не могу. Чтобы посмотреть на примеры тегов и типов, можно с помощью NBTExplorer открыть любой .dat игрока.
$newslot=array("id"=>"5","Count"=>"64","Damage"=>"0","Slot"=>"10");
$massiv=$shop->setFile($pathServer."LordBekket.dat","Inventory",$newslot);
$shop->writeFile($pathServer."LordBekket.dat");