Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Помогите Антидроп по ID

Тема в разделе "[Архив] Помощь", создана пользователем Aizark, 18 мар 2014.

  1. Автор темы
    Aizark

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

    Баллы:
    88
    Привет мои спасатели.
    Для реализации задумки очень нужен хитрый способ/плагин/мод...
    Который будет запрещать терять определённые итемы при смерти.

    Если детально: игрока убивают, а из него дропается все кроме его меча, одежды и ещё пары шмоток. То - что не дропнулось остается с ним после возрождения.

    Чем посоветуете реализовать задуманное?
    Зарание спасибо.
     
  2. Хостинг MineCraft
    <
  3. XenonRaite

    XenonRaite Активный участник

    Баллы:
    68
    реализацией смерти через ядро сервера
     
    ПриветОтЛайки нравится это.
  4. Mr_Bukkit

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

    Баллы:
    123
    Имя в Minecraft:
    danechek
    Заранее*
     
  5. Автор темы
    Aizark

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

    Баллы:
    88
    Опиши поподробней будь добр.
     
  6. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
    Есть такое плагин, сохраняет определенные вещи за игровую валюту, жаль название не помню ибо никогда его не юзал.
     
  7. XenonRaite

    XenonRaite Активный участник

    Баллы:
    68
    эта фегня черевата дюпами.
    Например есть класс class EntityPlayer и в нём есть веализация смерти в функция public void onDeath(DamageSource par1DamageSource)
    и звучит она так
    Код:
    public void onDeath(DamageSource par1DamageSource)
        {
            super.onDeath(par1DamageSource);
            this.setSize(0.2F, 0.2F);
            this.setPosition(this.posX, this.posY, this.posZ);
            this.motionY = 0.10000000149011612D;
    
            if (this.username.equals("Notch"))
            {
                this.dropPlayerItemWithRandomChoice(new ItemStack(Item.appleRed, 1), true);
            }
    
            if (!this.worldObj.getGameRules().getGameRuleBooleanValue("keepInventory"))
            {
                this.inventory.dropAllItems();
            }
    
            if (par1DamageSource != null)
            {
                this.motionX = (double)(-MathHelper.cos((this.attackedAtYaw + this.rotationYaw) * (float)Math.PI / 180.0F) * 0.1F);
                this.motionZ = (double)(-MathHelper.sin((this.attackedAtYaw + this.rotationYaw) * (float)Math.PI / 180.0F) * 0.1F);
            }
            else
            {
                this.motionX = this.motionZ = 0.0D;
            }
    
            this.yOffset = 0.1F;
            this.addStat(StatList.deathsStat, 1);
        }
    Здесь например видно что если игрока зовут Notch! то из него выпадет красное яблоко с какойто вероятностью. и больше ничего. Еще видно проверку что если у мира не стоит правило keepInventory то тогда выкинуть весь шмот игрока напол "this.inventory.dropAllItems();".
    Вот к стати тут надо и менять реализцаию. Вместо dropAllItems() придумать свой.
     

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