//http://rathena.org/board/topic/57784-request-dota-runes/page__fromsearch__1
aretnorp,1,1,5 script Runes 757,2,2,{
dispbottom "Walkthrough to get Runes.";
end;
OnTouch:
switch( .Runes ){
Case 1:
sc_start SC_INCATKRATE,( .Duration * 1000 ),100;
sc_start SC_INCMATKRATE,( .Duration * 1000 ),100;
break;
Case 2:
skill "AS_CLOAKING",10,1;
sc_start SC_CLOAKING,( .Duration * 1000 ),10;
break;
Case 3:
sc_start4 SC_REGENERATION,( .Duration * 1000 ),-10,1,0,0;
break;
Case 4:
getmapxy( .@Map$,.@X,.@Y,0,strcharinfo(0) );
clone .@Map$,.@X,.@Y,"",getcharid(0),getcharid(0),"",1,.Duration;
clone .@Map$,.@X,.@Y,"",getcharid(0),getcharid(0),"",1,.Duration;
break;
Case 5:
sc_start SC_SpeedUp1,( .Duration * 1000 ),0;
break;
default: end;
}
announce "[ "+strcharinfo(0)+" ] has gained "+.Names$[.Runes]+".",bc_self,0x00FF00;
hideonnpc strnpcinfo(0);
delwaitingroom;
set .Runes,0;
set .RuneDelay,gettimetick(2) + .Duration;
while( .RuneDelay > gettimetick(2) ) sleep2 1000;
OnInit:
// Runes Duration in Seconds
set .Duration,60;
// Name of Each Runes.
setarray .Names$[1],
"Double Damage", // 2 x ATK Rate
"Invisibility", // Cloaking
"Regeneration", // HP / SP Regeneration
" Clone", // Create 2 Clones
" Haste"; // Improve Movement Speed
// Random Coordinate where NPC will Shown Again
setarray .CoordinateX[0],219,220;
setarray .CoordinateY[0],231,232;
sc_end SC_CLOAKING;
sc_end SC_REGENERATION;
set .Random,rand( getarraysize( .CoordinateX ) );
movenpc strnpcinfo(0),.CoordinateX[ .Random ],.CoordinateY[ .Random ];
hideoffnpc strnpcinfo(0);
if( !.Runes ) set .Runes,rand( 1,( getarraysize( .Names$ ) - 1 ) );
if( .Runes ) waitingroom " "+.Names$[.Runes],0;
end;
}