Jump to content

Question

Posted (edited)

Today I would like to request the 3rd job changer
I've had like this.
how to add it so that it becomes a job and got 3rd prize headgear of the job.
thank you.

and this is my script :

 //===== eAthena Script =======================================
//= eAthena Jobchanger AKA Job Master
//===== By: ==================================================
//= eAthena Dev Team [Ori:LunatikBunnie] [Cur:Lance]
//===== Current Version: =====================================
//= 1.5a
//===== Compatible With: =====================================
//= eAthena SVN Trunk 6674
//===== Description: =========================================
//= Changes your job without asking too much
//= For other info, please contact me at [email protected]
//= Editted menu to avoid button mashing.
//= 1.3 Added TK/SL/SG, thanks to Haplo. Fixed minor bugs [Lupus]
//=    script leaves grabage variable: 'lastJob'
//= 1.4 Added NJ/GS, changed all job numbers to Job_* constants.
//=    All credits go to pxxx [Skotlex]
//= 1.5 Rewrite everything from scratch. [Lance]
//= 1.5a fixed Baby -> Super Baby change. Switched to JobName() [Lupus]
//============================================================
prontera,159,193,3    script    Job Master    56,{
    mes "^ff0000[Job Master]^000000";
    if(Upper == 1 && Class >= Job_Lord_Knight) goto L_noReq;
    if(SkillPoint != 0){
        mes "Mohon Maaf, Job Level Kamu Tidak Mencukupi.";
        mes "Kembalilah Lagi Jika Kamu Sudah Siap";
        close;
    }
    if(JobLevel < 10) goto L_LvError;
    switch(Class){
        case Job_Novice_High:
        case Job_Baby:
        case Job_Novice:
            skill 142,1,0;
            skill 143,1,0;
            mes "Welcome, Silahkan Pilih Job Yang Kamu Inginkan";
            if(lastJob != 0 && Class == Job_Novice_High){
                switch(lastJob){
                    case Job_Knight:
                    case Job_Crusader:
                        set @target_job, Job_Swordman_High;
                        break;
                    case Job_Monk:
                    case Job_Priest:
                        set @target_job, Job_Acolyte_High;
                        break;
                    case Job_Alchemist:
                    case Job_Blacksmith:
                        set @target_job, Job_Merchant_High;
                        break;
                    case Job_Rogue:
                    case Job_Assassin:
                        set @target_job, Job_Thief_High;
                        break;
                    case Job_Wizard:
                    case Job_Sage:
                        set @target_job, Job_Mage_High;
                        break;
                    case Job_Hunter:
                    case Job_Bard:
                    case Job_Dancer:
                        set @target_job, Job_Archer_High;
                        break;
                            }
            } else {
                switch(select("Swordsman","Mage","Archer","Acolyte","Merchant","Thief",
                    "Super Novice","Taekwon","Gunslinger","Ninja")){
                        case 7:
                            if(Class == Job_Novice_High) goto L_noReq;
                            if($@JC_SupNovM > BaseLevel) goto L_BvError;
                            if(Upper == 2)
                                set @target_job, Job_Super_Baby;
                            else
                                set @target_job, Job_SuperNovice;
                            break;
                        case 8:
                            if(Class == Job_Novice_High) goto L_noReq;
                            if(Upper == 2) goto L_noReq;
                            set @target_job, Job_Taekwon;
                            break;
                        case 9:
                        case 10:
                            if(Class == Job_Novice_High || Upper == 2) goto L_noReq;
                            set @target_job, @menu + 15;
                            break;
                        default:
                            set @target_job, @menu;
                            if(Class == Job_Novice_High) set @target_job, @target_job + 4001;
                            break;
                    }
            }
            mes "Apakah Kamu Yakin Ingin Berubah Menjadi " + JobName(@target_job) + "?";
            if(select("Tidak","Sangat Yakin") == 2){
                callfunc "Job_Change", @target_job;
                if(@target_job == Job_Gunslinger || @target_job == Job_Ninja || @target_job == Job_Taekwon) {
                    callfunc "F_ClearJobVar";
                } else {
                    if($@JC_Plat) goto L_GivePlat;
                }
            }
            close;
            break;
        default:
            if(JobLevel < $@JC_MinimumJB) goto L_LvError;
            deletearray @job_opt, getarraysize(@job_opt);
            if(Class < Job_Knight || Class == Job_Taekwon || (Class > Job_Baby && Class < Job_Baby_Knight) || (Class > Job_Novice_High && Class < Job_Lord_Knight)){
                if(lastJob != 0){
                    set @target_job, lastJob + 4001;
                } else {
                    switch(Class){
                        case Job_Swordman_High:
                        case Job_Baby_Swordman:
                        case Job_Swordman:
                            set @job_opt[0], Job_Knight;
                            set @job_opt[1], Job_Crusader;
                            break;
                        case Job_Mage_High:
                        case Job_Baby_Mage:
                        case Job_Mage:
                            set @job_opt[0], Job_Wizard;
                            set @job_opt[1], Job_Sage;
                            break;
                        case Job_Archer_High:
                        case Job_Baby_Archer:
                        case Job_Archer:
                            set @job_opt[0], Job_Hunter;
                            if(Sex == 0)
                                set @job_opt[1], Job_Dancer;
                            else
                                set @job_opt[1], Job_Bard;
                            break;
                        case Job_Acolyte_High:
                        case Job_Baby_Acolyte:
                        case Job_Acolyte:
                            set @job_opt[0], Job_Priest;
                            set @job_opt[1], Job_Monk;
                            break;
                        case Job_Merchant_High:
                        case Job_Baby_Merchant:
                        case Job_Merchant:
                            set @job_opt[0], Job_Blacksmith;
                            set @job_opt[1], Job_Alchemist;
                            break;
                        case Job_Thief_High:
                        case Job_Baby_Thief:
                        case Job_Thief:
                            set @job_opt[0], Job_Assassin;
                            set @job_opt[1], Job_Rogue;
                            break;                        
                        default:
                            set @job_opt[0], Job_Star_Gladiator;
                            set @job_opt[1], Job_Soul_Linker;
                            break;
                    }
                    mes "Welcome, Silahkan Pilih Job Yang Kamu Inginkan";
                    set @target_job, @job_opt[select(JobName(@job_opt[0]), JobName(@job_opt[1]))-1];
                    if(Class > Job_Novice_High && Class < Job_Lord_Knight) set @target_job, @target_job + 4001;
                }
                mes "Apakah Kamu Yakin Ingin Berubah Menjadi " + JobName(@target_job) + "?";
                if(select("Tidak Yakin","Sangat Yakin")==2){
                    callfunc "Job_Change", @target_job;
                    if(@target_job == Job_Star_Gladiator || @target_job == Job_Soul_Linker) {
                        callfunc "F_ClearJobVar";
                    } else {
                        if($@JC_Plat) goto L_GivePlat;
                    }
                }
                close;
            }
            if(checkfalcon() || checkcart() || checkriding()) goto L_remove;
            if((Class >=Job_Knight) && (Class <=Job_Crusader2)){
                mes "Pilih Langkah Selanjutnya";
                if(select("Yes","No")==1){
                    if(BaseLevel < 99 || JobLevel < 50) goto L_cantCh;
                    set lastJob, Class;
                    if(Class == Job_Knight2){
                        set lastJob, Job_Knight;
                    } else {
                        if(Class == Job_Crusader2){
                            set lastJob, Job_Crusader;
                        }
                    }
                    jobchange Job_Novice_High;
                    resetlvl(1);
                    skill 142,1,0;
                    skill 143,1,0;
                }
                close;
            }
    }
    mes "Maaf, Job Untuk Kamu Sudah Tidak Tersedia Lagi.";
    close;

L_GivePlat:
    if (BaseClass==Job_SuperNovice) goto L_sSuperN;
    if (BaseClass==Job_Swordman) goto L_sSword;
    if (BaseClass==Job_Mage) goto L_sMage;
    if (BaseClass==Job_Archer) goto L_sArcher;
    if (BaseClass==Job_Acolyte) goto L_sAcolyte;
    if (BaseClass==Job_Merchant) goto L_sMerchant;
    if (BaseClass==Job_Thief) goto L_sThief;
    close;
L_sSuperN:
    skill 142,1,0;
    close;
L_sSword:
    skill 142,1,0;
    skill 144,1,0;
    skill 145,1,0;
    skill 146,1,0;
    close;
L_sMage:
    skill 142,1,0;
    skill 157,1,0;
    close;
L_sArcher:
    skill 142,1,0;
    skill 147,1,0;
    skill 148,1,0;
    close;
L_sAcolyte:
    skill 142,1,0;
    skill 156,1,0;
    close;
L_sMerchant:
    skill 142,1,0;
    skill 153,1,0;
    skill 154,1,0;
    skill 155,1,0;
    close;
L_sThief:
    skill 142,1,0;
    skill 149,1,0;
    skill 150,1,0;
    skill 151,1,0;
    skill 152,1,0;
    close;

L_cantCh:
    mes "Maaf, Gunakanlah Semua Skill Point Sebelum Berubah.";
    mes "Kembalilah Lagi Jika Sudah Siap";
    close;

L_LvError:
    mes "Maaf, Gunakanlah Semua Skill Point Sebelum Berubah.";
    mes "Kembalilah Lagi Jika Sudah Siap";
    close;

L_BvError:
    mes "Maaf, Gunakanlah Semua Skill Point Sebelum Berubah.";
    mes "Kembalilah Lagi Jika Sudah Siap";
    close;

L_noReq:
    mes "Maaf, Gunakanlah Semua Skill Point Sebelum Berubah.";
    mes "Kembalilah Lagi Jika Sudah Siap";
    close;

L_remove:
    mes "Please remove your cart,falcon or peco";
    close;

OnInit:
    // Variable Setup
    set $@JC_MinimumJB, 40; //Minimum job level for changing between 2nd and advance Class (Default : 40)
    set $@JC_Plat, 1; //Give Platinum skills on Jobchange (Default : 1-yes)
    set $@JC_SupNovM, 45; //Base Level to change into Super Novice (Default : 45)
    end;
}
Edited by Capuche
[Code] for long content

2 answers to this question

Recommended Posts

Posted

http://www.eathena.ws/board/index.php?showtopic=233680

 

 

 

Try Google ^_-  /no1 

                                                                                                                                                                                 Regards,

                                                                                                                                                                                      Nas#

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...