Авто-экипировка после смены профы

Модификации и дополнения, редактирование файлов ядра.
blackevil12
Завсегдатай
Сообщения: 127
Зарегистрирован: 16 дек 2009, 02:23
Откуда: Киев

22 май 2015, 15:06



Описание: Модификация позволяет автоматически одевать шмот при взятии профессии
Автор: AbsolutePower

L2ClassMasterInstance.java

Код: Выделить всё

if (player.isSubClassActive())
                        player.getSubClasses().get(player.getClassIndex()).setClassId(player.getActiveClass());
                else
                        player.setBaseClass(player.getActiveClass());
 
                +if(newJobLevel == 3  && !player.isSubClassActive())
                        +autoEquip(player);
 
add this method in L2ClassMasterInstance everywhere you want
        private static void autoEquip(final L2PcInstance player)
        {
                final ClassId HDagger =ClassId.adventurer;
                final ClassId Sagi =ClassId.sagittarius;
                final ClassId Duelist =ClassId.duelist;
                final ClassId Tit =ClassId.titan;
                final ClassId Nixas =ClassId.grandKhauatari;
                final ClassId Paladin =ClassId.phoenixKnight;
                final ClassId MSentinel =ClassId.moonlightSentinel;
                final ClassId FSeeker =ClassId.fortuneSeeker;
                final ClassId Maestro =ClassId.maestro;
                final ClassId dreadnought =ClassId.dreadnought;
                final ClassId hellKnight =ClassId.hellKnight;
                final ClassId evaTemplar =ClassId.evaTemplar;
                final ClassId swordMuse =ClassId.swordMuse;
                final ClassId windRider =ClassId.windRider;
                final ClassId shillienTemplar =ClassId.shillienTemplar;
                final ClassId spectralDancer =ClassId.spectralDancer;
                final ClassId ghostHunter =ClassId.ghostHunter;
                final ClassId ghostSentinel =ClassId.ghostSentinel;
               
                if(player.getClassId().equals(HDagger))
                        player.giveItems(true,false,false,false,false,false,false,false,false,false,false,false);
                       
                else if(player.getClassId().equals(Sagi))
                        player.giveItems(false,true,false,false,false,false,false,false,false,false,false,false);
                       
                else if(player.getClassId().isMage())
                        player.giveItems(false,false,true,false,false,false,false,false,false,false,false,false);
               
                else if(player.getClassId().equals(Duelist))
                        player.giveItems(false,false,false,true,false,false,false,false,false,false,false,false);
               
                else if(player.getClassId().equals(Tit))
                        player.giveItems(false,false,false,false,true,false,false,false,false,false,false,false);
               
                else if(player.getClassId().equals(Nixas))
                        player.giveItems(false,false,false,false,false,true,false,false,false,false,false,false);
               
                else if(player.getClassId().equals(Paladin))
                        player.giveItems(false,false,false,false,false,false,true,false,false,false,false,false);
               
                else if(player.getClassId().equals(MSentinel))
                        player.giveItems(false,true,false,false,false,false,false,false,false,false,false,false);
               
                else if(player.getClassId().equals(FSeeker))
                        player.giveItems(false,false,false,false,false,false,false,true,false,false,false,false);
               
                else if(player.getClassId().equals(Maestro))
                        player.giveItems(false,false,false,false,false,false,false,true,false,false,false,false);
               
                else if(player.getClassId().equals(dreadnought))
                        player.giveItems(false,false,false,false,false,false,false,false,true,false,false,false);
               
                else if(player.getClassId().equals(hellKnight))
                        player.giveItems(false,false,false,false,false,false,false,false,false,true,false,false);
               
                else if(player.getClassId().equals(evaTemplar))
                        player.giveItems(false,false,false,false,false,false,false,false,false,true,false,false);
               
                else if(player.getClassId().equals(swordMuse))                 
                        player.giveItems(false,false,false,false,false,false,false,false,false,false,true,false);
               
                else if(player.getClassId().equals(windRider))                 
                        player.giveItems(true,false,false,false,false,false,false,false,false,false,false,false);
               
                else if(player.getClassId().equals(shillienTemplar))
                        player.giveItems(false,false,false,false,false,false,false,true,false,false,false,false);
                               
                else if(player.getClassId().equals(spectralDancer))
                        player.giveItems(false,false,false,false,false,false,false,false,false,false,false,true);
               
                else if(player.getClassId().equals(ghostHunter))
                        player.giveItems(true,false,false,false,false,false,false,false,false,false,false,false);
               
                else if(player.getClassId().equals(ghostSentinel))
                        player.giveItems(false,true,false,false,false,false,false,false,false,false,false,false);
               
        }
 
L2PcInstance.java
        public void giveItems(boolean dagger,boolean sagi,boolean mage,boolean duelist,boolean tit,boolean nixas,boolean paladin,boolean FSeeker,boolean dreadnought,boolean HellKnight,boolean swordMuse,boolean dancer)
        {
                final int[] armorIdDagger = {6590,6379,6380,6381,6382,920,858,858,889,889};
                final int[] armorIdSagi = {7577,6379,6380,6381,6382,920,858,858,889,889};
                final int[] armorIdMage = {6608,2407,5767,5779,512,920,858,858,889,889};       
                final int[] armorIdDuelist = {6580,6373,6374,6375,6376,6378,920,858,858,889,889};
                final int[] armorIdTit = {6605,6373,6374,6375,6376,6378,920,858,858,889,889};
                final int[] armorIdNixas = {6604,6379,6380,6381,6382,920,858,858,889,889};
                final int[] armorIdPaladin = {6581,6373,6374,6375,6376,6377,6378,920,858,858,889,889};
                final int[] armorIdFSeeker = {6585,6373,6374,6375,6376,6377,6378,920,858,858,889,889};
                final int[] armorIddreadnought = {6601,6373,6374,6375,6376,6378,920,858,858,889,889}; 
                final int[] armorIdhellKnight = {6581,6373,6374,6375,6376,6377,6378,920,858,858,889,889};     
                final int[] armorIdswordMuse = {6581,6379,6380,6381,6382,920,858,858,889,889,6377};                   
                final int[] armorIdDancer = {6580,6379,6380,6381,6382,920,858,858,889,889};
 
                if(dagger)
                {
                if (armorIdDagger.length == 0)
                        return;
                L2ItemInstance items = null;
                for (int id : armorIdDagger)
                {             
                        getInventory().addItem("Armors", id, 1, this, null);           
                        items = getInventory().getItemByItemId(id);
                        items.updateDatabase();
                        getInventory().equipItemAndRecord(items);
                        getInventory().reloadEquippedItems(); 
                this.broadcastCharInfo();
                this.sendPacket(new InventoryUpdate());
                this.sendPacket(new ItemList(this, false));
                this.sendPacket(new StatusUpdate(this));
                }
                }
                else if(sagi)
                {
                        if (armorIdSagi.length == 0)
                                return;
                        L2ItemInstance items = null;
                        for (int id : armorIdSagi)
                        {
                                getInventory().addItem("Armors", id, 1, this, null);           
                                items = getInventory().getItemByItemId(id);
                                items.updateDatabase();
                                getInventory().equipItemAndRecord(items);
                                getInventory().reloadEquippedItems(); 
                        this.broadcastCharInfo();
                        this.sendPacket(new InventoryUpdate());
                        this.sendPacket(new ItemList(this, false));
                        this.sendPacket(new StatusUpdate(this));
                        }
                }
                else if(mage)
                        {
                                if (armorIdMage.length == 0)
                                        return;
                                L2ItemInstance items = null;
                                for (int id : armorIdMage)
                                {
                                        getInventory().addItem("Armors", id, 1, this, null);           
                                        items = getInventory().getItemByItemId(id);
                                        items.updateDatabase();
                                        getInventory().equipItemAndRecord(items);
                                        getInventory().reloadEquippedItems(); 
                                this.broadcastCharInfo();
                                this.sendPacket(new InventoryUpdate());
                                this.sendPacket(new ItemList(this, false));
                                this.sendPacket(new StatusUpdate(this));                                       
                                }
                        }
                else if(duelist)
                                {
                                        if (armorIdDuelist.length == 0)
                                                return;
                                        L2ItemInstance items = null;
                                        for (int id : armorIdDuelist)
                                        {
                                                getInventory().addItem("Armors", id, 1, this, null);           
                                                items = getInventory().getItemByItemId(id);
                                                items.updateDatabase();
                                                getInventory().equipItemAndRecord(items);
                                                getInventory().reloadEquippedItems(); 
                                        this.broadcastCharInfo();
                                        this.sendPacket(new InventoryUpdate());
                                        this.sendPacket(new ItemList(this, false));
                                        this.sendPacket(new StatusUpdate(this));       
                                        }
                                }
                else if(tit)
                                        {
                                                if (armorIdTit.length == 0)
                                                        return;
                                                L2ItemInstance items = null;
                                                for (int id : armorIdTit)
                                                {
                                                        getInventory().addItem("Armors", id, 1, this, null);           
                                                        items = getInventory().getItemByItemId(id);
                                                        items.updateDatabase();
                                                        getInventory().equipItemAndRecord(items);
                                                        getInventory().reloadEquippedItems(); 
                                                this.broadcastCharInfo();
                                                this.sendPacket(new InventoryUpdate());
                                                this.sendPacket(new ItemList(this, false));
                                                this.sendPacket(new StatusUpdate(this));                                       
                                                }
                                        }
                else if(nixas)
                                                {
                                                        if (armorIdNixas.length == 0)
                                                                return;
                                                        L2ItemInstance items = null;
                                                        for (int id : armorIdNixas)
                                                        {
                                                                getInventory().addItem("Armors", id, 1, this, null);           
                                                                items = getInventory().getItemByItemId(id);
                                                                items.updateDatabase();
                                                                getInventory().equipItemAndRecord(items);
                                                                getInventory().reloadEquippedItems(); 
                                                        this.broadcastCharInfo();
                                                        this.sendPacket(new InventoryUpdate());
                                                        this.sendPacket(new ItemList(this, false));
                                                        this.sendPacket(new StatusUpdate(this));
                                                        }
                                                }
                else if(paladin)
                                                        {
                                                                if (armorIdPaladin.length == 0)
                                                                        return;
                                                                L2ItemInstance items = null;
                                                                for (int id : armorIdPaladin)
                                                                {
                                                                        getInventory().addItem("Armors", id, 1, this, null);           
                                                                        items = getInventory().getItemByItemId(id);
                                                                        items.updateDatabase();
                                                                        getInventory().equipItemAndRecord(items);
                                                                        getInventory().reloadEquippedItems(); 
                                                                this.broadcastCharInfo();
                                                                this.sendPacket(new InventoryUpdate());
                                                                this.sendPacket(new ItemList(this, false));
                                                                this.sendPacket(new StatusUpdate(this));
                                                                }                                                     
                                                }
                else if(FSeeker)
                {
                        if (armorIdFSeeker.length == 0)
                                return;
                        L2ItemInstance items = null;
                        for (int id : armorIdFSeeker)
                        {
                                getInventory().addItem("Armors", id, 1, this, null);           
                                items = getInventory().getItemByItemId(id);
                                items.updateDatabase();
                                getInventory().equipItemAndRecord(items);
                                getInventory().reloadEquippedItems(); 
                        this.broadcastCharInfo();
                        this.sendPacket(new InventoryUpdate());
                        this.sendPacket(new ItemList(this, false));
                        this.sendPacket(new StatusUpdate(this));
                        }                                                     
        }
                else if(dreadnought)
                {
                        if (armorIddreadnought.length == 0)
                                return;
                        L2ItemInstance items = null;
                        for (int id : armorIddreadnought)
                        {
                                getInventory().addItem("Armors", id, 1, this, null);           
                                items = getInventory().getItemByItemId(id);
                                items.updateDatabase();
                                getInventory().equipItemAndRecord(items);
                                getInventory().reloadEquippedItems(); 
                        this.broadcastCharInfo();
                        this.sendPacket(new InventoryUpdate());
                        this.sendPacket(new ItemList(this, false));
                        this.sendPacket(new StatusUpdate(this));
                        }
        }
                else if(HellKnight)
                {
                        if (armorIdhellKnight.length == 0)
                                return;
                        L2ItemInstance items = null;
                        for (int id : armorIdhellKnight)
                        {
                                getInventory().addItem("Armors", id, 1, this, null);           
                                items = getInventory().getItemByItemId(id);
                                items.updateDatabase();
                                getInventory().equipItemAndRecord(items);
                                getInventory().reloadEquippedItems(); 
                        this.broadcastCharInfo();
                        this.sendPacket(new InventoryUpdate());
                        this.sendPacket(new ItemList(this, false));
                        this.sendPacket(new StatusUpdate(this));
                        }
        }
                else if(swordMuse)
                {
                if (armorIdswordMuse.length == 0)
                        return;
                L2ItemInstance items = null;
                for (int id : armorIdswordMuse)
                {             
                        getInventory().addItem("Armors", id, 1, this, null);           
                        items = getInventory().getItemByItemId(id);
                        items.updateDatabase();
                        getInventory().equipItemAndRecord(items);
                        getInventory().reloadEquippedItems(); 
                this.broadcastCharInfo();
                this.sendPacket(new InventoryUpdate());
                this.sendPacket(new ItemList(this, false));
                this.sendPacket(new StatusUpdate(this));
                }
                }
                else if(dancer)
                {
                if (armorIdDancer.length == 0)
                        return;
                L2ItemInstance items = null;
                for (int id : armorIdDancer)
                {             
                        getInventory().addItem("Armors", id, 1, this, null);           
                        items = getInventory().getItemByItemId(id);
                        items.updateDatabase();
                        getInventory().equipItemAndRecord(items);
                        getInventory().reloadEquippedItems(); 
                this.broadcastCharInfo();
                this.sendPacket(new InventoryUpdate());
                this.sendPacket(new ItemList(this, false));
                this.sendPacket(new StatusUpdate(this));
                }
                }
               
               
}

Вернуться в «Ядро сервера (Java)»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя