Jump to content
  • 0
Brynner

how can i add soul link buffs on this script?

Question

how can i add soul link buffs here?when i try to add SC_SPIRIT nothings happen. thank you in advance.

 

-	script	Healer	-1,{		set .@Price,0;	// Zeny required for heal	set .@Buffs,1;	// Also buff players? (1: yes / 0: no)	set .@Delay,0;	// Heal delay, in seconds	callfunc "F_ClearGarbage",0;	if (@HD > gettimetick(2)) end;	if (.@Price) {		message strcharinfo(0),"Healing costs "+.@Price+" Zeny.";		if (Zeny < .@Price) end;		if(select("^0055FFHeal^000000:^777777Cancel^000000") == 2) close;		set Zeny, Zeny-.@Price;	}	specialeffect2 EF_HEAL2; percentheal 100,100;	if (.@Buffs) {		for( .@i = 0; .@i < .size_buff; .@i++ ) {			.@sum = atoi(.@b$[.@i]) + .min_Levels[.@i];			.@j = .Buffs$[.@i];			if( .@sum )				sc_start .@j,240000,.@sum;		}	}	if (.@Delay) set @HD, gettimetick(2)+.@Delay;	close;OnInit:	deletearray .Buffs$;	deletearray .min_Levels;	setarray .Buffs$, SC_INCREASEAGI, SC_BLESSING, SC_KYRIE, SC_SOULLINK;	setarray .min_Levels,        5,        5,       0,       0;	.size_buff = getarraysize( .Buffs$ );	end;	}prontera,163,185,6	duplicate(Healer)	Healer#alb	909
Edited by bgamez23

Share this post


Link to post
Share on other sites

12 answers to this question

Recommended Posts

  • 0
-    script    Healer    -1,{        set .@Price,0;    // Zeny required for heal    set .@Buffs,1;    // Also buff players? (1: yes / 0: no)    set .@Delay,0;    // Heal delay, in seconds    callfunc "F_ClearGarbage",0;    switch ( BaseJob ) {        case 18:    .@spirit = 445; break;        case 20:        case 15:    .@spirit = 447; break;        case 19:    .@spirit = 455; break;        case 4047:  .@spirit = 448; break;        case 17:    .@spirit = 456; break;        case 16:    .@spirit = 449; break;        case 12:    .@spirit = 457; break;        case 14:    .@spirit = 450; break;        case 10:    .@spirit = 458; break;        case 23:    .@spirit = 451; break;        case 11:    .@spirit = 460; break;        case 7:     .@spirit = 452; break;        case 4049:  .@spirit = 461; break;        case 8:     .@spirit = 454; break;        case 9:     .@spirit = 453; break;    }    if (@HD > gettimetick(2)) end;    if (.@Price) {        message strcharinfo(0),"Healing costs "+.@Price+" Zeny.";        if (Zeny < .@Price) end;        if(select("^0055FFHeal^000000:^777777Cancel^000000") == 2) close;        set Zeny, Zeny-.@Price;    }    specialeffect2 EF_HEAL2; percentheal 100,100;            if (.@Buffs) {        for( .@i = 0; .@i < getarraysize( .Buffs$ ); .@i++ ) {            .@sum = atoi(.@b$[.@i]) + .min_Levels[.@i];            .@j = .Buffs$[.@i];            stand (strcharinfo(0)); // <- Added this so characters dont get stuck when soul link is casting.            if( .@sum )                sc_start4 .@j, 240000, 5,  .@spirit,0,0;            if ( .min_Levels[3] )                skilleffect .@spirit, 5;    // Start Soul Link Effect.        }    }    if (.@Delay) set @HD, gettimetick(2)+.@Delay;    close;OnInit:    setarray .Buffs$, SC_INC_AGI, SC_BLESSING, SC_KYRIE, SC_SOULLINK;    setarray .min_Levels,        5,	    5,	   1,	   5;    end;    }prontera,163,185,6    duplicate(Healer)    Healer1#alb    909
Edited by quesoph

Share this post


Link to post
Share on other sites
  • 0

bellow sc_start .@j,240000,.@sum;

 

add the following:

 

 

if ( .@spirit = .spirit[BaseJob] );	else if ( Upper & 1 && BaseLevel < 70 )		.@spirit = 494;	else		end;	sc_start4 SC_SOULLINK, -1, 5, .@spirit,0,0; 

and bellow OnInit: add it:

 

 

	.spirit[Job_Alchemist] = 445;	.spirit[Job_Monk] = 447;	.spirit[Job_Star_Gladiator] = 448;	.spirit[Job_Sage] = 449;	.spirit[Job_Crusader] = 450;	.spirit[Job_SuperNovice] = 451;	.spirit[Job_Knight] = 452;	.spirit[Job_Wizard] = 453;	.spirit[Job_Priest] = 454;	.spirit[Job_Bard] = .spirit[Job_Dancer] = 455;	.spirit[Job_Rogue] = 456;	.spirit[Job_Assassin] = 457;	.spirit[Job_Blacksmith] = 458;	.spirit[Job_Hunter] = 460;	.spirit[Job_Soul_Linker] = 461; 

 

@edit

btw, why you used 0 for min level?

Edited by evilpuncker

Share this post


Link to post
Share on other sites
  • 0

bellow sc_start .@j,240000,.@sum;

 

add the following:

 

 

if ( .@spirit = .spirit[BaseJob] );	else if ( Upper & 1 && BaseLevel < 70 )		.@spirit = 494;	else		end;	sc_start4 SC_SOULLINK, -1, 5, .@spirit,0,0; 

and bellow OnInit: add it:

 

 

	.spirit[Job_Alchemist] = 445;	.spirit[Job_Monk] = 447;	.spirit[Job_Star_Gladiator] = 448;	.spirit[Job_Sage] = 449;	.spirit[Job_Crusader] = 450;	.spirit[Job_SuperNovice] = 451;	.spirit[Job_Knight] = 452;	.spirit[Job_Wizard] = 453;	.spirit[Job_Priest] = 454;	.spirit[Job_Bard] = .spirit[Job_Dancer] = 455;	.spirit[Job_Rogue] = 456;	.spirit[Job_Assassin] = 457;	.spirit[Job_Blacksmith] = 458;	.spirit[Job_Hunter] = 460;	.spirit[Job_Soul_Linker] = 461; 

 

@edit

btw, why you used 0 for min level?

its not working. because in this script if you buy additional buffs for this healer. it will ask for minimum level.

Share this post


Link to post
Share on other sites
  • 0
-    script    Healer    -1,{        set .@Price,0;    // Zeny required for heal    set .@Buffs,1;    // Also buff players? (1: yes / 0: no)    set .@Delay,0;    // Heal delay, in seconds    callfunc "F_ClearGarbage",0;    if (@HD > gettimetick(2)) end;    if (.@Price) {        message strcharinfo(0),"Healing costs "+.@Price+" Zeny.";        if (Zeny < .@Price) end;        if(select("^0055FFHeal^000000:^777777Cancel^000000") == 2) close;        set Zeny, Zeny-.@Price;    }    specialeffect2 EF_HEAL2; percentheal 100,100;    if (.@Buffs) {        for( .@i = 0; .@i < .size_buff; .@i++ ) {            .@sum = atoi(.@b$[.@i]) + .min_Levels[.@i];            .@j = .Buffs$[.@i];            stand (strcharinfo(0)); // <- Added this so characters dont get stuck when you cast soul link when sitting.            if( .@sum )                sc_start .@j, 240000, .@sum;            if ( .min_Levels[3] ) {                skilleffect 461, 5; // show soul link effect.                message strcharinfo(0),jobname(BaseJob)=="Bard"||jobname(BaseJob)=="Dancer"?"Bard and Dancer Spirit !!":jobname(BaseJob)+" Spirit !!";            }        }    }    if (.@Delay) set @HD, gettimetick(2)+.@Delay;    close;OnInit:    deletearray .Buffs$;    deletearray .min_Levels;    setarray .Buffs$, SC_INC_AGI, SC_BLESSING, SC_KYRIE, SC_SOULLINK; // SC_INC_AGI if you're using hercules.    setarray .min_Levels,	    5,	    5,	   1,	   1;    .size_buff = getarraysize( .Buffs$ );    end;    }prontera,163,185,6    duplicate(Healer)    Healer#alb    909

 

http://herc.ws/board/topic/2919-soul-linker-npc-bug/?p=19358

Edited by quesoph

Share this post


Link to post
Share on other sites
  • 0

@quesoph

 

how to make it 5secs delay? and can you please add something like this:

 

else {
dispbottom "Don't spam healer please :< Wait "+ @timeleft +" second"+ ( ( @t > 1 ) ? "s" : "" );
  }

 

this will show if they keep on clicking after they where just healed.. 

 

thanks

Edited by P r o p e r t i e s

Share this post


Link to post
Share on other sites

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.   Restore formatting

  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.

Loading...

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.