Skip to content

Learn Skill of all clases and races in 1 npc

Featured Replies

Hi guys im looking for a NPC for a Multiskills server where you can learn wathever skills of race and classe in the same npc....
or any code for it?
Thanks!

  • 2 weeks later...
  • 1 year later...

alguien tiene ese codigo para l2Jfrozen 1.5 o rev 1132?

On 12/20/2021 at 8:31 PM, coquii said:

alguien tiene ese codigo para l2Jfrozen 1.5 o rev 1132?

 

Use English please.

  • 2 months later...

hey you can check this 

line 23 : admin_give_all_skills

 

    <td><button value="Give All Skills" action="bypass -h admin_give_all_skills" width=90 height=15 back="sek.cbui94" fore="sek.cbui92"></td>

 

line : 177 & 231 adminGiveAllSkills

 

 else if(command.equals("admin_give_all_skills"))
        {
            if(activeChar == activeChar.getTarget() || activeChar.getAccessLevel().isGm())
            {
                adminGiveAllSkills(activeChar);
            }
        }

 

 

 /**
     * This function will give all the skills that the target can learn at his/her level
     *
     * @param activeChar the gm char
     */
    private void adminGiveAllSkills(L2PcInstance activeChar)
    {
        L2Object target = activeChar.getTarget();
        L2PcInstance player = null;
        if(target instanceof L2PcInstance)
        {
            player = (L2PcInstance) target;
        }
        else
        {
            activeChar.sendPacket(new SystemMessage(SystemMessageId.INCORRECT_TARGET));
            return;
        }
        boolean countUnlearnable = true;
        int unLearnable = 0;
        int skillCounter = 0;
        L2SkillLearn[] skills = SkillTreeTable.getInstance().getAvailableSkills(player, player.getClassId());
        while(skills.length > unLearnable)
        {
            for(L2SkillLearn s : skills)
            {
                L2Skill sk = SkillTable.getInstance().getInfo(s.getId(), s.getLevel());
                if(sk == null || !sk.getCanLearn(player.getClassId()))
                {
                    if(countUnlearnable)
                    {
                        unLearnable++;
                    }
                    continue;
                }
                if(player.getSkillLevel(sk.getId()) == -1)
                {
                    skillCounter++;
                }
                player.addSkill(sk, true);
                sk = null;
            }
            countUnlearnable = false;
            skills = SkillTreeTable.getInstance().getAvailableSkills(player, player.getClassId());
        }
        //Notify player and admin
        player.sendMessage("A GM gave you " + skillCounter + " skills.");
        activeChar.sendMessage("You gave " + skillCounter + " skills to " + player.getName());
        player.sendSkillList();
        skills = null;
        player = null;
        target = null;
    }

 

 

 

you can take inspiration from this example of the admin panel, create an npc, and also modify the level in the function if you want to give all the skills from level 1. It's been a very long time since I've been coding on l2, so I don't know if this source can help you...

 

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.