1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Идея Перетаскивание вещей в бд и обратно

Тема в разделе "Запросы на разработку плагинов", создана пользователем Lapos213, 13 фев 2013.

  1. DPOH-VAR

    DPOH-VAR Старожил Пользователь

    Баллы:
    153
    Skype:
    dpohvar
    Да ничего страшного и не произойдет, БД защищены от таких ситуаций.
    Просто кому-то из них придется подождать несколько лишних миллисекунд.

    Подробнее:
    * При чтении таблицы, клиент ставит READ LOCK до окончания работы с таблицей. Другие клиенты в это время тоже могут читать данные, но не изменять.
    * При внесении изменений, клиент ставит WRITE LOCK. Тут уже никто не может читать или писать.
    * блокировка обычно устанавливается на всю таблицу. Если изменяемое значение точно определяется первичным индексом - то LOCK может ставиться только на одну строку таблицы.
     
  2. Shevchik

    Shevchik Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Итак готова альфа-версия
    https://github.com/Shevchik/ItemMoveSQL
    Немного инструкций.
    В конфиге вы найдёте настройки относящиеся к подключению к mysql.
    Если пользователь подключающийся к mysql не может создавать БД, то переключите checkbd : false;
    также в конфиге есть переменная ограничивающя максимальное количество вещей хранимая игроком в БД.
    Убедитесь что все настройки правильные и плагин не сыпет стактрейсам при старте.
    команды:
    /imsql add - добавляет предмет руке в базу данных (id и subid, остальная информация не сохраняется)
    /imsql view - показывает принадлежашие вам предметы в базе
    /imsql get {Номер вещи в БД} - забирает из БД вещь под данным номером, если она вам принадлежит.

    Проблемы которые есть, но я пока не стал их решать: Если вещей уже максимум в бд для этого игрока, но игрок всё равно решит положить вещь, то она отнимется, а потом вернётся, но если инвентарь был в этот момент был полон то вещь пропадает.

    При получении вещи, если инвентарь полон, то вещь теряется, поэтому держите свободное место в инвентаре.

    Если эта версия будет более-менее работать,то будем пилить дальше.
     
    ВремяПриключений, Ccc, dvm и 3 другим нравится это.
  3. Автор темы
    Lapos213

    Lapos213 Старожил Пользователь

    Баллы:
    103
    всё отлично работает!
     
  4. Автор темы
    Lapos213

    Lapos213 Старожил Пользователь

    Баллы:
    103
    Я тут ещё коечто придумал можно написать скрипт который будет показывать какие вещи лежат в хранилище (mysql базе)
     
  5. Shevchik

    Shevchik Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Неплохо бы, но в этом я не спец, хотя если кто нактает примерный дизайн, то можно поробовать.
     
    Оригинало_о нравится это.
  6. Loger

    Loger Активный участник Пользователь

    Баллы:
    88
    Skype:
    trofimov1995trofimov
    Скоро будет) гулял просто, а можешь структуру базы кинуть?
    Уже не надо вытащил из плагина
    Кое что накидал, но для DLE пока что, для другой CMS не проблема переделать, но еще есть одно но, если требуется чтобы были название и картинки, каждый итем со ссылкой на картинку и реальным идом, и названием надо будет в ручную добавлять в базу.
    vyvod.png
    Вопрос, делать вывод с картинкой, с именем, или просто Ид предмета, количество и команду для получения?
     
    ВремяПриключений нравится это.
  7. Shevchik

    Shevchik Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Сделай для bukkit id готовую базу, а остальное - id:id и команду получения.
    И сделай скрипт так чтобы айфрейм вставил и всё
     
  8. Loger

    Loger Активный участник Пользователь

    Баллы:
    88
    Skype:
    trofimov1995trofimov
    Для DLE скрипт готов на 100%. Добавление происходит через скрипт
    удобно тем, что можно выгрузить в любой Div блок.
    Код:
    <script type="text/javascript">
    $('#news-content').load('/table/index.php');
    </script>
    Базу стандартных блоков не стал делать. Выложу меню для добавления. Кому очень нужно пусть добавляет :) Через часик доведу до ума, и выложу.
    Добавлять придется все блоки в ручную.
    id название картинка
     
  9. Loger

    Loger Активный участник Пользователь

    Баллы:
    88
    Skype:
    trofimov1995trofimov
    Вот скрипт вывода блоков для этого плагина под DLE
    Установка:
    1. Залить папку в корень сайта
    2. Открыть файл conn.php и настроить.
    3. Создать статическую страницу
    и добавить в неё код
    Код:
    {include file="view/index.php"}
    для добавления картинок и название перейдите по ссылке http://you-site.ru/view/edit.php. Если картинок не будет, отображает Место картинки No Img, место имени блока id:subid и команду для получения
     

    Вложения:

    • view.zip
      Размер файла:
      2,5 КБ
      Просмотров:
      22
  10. Shevchik

    Shevchik Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Потому что я уже сделал.
    https://github.com/Shevchik/ItemMoveSQL/tree/test
    Пару штрихов и можно выкладывать.
    О нашёл наконец-то эту тему.
     
  11. Shevchik

    Shevchik Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Как видишь - нет.
     
    Vedroyder нравится это.

Поделиться этой страницей