From e9d2315e89adb7610a67d610bb99fd78fd403c37 Mon Sep 17 00:00:00 2001 From: euphyy Date: Fri, 28 Dec 2012 08:38:28 +0000 Subject: * Added a small portion of official Malangdo Episode scripts. * Updated quest_db with translated Malangdo entries. * Fixed strmobinfo() to output empty strings for 'name' instead of zeros (partly follow-up r17055). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@17056 54d463be-8e91-2dee-dedb-b68131a5f0ec --- npc/custom/breeder.txt | 2 +- npc/custom/healer.txt | 6 +-- npc/custom/itemmall.txt | 2 +- npc/custom/jobmaster.txt | 71 ++++++++++++++++++++++------------ npc/custom/quests/hunting_missions.txt | 4 +- npc/custom/stylist.txt | 8 ++-- npc/custom/warper.txt | 19 +++++---- 7 files changed, 70 insertions(+), 42 deletions(-) (limited to 'npc/custom') diff --git a/npc/custom/breeder.txt b/npc/custom/breeder.txt index c280fae73..de4460cd3 100644 --- a/npc/custom/breeder.txt +++ b/npc/custom/breeder.txt @@ -33,7 +33,7 @@ prontera,124,201,1 script Universal Rental NPC 726,{ else { message strcharinfo(0),"You do not meet requirements to rent."; close; } - specialeffect2 276; + specialeffect2 EF_TEIHIT3; close; } diff --git a/npc/custom/healer.txt b/npc/custom/healer.txt index 5ed3f7579..ab7eb9f55 100644 --- a/npc/custom/healer.txt +++ b/npc/custom/healer.txt @@ -21,13 +21,13 @@ if (.@Price) { message strcharinfo(0),"Healing costs "+.@Price+" Zeny."; if (Zeny < .@Price) end; - if(select("^0055FFHeal^000000:^777777Cancel^000000")==2) close; + if(select("^0055FFHeal^000000:^777777Cancel^000000") == 2) close; set Zeny, Zeny-.@Price; } specialeffect2 313; percentheal 100,100; if (.@Buffs) { - specialeffect2 37; sc_start SC_INCREASEAGI,240000,10; - specialeffect2 42; sc_start SC_BLESSING,240000,10; + specialeffect2 EF_INCAGILITY; sc_start SC_INCREASEAGI,240000,10; + specialeffect2 EF_BLESSING; sc_start SC_BLESSING,240000,10; } if (.@Delay) set @HD, gettimetick(2)+.@Delay; close; diff --git a/npc/custom/itemmall.txt b/npc/custom/itemmall.txt index aeff0e1fd..84775e488 100644 --- a/npc/custom/itemmall.txt +++ b/npc/custom/itemmall.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= Masao //===== Current Version: ===================================== -//= 1.0 [Masao] +//= 1.0 //===== Compatible With: ===================================== //= rAthena SVN //===== Description: ========================================= diff --git a/npc/custom/jobmaster.txt b/npc/custom/jobmaster.txt index e072ee4b9..c4c259b64 100644 --- a/npc/custom/jobmaster.txt +++ b/npc/custom/jobmaster.txt @@ -20,13 +20,16 @@ function Job_Menu; function A_An; mes "[Job Master]"; if (Class > 4049) { mes "No more jobs are available."; - close; } + close; + } if (checkfalcon() || checkcart() || checkriding() || ismounting()) { mes "Please remove your "+((checkfalcon())?"falcon":"")+((checkcart())?"cart":"")+((checkriding())?"Peco":"")+((ismounting())?"mount":"")+" before proceeding."; - close; } + close; + } if (.SkillPointCheck && SkillPoint) { mes "Please use all your skill points before proceeding."; - close; } + close; + } set .@eac, eaclass(); set .@i, ((.ThirdClass)?roclass(.@eac&EAJ_UPPERMASK):Class); @@ -34,12 +37,14 @@ function Job_Menu; function A_An; if (BaseLevel < .Rebirth[0] || JobLevel < .Rebirth[1]) { set .@blvl, .Rebirth[0]-BaseLevel; set .@jlvl, .Rebirth[1]-JobLevel; mes "You need "+((.@blvl>0)?.@blvl+" more base levels "+((.@jlvl>0)?"/ ":""):"")+((.@jlvl>0)?.@jlvl+" more job levels ":"")+"to continue."; - close; } + close; + } if (Class > 21) { mes "Switch to third class?"; next; Job_Menu(roclass(.@eac|EAJL_THIRD)); - close; } + close; + } while(1) { mes "Select an option."; next; @@ -49,7 +54,9 @@ function Job_Menu; function A_An; mes "Are you sure?"; next; Job_Menu(((.@i==1)?4001:roclass(.@eac|EAJL_THIRD))); - mes "[Job Master]"; } } + mes "[Job Master]"; + } + } set .@j1, roclass(.@eac|EAJL_2_1); set .@j2,roclass(.@eac|EAJL_2_2); if ((.@eac&EAJ_UPPERMASK) == EAJ_SUPER_NOVICE) setarray .@exp[0],roclass(.@eac|EAJL_THIRD),99; if (Class == Job_Ninja) setarray .@exp[0],.@j1,70; @@ -57,28 +64,33 @@ function Job_Menu; function A_An; if (BaseLevel < .Rebirth[0] || JobLevel < .@exp[1]) { set .@blvl, .Rebirth[0]-BaseLevel; set .@jlvl, .@exp[1]-JobLevel; mes "You need "+((.@blvl>0)?.@blvl+" more base levels "+((.@jlvl>0)?"/ ":""):"")+((.@jlvl>0)?.@jlvl+" more job levels ":"")+"to continue."; - close; } + close; + } mes "Switch to "+jobname(.@exp[0])+"?"; next; Job_Menu(.@exp[0]); - close; } + close; + } if (.@eac&EAJL_2) if (.@eac&(EAJL_UPPER|EAJL_BABY) || roclass(.@eac|EAJL_UPPER) == -1) { mes "No more jobs are available."; - close; } + close; + } if ((.@eac&EAJ_BASEMASK) == EAJ_NOVICE) { if (JobLevel < .JobReq[0]) mes "A job level of "+.JobReq[0]+" is required to change into the 1st Class."; else if (Class == 4001 && .LastJob && lastJob) { mes "Switch classes now?"; next; - Job_Menu(roclass((eaclass(lastJob)&EAJ_BASEMASK)|EAJL_UPPER)); } - else switch(Class) { + Job_Menu(roclass((eaclass(lastJob)&EAJ_BASEMASK)|EAJL_UPPER)); + } else switch(Class) { case 0: Job_Menu(1,2,3,4,5,6,23,4046,24,25,4023); case 4001: Job_Menu(4002,4003,4004,4005,4006,4007); case 4023: Job_Menu(4024,4025,4026,4027,4028,4029,4045); - default: mes "An error has occurred."; break; } - close; } + default: mes "An error has occurred."; break; + } + close; + } if (roclass(.@eac|EAJL_2_1) == -1 || roclass(.@eac|EAJL_2_2) == -1) mes "No more jobs are available."; else if (!(.@eac&EAJL_2) && JobLevel < .JobReq[1]) @@ -86,8 +98,9 @@ function Job_Menu; function A_An; else if (.LastJob && lastJob && (.@eac&EAJL_UPPER)) { mes "Switch classes now?"; next; - Job_Menu(lastJob+4001); } - else Job_Menu(.@j1,.@j2); + Job_Menu(lastJob+4001); + } else + Job_Menu(.@j1,.@j2); close; function Job_Menu { @@ -104,12 +117,14 @@ function Job_Menu { if ((.@i == 23 || .@i == 4045) && BaseLevel < .SNovice) { mes "[Job Master]"; mes "A base level of "+.SNovice+" is required to turn into a "+jobname(.@i)+"."; - close; } + close; + } mes "[Job Master]"; mes "Are you sure?"; - next; } - else set .@i, getarg(0); - if (select(" ~ Change into ^0055FF"+jobname(.@i)+"^000000 class: ~ ^777777"+((getargcount() > 1)?"Go back":"Cancel")+"^000000")==1) { + next; + } else + set .@i, getarg(0); + if (select(" ~ Change into ^0055FF"+jobname(.@i)+"^000000 class: ~ ^777777"+((getargcount() > 1)?"Go back":"Cancel")+"^000000") == 1) { mes "[Job Master]"; mes "You are now "+A_An(jobname(.@i))+"!"; if (.@i==4001 && .LastJob) set lastJob, Class; @@ -117,17 +132,21 @@ function Job_Menu { if (.@i==4001 || .@i==4023) resetlvl(1); specialeffect2 338; specialeffect2 432; if (.Platinum) callsub Get_Platinum; - close; } + close; + } if (getargcount() == 1) return; - mes "[Job Master]"; } - end; } + mes "[Job Master]"; + } + end; +} function A_An { setarray .@A$[0],"a","e","i","o","u"; set .@B$, "_"+getarg(0); for(set .@i,0; .@i<5; set .@i,.@i+1) if (compare(.@B$,"_"+.@A$[.@i])) return "an "+getarg(0); - return "a "+getarg(0); } + return "a "+getarg(0); +} Get_Platinum: skill 142,1,0; @@ -139,7 +158,8 @@ Get_Platinum: case 4: skill 156,1,0; break; case 5: skill 153,1,0; skill 154,1,0; skill 155,1,0; break; case 6: skill 149,1,0; skill 150,1,0; skill 151,1,0; skill 152,1,0; break; - default: break; } + default: break; + } switch(BaseJob) { case 7: skill 1001,1,0; break; case 8: skill 1014,1,0; break; @@ -154,7 +174,8 @@ Get_Platinum: case 18: skill 238,1,0; break; case 19: skill 1010,1,0; break; case 20: skill 1011,1,0; break; - default: break; } + default: break; + } return; OnInit: diff --git a/npc/custom/quests/hunting_missions.txt b/npc/custom/quests/hunting_missions.txt index 5f09c19fd..438444a14 100644 --- a/npc/custom/quests/hunting_missions.txt +++ b/npc/custom/quests/hunting_missions.txt @@ -225,7 +225,7 @@ OnNPCKillEvent: if (!getcharid(1) || !.Party) { if (!#Mission_Count || !Mission0) end; for (set .@i, 0; .@i<.Quests; set .@i,.@i+1) { - if (""+strmobinfo(1,killedrid) == strmobinfo(1,getd("Mission"+.@i))) { + if (strmobinfo(1,killedrid) == strmobinfo(1,getd("Mission"+.@i))) { if (getd("Mission"+.@i+"_") < #Mission_Count) { dispbottom "[Hunting Mission] Killed "+(set(getd("Mission"+.@i+"_"),getd("Mission"+.@i+"_")+1))+" of "+#Mission_Count+" "+strmobinfo(1,killedrid)+"."; end; @@ -244,7 +244,7 @@ OnNPCKillEvent: getmapxy(.@map2$,.@x2,.@y2,0); if ((.@map1$ == .@map2$ || .Party == 1) && (distance(.@x1,.@y1,.@x2,.@y2) <= 30 || .Party < 3)) { for(set .@j,0; .@j<.Quests; set .@j,.@j+1) { - if (""+strmobinfo(1,.@mob) == strmobinfo(1,getd("Mission"+.@j))) { + if (strmobinfo(1,.@mob) == strmobinfo(1,getd("Mission"+.@j))) { if (getd("Mission"+.@j+"_") < #Mission_Count) { dispbottom "[Hunting Mission] Killed "+(set(getd("Mission"+.@j+"_"),getd("Mission"+.@j+"_")+1))+" of "+#Mission_Count+" "+strmobinfo(1,.@mob)+"."; break; diff --git a/npc/custom/stylist.txt b/npc/custom/stylist.txt index fa552ce6d..77bbf7bdb 100644 --- a/npc/custom/stylist.txt +++ b/npc/custom/stylist.txt @@ -17,7 +17,8 @@ prontera,170,180,1 script Stylist#custom_stylist 122,{ setarray .@Styles[1],getbattleflag("max_cloth_color"),getbattleflag("max_hair_style"),getbattleflag("max_hair_color"); setarray .@Look[1],7,1,6; set .@s, select(" ~ Cloth color: ~ Hairstyle: ~ Hair color"); - set .@Revert, getlook(.@Look[.@s]); set .@Style,1; + set .@Revert, getlook(.@Look[.@s]); + set .@Style,1; while(1) { setlook .@Look[.@s], .@Style; message strcharinfo(0),"This is style #"+.@Style+"."; @@ -29,6 +30,7 @@ prontera,170,180,1 script Stylist#custom_stylist 122,{ input .@Style,0,.@Styles[.@s]; if (!.@Style) set .@Style, rand(1,.@Styles[.@s]); break; - case 4: set .@Style, .@Revert; setlook .@Look[.@s], .@Revert; break; } - } end; + case 4: set .@Style, .@Revert; setlook .@Look[.@s], .@Revert; break; + } + } } diff --git a/npc/custom/warper.txt b/npc/custom/warper.txt index f374f9e9a..b0fb07a66 100644 --- a/npc/custom/warper.txt +++ b/npc/custom/warper.txt @@ -45,24 +45,29 @@ menu "Last Warp ^777777["+lastwarp$+"]^000000",-, function Go { warp getarg(0),getarg(1,0),getarg(2,0); getmapxy(lastwarp$,lastwarpx,lastwarpy,0); - close; } + close; +} function Disp { set @menu$,""; if(getarg(0)=="") { set @menu$,getarg(1); - return; } + return; + } for(set .@i,getarg(1); .@i<=getarg(2); set .@i,.@i+1) set @menu$, @menu$+getarg(0)+" "+.@i+":"; - return; } + return; +} function Pick { if(getarg(0)=="") { set .@i, select(@menu$); - warp getarg(.@i),@c[.@i*2],@c[.@i*2+1]; } - else { + warp getarg(.@i),@c[.@i*2],@c[.@i*2+1]; + } else { set .@i, select(@menu$)-getarg(1,0); - warp getarg(0)+((.@i<10)?"0":"")+.@i,@c[.@i*2],@c[.@i*2+1]; } + warp getarg(0)+((.@i<10)?"0":"")+.@i,@c[.@i*2],@c[.@i*2+1]; + } getmapxy(lastwarp$,lastwarpx,lastwarpy,0); - close; } + close; +} // -------------------------------------------------- Towns: -- cgit v1.2.3-70-g09d2