Job Advancer - All Jobs (Legends & Phantom & Jett)

Page 1 of 2 12 LastLast
Results 1 to 15 of 29
  1. #1
    Account Upgraded | Title Enabled! AristoCat is offline
    MemberRank
    Apr 2012 Join Date
    947Posts

    idea Job Advancer - All Jobs (Mihile & Dual Blade & Legends & Phantom & Jett)

    Updated to V117, added Mihile and fixed jett a bit more..


    Updated, fixed cannoneer & jett.


    Updated, fixed. (changed cm.changeJob() to cm.getPlayer().changeJob() at some cases.)


    Updated, added dual blade support for job 2.5 (Blade Specialist at level 55)

    You can easily add jobs into this script :)
    Requirements:
    changeJob function at MapleCharacter that changed job by id,
    getJob function at MapleCharacter that tells you what is your current job id,
    getLevel function at MapleCharacter that tells you what is your current level.

    Jobs included:

    Spoiler:

    0
    100
    200
    300
    400
    500
    501
    508
    1000
    1100
    1200
    1300
    1400
    1500
    2000
    2001
    2002
    2003
    2100
    2300
    2400
    3000
    3001
    3100
    3200
    3300
    3500
    5000
    5100
    5111
    5112
    *Those are job groups, means that 3100 includes 3110, 3111 and 3112.


    Evan cannot use this, if you want me to add evan, post here.

    Script:

    PHP Code:
    /*
     * Job Advancer
     * Creator: Aristocat
     */


    var job = [
    [[
    100"Warrior"], [200"Magician"], [300"Bowman"], [400"Thief"], [500"Pirate"]],
    [[
    1100"Dawn Warrior"], [1200"Blaze Wizard"], [1300"Wind Archer"], [1400"Night Walker"], [1500"Thunder Breaker"]],
    [[
    3200"Battle Mage"], [3300"Wild Hunter"], [3500"Mechanic"]],
    [[
    110"Fighter"], [120"Page"], [130"Spearman"]],
    [[
    210"Wizard (F/P)"], [220"Wizard (I/L)"], [230"Cleric"]],
    [[
    310"Hunter"], [320"Crossbow Man"]],
    [[
    410"Assassin"], [420"Bandit"]],
    [[
    510"Brawler"], [520"Gunslinger"]]];
    var 
    status 0;
    var 
    select;

    function 
    start() {
        
    status = -1;
        
    action(100);


    function 
    action(modetypeselection) {
        if (
    mode == 1)
            
    status++;
        else if (
    mode == -1)
            
    status--;
        else {
            
    cm.dispose();
            return;
        }
        if (
    status == 0) {
            if (
    cm.getPlayer().getLevel() >= 10 && (cm.getPlayer().getJob() % 1000 == || cm.getPlayer().getJob() == 501 || cm.getPlayer().getJob() == 507 || cm.getPlayer().getJob() == 3001 || cm.getPlayer().getJob() >= 2001 && cm.getPlayer().getJob() <= 2003) || cm.getPlayer().getLevel() >= 30 && (cm.getPlayer().getJob() % 1000 && cm.getPlayer().getJob() % 100 == || cm.getPlayer().getJob() == 508) || cm.getPlayer().getLevel() >= 70 && cm.getPlayer().getJob() % 10 == && cm.getPlayer().getJob() % 100 != || cm.getPlayer().getLevel() >= 120 && cm.getPlayer().getJob() % 10 == || cm.getPlayer().getLevel() >= 55 && cm.getPlayer().getJob() == 431)
                
    cm.sendYesNo("Would you like to job advance?");
            else {
                
    cm.sendOk("You may not advance at the current state.");
                
    cm.dispose();
            }
        } else if (
    status == 1) {
            if (
    cm.getPlayer().getSubcategory() == && cm.getPlayer().getJob() == 0) { //Dual Blade
                
    cm.getPlayer().changeJob(400);
                
    cm.dispose();
                return;
            }
            if (
    cm.getPlayer().getSubcategory() == && cm.getPlayer().getJob() == 400) { //Dual Blade
                
    cm.getPlayer().changeJob(430);
                
    cm.dispose();
                return;
            }
            if (
    cm.getPlayer().getSubcategory() == && cm.getPlayer().getJob() == 0) { //Cannoneer
                
    cm.getPlayer().changeJob(501);
                
    cm.dispose();
                return;
            }
            switch (
    cm.getPlayer().getJob()) {
                
    //Jobs with selections
                
    case 0// Beginner
                    
    jobSelection(0);
                    break;
                case 
    1000// Noblesse
                    
    jobSelection(1);
                    break;
                
    //Note: Heroes doesn't get job selection, the same goes about Nova.
                
    case 3000// Citizen
                    
    jobSelection(2);
                    break;
                case 
    100// Warrior
                    
    jobSelection(3);
                    break;
                case 
    200// Magician
                    
    jobSelection(4);
                    break;
                case 
    300// Bowman
                    
    jobSelection(5);
                    break;
                case 
    400// Thief
                    
    jobSelection(6);
                    break;
                case 
    500// Pirate
                    
    jobSelection(7);
                    break;
                
    //Special Jobs
                
    case 501// Pirate(Cannoneer)
                    
    cm.getPlayer().changeJob(530);
                    
    cm.dispose();
                    break;
                case 
    507// Jett
                    
    cm.getPlayer().changeJob(508);
                    
    cm.dispose();
                    break;
                case 
    508// Pirate(Jett)
                    
    cm.getPlayer().changeJob(570);
                    
    cm.dispose();
                    break;
                case 
    2000// Legend(Aran)
                    
    cm.getPlayer().changeJob(2100);
                    
    cm.dispose();
                    break;
                case 
    2001// Farmer(Evan)
                    
    cm.getPlayer().changeJob(2200);
                    
    cm.dispose();
                    break;
                case 
    2002// Mercedes
                    
    cm.getPlayer().changeJob(2300);
                    
    cm.dispose();
                    break;
                case 
    2003// Phantom Jr.
                    
    cm.getPlayer().changeJob(2400);
                    
    cm.dispose();
                    break;
                case 
    3001// Demon Slayer
                    
    cm.getPlayer().changeJob(3100);
                    
    cm.dispose();
                    break;
                
    //Nova should be added here. KMS already got it, wait for GMS to get it.
                //My guess is that Nova are 4xxx because Mihile is 5xxx.
                //Guesses: Luminous - 2004, 24xx Kaiser - 4000, 41xx Angelic Burster - 4001, 45xx
                
    case 5000// Nameless Warden (Mihile)
                    
    cm.getPlayer().changeJob(5100);
                    
    cm.dispose();
                    break;
                
    // Dual Blader
                
    case 430// Blade Reqruit
                
    case 431// Blade Acolyte
                
    case 432// Blade Specialist
                
    case 433// Blade Lord
                    
    cm.getPlayer().changeJob(cm.getPlayer().getJob() + 1);
                    
    cm.dispose();
                    break;
                
    //1st Job
                
    case 1100// Dawn Warrior
                
    case 1200// Blaze Wizard
                
    case 1300// Wind Archer
                
    case 1400// Night Walker
                
    case 1500// Thunder Breaker
                
    case 2100// Aran
                
    case 2300// Mercedes
                
    case 2400// Phantom
                
    case 3100// Demon Slayer
                
    case 3200// Battle Mage
                
    case 3300// Wild Hunter
                
    case 3500// Mechanic
                
    case 5100// Mihile
                    
    cm.getPlayer().changeJob(cm.getPlayer().getJob() + 10);
                    
    cm.dispose();
                    break;
                
    //2nd Job
                
    case 110// Fighter
                
    case 120// Page
                
    case 130// Spearman
                
    case 210// Wizard(F/P)
                
    case 220// Wizard(I/L)
                
    case 230// Cleric
                
    case 310// Hunter
                
    case 320// Crossbow man
                
    case 410// Assassin
                
    case 420// Bandit
                
    case 510// Brawler
                
    case 520// Gunslinger
                
    case 530// Cannoneer
                
    case 570// Jett
                
    case 1110// Dawn Warrior
                
    case 1210// Blaze Wizard
                
    case 1310// Wind Archer
                
    case 1410// Night Walker
                
    case 1510// Thunder Breaker
                
    case 2110// Aran
                
    case 2310// Mercedes
                
    case 2410// Phantom
                
    case 3110// Demon Slayer
                
    case 3210// Battle Mage
                
    case 3310// Wild Hunter
                
    case 3510// Mechanic
                
    case 5110// Mihile
                //3rd Job
                
    case 111// Crusader
                
    case 121// White Knight
                
    case 131// Dragon Knight
                
    case 211// Mage(F/P)
                
    case 221// Mage(I/L)
                
    case 231// Priest
                
    case 311// Ranger
                
    case 321// Sniper
                
    case 411// Hermit
                
    case 421// Chief Bandit
                
    case 511// Marauder
                
    case 521// Outlaw
                
    case 531// Cannon Trooper
                
    case 571// Jett
                
    case 1111// Dawn Warrior
                
    case 1211// Blaze Wizard
                
    case 1311// Wind Archer
                
    case 1411// Night Walker
                
    case 1511// Thunder Breaker
                
    case 2111// Aran
                
    case 2311// Mercedes
                
    case 2411// Phantom
                
    case 3111// Demon Slayer
                
    case 3211// Battle Mage
                
    case 3311// Wild Hunter
                
    case 3511// Mechanic
                
    case 5111// Mihile
                    
    cm.getPlayer().changeJob(cm.getPlayer().getJob() + 1);
                    
    cm.dispose();
                    break;
                default:
                    
    cm.sendOk("An error occured, or a new job found.\r\nPlease report to the Admins.\r\nYour job id: " cm.getPlayer().getJob() + "");
                    
    cm.dispose();
            }
        } else if (
    status == 2) {
            
    select selection;
            
    cm.sendYesNo("Are you sure you want to Job Advance?");
        } else if (
    status == 3) {
            
    cm.getPlayer().changeJob(select);
            
    cm.dispose();
        }
    }

    function 
    jobSelection(index) {
        var 
    choose "Please, select your job:"
        
    for (var 0job[index].lengthi++)
            
    choose += "\r\n#L" job[index][i][0] + "#" job[index][i][1] + "#l";
        
    cm.sendSimple(choose);

    Add-on for Lithium Source:

    @advance command:

    PHP Code:
    public static class Advance extends CommandExecute {

            @
    Override
            
    public int execute(MapleClient cString[] splitted) {
                if (
    c.getPlayer().isInBlockedMap()) {
                    
    c.getPlayer().dropMessage(5"You may not use this command here.");
                    return 
    0;
                }
                if (
    c.getPlayer().getLevel() < 10) {
                    
    c.getPlayer().dropMessage(5"You must be over level 10 to use this command.");
                    return 
    0;
                }
                
    NPCScriptManager.getInstance().start(cyour npc id here);
                return 
    1;
            }
        } 
    Extra functions: (You should already have it.)
    I don't know if it will work for your source but...

    PHP Code:
    public final short getLevel() {
            return level;
        }

    public 
    short getJob() {
            return 
    job;
        }

    public 
    void setJob(int j) {
            
    this.job = (shortj;
        } 
    If you post this anywhere else, please provide credits.
    Last edited by AristoCat; 13-09-12 at 02:41 PM. Reason: Updated


  2. #2
    I'm The God pauljeki is offline
    MemberRank
    Oct 2011 Join Date
    IsraelLocation
    736Posts

    Re: Job Advancer - All Jobs (Legends & Phantom & Jett)

    Evan its auto job in lithium. Thanks.

  3. #3
    Account Upgraded | Title Enabled! AristoCat is offline
    MemberRank
    Apr 2012 Join Date
    947Posts

    Re: Job Advancer - All Jobs (Legends & Phantom & Jett)

    Quote Originally Posted by pauljeki View Post
    Evan its auto job in lithium. Thanks.
    I know, that's why I thought no one will need it because Evan should have auto advance.

  4. #4
    Apprentice chriskris is offline
    MemberRank
    Jul 2012 Join Date
    9Posts

    Re: Job Advancer - All Jobs (Legends & Phantom & Jett)

    Could you make one. With no auto job advance?

  5. #5
    Valued Member Disorganize is offline
    MemberRank
    May 2012 Join Date
    101Posts

    Re: Job Advancer - All Jobs (Legends & Phantom & Jett)

    This is very useful. I will be using this.

  6. #6
    Apprentice IanHeartsYou is offline
    MemberRank
    Oct 2011 Join Date
    7Posts

    Re: Job Advancer - All Jobs (Legends & Phantom & Jett)

    Hello, thank you so much for the release!
    Just one question, what are some good npc's to use for the @advance command? I'm currently using Lithium.
    If not, do playernpc's work on Lithium?
    Really sorry to bother you :) I'm just starting out!

    Thanks in advance

    edited: When I replace "your npc id here" with an npc id, i get compiling errors
    Code:
    error: method start in class NPCScriptManager cannot be applied to given types;
                NPCScriptManager.getInstance().start(c, 1052107 , null);
      required: MapleClient,int
      found: MapleClient,int,<null>
    Last edited by IanHeartsYou; 31-07-12 at 03:12 PM.

  7. #7
    Apprentice IanHeartsYou is offline
    MemberRank
    Oct 2011 Join Date
    7Posts

    Re: Job Advancer - All Jobs (Legends & Phantom & Jett)

    Why was my post deleted?

  8. #8
    Account Upgraded | Title Enabled! AristoCat is offline
    MemberRank
    Apr 2012 Join Date
    947Posts

    Re: Job Advancer - All Jobs (Legends & Phantom & Jett)

    Quote Originally Posted by chriskris View Post
    Could you make one. With no auto job advance?
    I didn't realize what you mean.
    Quote Originally Posted by Disorganize View Post
    This is very useful. I will be using this.
    Thank you :)

  9. #9
    Account Upgraded | Title Enabled! BlessTheKnife is offline
    MemberRank
    Sep 2009 Join Date
    553Posts

    Re: Job Advancer - All Jobs (Legends & Phantom & Jett)

    I like the release, however mine doesn't seem to work (using Lithium). When I type the @advance command, it says this player command does not exist
    Last edited by BlessTheKnife; 31-07-12 at 05:10 PM.

  10. #10
    Omega sunnyboy is offline
    MemberRank
    Mar 2010 Join Date
    6,109Posts

    Re: Job Advancer - All Jobs (Legends & Phantom & Jett)

    Quote Originally Posted by chriskris View Post
    Could you make one. With no auto job advance?
    If you're referring to Evan auto adv, Just remove it from MapleCharacter.

  11. #11
    Account Upgraded | Title Enabled! AristoCat is offline
    MemberRank
    Apr 2012 Join Date
    947Posts

    Re: Job Advancer - All Jobs (Legends & Phantom & Jett)

    Quote Originally Posted by Postalityjr View Post
    I like the release, however mine doesn't seem to work (using Lithium). When I type the @advance command, it says this player command does not exist
    Did you put it into PlayerCommand.java and changed the npc id?

  12. #12
    Account Upgraded | Title Enabled! BlessTheKnife is offline
    MemberRank
    Sep 2009 Join Date
    553Posts

    Re: Job Advancer - All Jobs (Legends & Phantom & Jett)

    Quote Originally Posted by AristoCat View Post
    Did you put it into PlayerCommand.java and changed the npc id?
    I just fixed it the simple way and made it so it opens the NPC through my all in one NPC :P.
    Last edited by BlessTheKnife; 31-07-12 at 09:15 PM.

  13. #13
    Valued Member Disorganize is offline
    MemberRank
    May 2012 Join Date
    101Posts

    Re: Job Advancer - All Jobs (Legends & Phantom & Jett)

    Cannoneer don't work

  14. #14
    Account Upgraded | Title Enabled! AristoCat is offline
    MemberRank
    Apr 2012 Join Date
    947Posts

    Re: Job Advancer - All Jobs (Legends & Phantom & Jett)

    Quote Originally Posted by Disorganize View Post
    Cannoneer don't work
    Replace line 34 (the IF line) with this:

    if (cm.getPlayer().getLevel() >= 10 && (cm.getPlayer().getJob() % 1000 == 0 || cm.getPlayer().getJob() == 501 || cm.getPlayer().getJob() == 508 || cm.getPlayer().getJob() == 3001 || cm.getPlayer().getJob() >= 2001 && cm.getPlayer().getJob() <= 2003) || cm.getPlayer().getLevel() >= 30 && cm.getPlayer().getJob() % 1000 > 0 && cm.getPlayer().getJob() % 100 == 0 || cm.getPlayer().getLevel() >= 70 && cm.getPlayer().getJob() % 10 == 0 && cm.getPlayer().getJob() % 100 != 0 || cm.getPlayer().getLevel() >= 120 && cm.getPlayer().getJob() % 10 == 1 || cm.getPlayer().getLevel() >= 55 && cm.getPlayer().getJob() == 431)
    Last edited by AristoCat; 10-08-12 at 04:58 AM.

  15. #15
    Account Upgraded | Title Enabled! oxysoft is offline
    MemberRank
    Nov 2008 Join Date
    Canada, QCLocation
    1,400Posts

    Re: Job Advancer - All Jobs (Legends & Phantom & Jett)

    The npc i released is much better and shorter



Page 1 of 2 12 LastLast

Advertisement