Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- prontera,155,171,5 script Build Manager 439,{
- // Mode of NPC
- // 1 = Switch & Save Status Build
- // 2 = Reset Status
- // 4 = Reset Skills
- // 7 = All of Above [ 1+2+4 = 7 ]
- set .BMMode,7;
- // How Many Slots available to Save Status Builds.
- set .MaxSlots,5;
- // Enable Stats Slot Rename
- set .StatRename,1;
- setarray .BMCosts[1],
- 1000000, // Switch Builds Cost
- 1000000, // Save Build Cost
- 1000000, // Reset Status Cost
- 1000000; // Reset Skills Cost
- while(1){
- switch( select( ( .BMMode & 1 )?"^0000FFSwitch Status^000000":"",
- ( .BMMode & 1 )?"^0000FFSave Status^000000":"",
- ( .BMMode & 2 )?"^0000FFReset Status^000000":"",
- ( .BMMode & 4 )?"^0000FFReset Skills^000000":"")){
- Case 1:
- if( Zeny < .BMCosts[ @menu ] ){
- mes "You required ^FF0000"+.BMCosts[ @menu ]+" Zeny^000000 to use this services.";
- next;
- break;
- }
- mes "^0000FFCost^000000 : ^FF0000"+.BMCosts[ @menu ]+"^000000 Zeny";
- message strcharinfo(0),"Input 0 to Cancel";
- mes "^FF0000Slot[X]^000000-[^0000FFSTR|AGI|VIT|INT|DEX|LUK^000000]";
- mes "^0000FF_____________________________^000000";
- for( set .@i,1; .@i <= .MaxSlots; set .@i,.@i + 1 ){
- mes "^FF0000"+.@i+".^0000FF"+getd( "Slot_"+.@i+"$" )+"^000000 [^0000FF"+getd("STR_"+.@i)+"|"+getd("AGI_"+.@i)+"|"+getd("VIT_"+.@i)+"|"+getd("INT_"+.@i)+"|"+getd("DEX_"+.@i)+"|"+getd("LUK_"+.@i)+"^000000]";
- }
- mes "^0000FF_____________________________^000000";
- input .@a,0,.MaxSlots;
- if( .@a != 0 ){
- callfunc("SwitchBuild",.@a);
- message strcharinfo(0),"Done";
- set Zeny,Zeny - .BMCosts[ @menu ];
- }
- next;
- break;
- Case 2:
- if( Zeny < .BMCosts[ @menu ] ){
- mes "You required ^FF0000"+.BMCosts[ @menu ]+" Zeny^000000 to use this services.";
- next;
- break;
- }
- mes "^0000FFCost^000000 : ^FF0000"+.BMCosts[ @menu ]+"^000000 Zeny";
- mes "^0000FF_____________________________^000000";
- mes "^FF0000@^000000 STR - "+readparam(bStr)+" ^FF0000@^000000 AGI - "+readparam(bAgi)+" ^FF0000@^000000 VIT - "+readparam(bVit)+"";
- mes "^FF0000@^000000 INT - "+readparam(bInt)+" ^FF0000@^000000 DEX - "+readparam(bDex)+" ^FF0000@^000000 LUK - "+readparam(bLuk)+"";
- mes "^0000FF_____________________________^000000";
- message strcharinfo(0),"Input 0 to Cancel";
- mes "^FF0000Slot[X]^000000-[^0000FFSTR|AGI|VIT|INT|DEX|LUK^000000]";
- mes "^0000FF_____________________________^000000";
- for( set .@i,1; .@i <= .MaxSlots; set .@i,.@i + 1 ){
- mes "^FF0000"+.@i+".^0000FF"+getd( "Slot_"+.@i+"$" )+"^000000 [^0000FF"+getd("STR_"+.@i)+"|"+getd("AGI_"+.@i)+"|"+getd("VIT_"+.@i)+"|"+getd("INT_"+.@i)+"|"+getd("DEX_"+.@i)+"|"+getd("LUK_"+.@i)+"^000000]";
- }
- mes "^0000FF_____________________________^000000";
- input .@a,0,.MaxSlots;
- if( .@a != 0 ){
- callfunc("SaveBuild",.@a,.StatRename);
- set Zeny,Zeny - .BMCosts[ @menu ];
- }
- next;
- break;
- Case 3:
- if( Zeny < .BMCosts[ @menu ] ){
- mes "You required ^FF0000"+.BMCosts[ @menu ]+" Zeny^000000 to use this services.";
- next;
- break;
- }
- mes "^0000FFCost^000000 : ^FF0000"+.BMCosts[ @menu ]+"^000000 Zeny";
- ResetStatus;
- set Zeny,Zeny - .BMCosts[ @menu ];
- mes "Your Status has been Reset. You have gained back your ^FF0000riginal Status Points^000000";
- next;
- break;
- Case 4:
- if( Zeny < .BMCosts[ @menu ] ){
- mes "You required ^FF0000"+.BMCosts[ @menu ]+" Zeny^000000 to use this services.";
- next;
- break;
- }
- mes "^0000FFCost^000000 : ^FF0000"+.BMCosts[ @menu ]+"^000000 Zeny";
- ResetSkill;
- set Zeny,Zeny - .BMCosts[ @menu ];
- mes "Your Skills has been Reset. You have gained back your ^FF0000riginal Skill Points^000000";
- next;
- break;
- }
- }
- }
- function script SaveBuild {
- setd "STR_"+getarg(0),readparam(bStr);
- setd "AGI_"+getarg(0),readparam(bAgi);
- setd "VIT_"+getarg(0),readparam(bVIT);
- setd "INT_"+getarg(0),readparam(bInt);
- setd "DEX_"+getarg(0),readparam(bDex);
- setd "LUK_"+getarg(0),readparam(bLuk);
- if( getarg(1) ){
- do{
- message strcharinfo(0),"Input the Name for this Slot. [ Max. 12 Chars ]";
- input getd( "Slot_"+getarg(0)+"$" );
- }while( getstrlen( getd( "Slot_"+getarg(0)+"$" ) ) > 12 );
- }else{
- set getd( "Slot_"+getarg(0)+"$" ),"Stats "+getarg(0);
- }
- return;
- }
- function script SwitchBuild {
- ResetStatus;
- statusup2 bStr,getd( "STR_"+getarg(0) )-1;
- statusup2 bAgi,getd( "AGI_"+getarg(0) )-1;
- statusup2 bVit,getd( "VIT_"+getarg(0) )-1;
- statusup2 bInt,getd( "INT_"+getarg(0) )-1;
- statusup2 bDex,getd( "DEX_"+getarg(0) )-1;
- statusup2 bLuk,getd( "LUK_"+getarg(0) )-1;
- set StatusPoint,0;
- return;
- }
Advertisement