AtotheUtotheGtotheUST Posted November 13, 2014 Posted November 13, 2014 Does anyone know how to make this kind of script on eAthena server? Auto Heal, Agi Bless, Auto Repair, Auto Magnify and auto remove abnormal status in 1 NPC? Quote
EL Dragon Posted November 13, 2014 Posted November 13, 2014 (edited) prontera,153,193,4 script Buffer 874,{ set .@deny, 1; // 10 seconds cooldown if ( @healer_deny + .@deny >= gettimetick(2) ) end; set @healer_deny, gettimetick(2); set .@time, 300000; // the buff last 5 minutes sc_end sc_stone; sc_end sc_freeze; sc_end sc_sleep; sc_end sc_curse; sc_end sc_silence; sc_end sc_confusion; sc_end sc_blind; sc_end sc_bleeding; sc_end sc_decreaseagi; sc_end sc_poison; sc_end sc_hallucination; sc_end sc_stripweapon; sc_end sc_striparmor; sc_end sc_striphelm; sc_end sc_stripshield; sc_end sc_changeundead; sc_end sc_orcish; sc_end sc_berserk; sc_end sc_ske; sc_end sc_swoo; sc_end sc_ska; specialeffect2 100; specialeffect2 885; sc_start SC_INCREASEAGI,1200000,10; sc_start SC_BLESSING,1200000,10; set .@ori, countitem(558); if ( .@ori >= 5 ) { getitem 573, .@ori / 5; delitem 558, .@ori / 5 * 5; message strcharinfo(0), "Refined "+ ( .@ori / 5 * 5 ) +" Oridecon Stones, got "+ ( .@ori / 5 ) +" Oridecons."; } set .@elu, countitem(561); if ( .@elu >= 5 ) { getitem 560, .@elu / 5; delitem 561, .@elu / 5 * 5; message strcharinfo(0), "Refined "+ ( .@elu / 5 * 5 ) +" Elunium Stones, got "+ ( .@elu / 5 ) +" Eluniums."; } while ( getbrokenid(1) && zeny >= 5000 ) { set .@rcount, .@rcount +1 ; set zeny, zeny - 5000; repair 1; } if ( .@rcount ) message strcharinfo(0), "Repaired "+ .@rcount +" Items."; getinventorylist; for( set .@i,0; .@i < @inventorylist_count; set .@i, .@i + 1 ) { if ( @inventorylist_identify[.@i] == 1 ) continue; else if ( getskilllv(40) == 1 && sp >= 10 ) heal 0,0; // lol... this is supposed to reduce their SP by 10, whatever else if ( countitem(611) ) delitem 611,1; else if ( getskilllv(224) && zeny >= ( 100 - ( 5 + 4 * getskilllv(224) ) )* 2/5 ) set zeny, zeny - ( 100 - ( 5 + 4 * getskilllv(224) ) )* 2/5; else if ( getskilllv(37) && zeny >= ( 100 - ( 5 + 2 * getskilllv(37) ) )* 2/5 ) set zeny, zeny - ( 100 - ( 5 + 2 * getskilllv(37) ) )* 2/5; else if ( zeny >= 40 ) set zeny, zeny - 40; else break; delitem2 @inventorylist_id[.@i],1,0,0,0,0,0,0,0; getitem @inventorylist_id[.@i],1; set .@icount, .@icount +1 ; } if ( .@icount ) message strcharinfo(0), "Identified "+ .@icount +" Items."; if ( isequippedcnt(4128) >= 1 ) // if your server needs 2 GTB to immune, set to 2 instead of 1 dispbottom "[Healer] Please unequip your Golden Thief Bug card to get full buff."; percentheal 100,100; skilleffect 28, maxhp; skilleffect 9, maxsp; end; } Edited November 13, 2014 by EL Dragon Quote
AtotheUtotheGtotheUST Posted November 13, 2014 Author Posted November 13, 2014 (edited) prontera,153,193,4 script Buffer 874,{ set .@deny, 1; // 10 seconds cooldown if ( @healer_deny + .@deny >= gettimetick(2) ) end; set @healer_deny, gettimetick(2); set .@time, 300000; // the buff last 5 minutes sc_end sc_stone; sc_end sc_freeze; sc_end sc_sleep; sc_end sc_curse; sc_end sc_silence; sc_end sc_confusion; sc_end sc_blind; sc_end sc_bleeding; sc_end sc_decreaseagi; sc_end sc_poison; sc_end sc_hallucination; sc_end sc_stripweapon; sc_end sc_striparmor; sc_end sc_striphelm; sc_end sc_stripshield; sc_end sc_changeundead; sc_end sc_orcish; sc_end sc_berserk; sc_end sc_ske; sc_end sc_swoo; sc_end sc_ska; specialeffect2 100; specialeffect2 885; sc_start SC_INCREASEAGI,1200000,10; sc_start SC_BLESSING,1200000,10; set .@ori, countitem(558); if ( .@ori >= 5 ) { getitem 573, .@ori / 5; delitem 558, .@ori / 5 * 5; message strcharinfo(0), "Refined "+ ( .@ori / 5 * 5 ) +" Oridecon Stones, got "+ ( .@ori / 5 ) +" Oridecons."; } set .@elu, countitem(561); if ( .@elu >= 5 ) { getitem 560, .@elu / 5; delitem 561, .@elu / 5 * 5; message strcharinfo(0), "Refined "+ ( .@elu / 5 * 5 ) +" Elunium Stones, got "+ ( .@elu / 5 ) +" Eluniums."; } while ( getbrokenid(1) && zeny >= 5000 ) { set .@rcount, .@rcount +1 ; set zeny, zeny - 5000; repair 1; } if ( .@rcount ) message strcharinfo(0), "Repaired "+ .@rcount +" Items."; getinventorylist; for( set .@i,0; .@i < @inventorylist_count; set .@i, .@i + 1 ) { if ( @inventorylist_identify[.@i] == 1 ) continue; else if ( getskilllv(40) == 1 && sp >= 10 ) heal 0,0; // lol... this is supposed to reduce their SP by 10, whatever else if ( countitem(611) ) delitem 611,1; else if ( getskilllv(224) && zeny >= ( 100 - ( 5 + 4 * getskilllv(224) ) )* 2/5 ) set zeny, zeny - ( 100 - ( 5 + 4 * getskilllv(224) ) )* 2/5; else if ( getskilllv(37) && zeny >= ( 100 - ( 5 + 2 * getskilllv(37) ) )* 2/5 ) set zeny, zeny - ( 100 - ( 5 + 2 * getskilllv(37) ) )* 2/5; else if ( zeny >= 40 ) set zeny, zeny - 40; else break; delitem2 @inventorylist_id[.@i],1,0,0,0,0,0,0,0; getitem @inventorylist_id[.@i],1; set .@icount, .@icount +1 ; } if ( .@icount ) message strcharinfo(0), "Identified "+ .@icount +" Items."; if ( isequippedcnt(4128) >= 1 ) // if your server needs 2 GTB to immune, set to 2 instead of 1 dispbottom "[Healer] Please unequip your Golden Thief Bug card to get full buff."; percentheal 100,100; skilleffect 28, maxhp; skilleffect 9, maxsp; end; } Thanks for this El Dragon. I fixed my script with OnTouch but only 1 problem, if you click the NPC it won't work. Same with your script I guess? Edited November 13, 2014 by Asianwow Quote
Capuche Posted November 13, 2014 Posted November 13, 2014 What about reading the rules? Duplicate topics are not allowed. Post your topic once, in the correct section. If you accidentally post in the wrong section, use the Report button to report your own post. Quote
AtotheUtotheGtotheUST Posted November 14, 2014 Author Posted November 14, 2014 What about reading the rules? Duplicate topics are not allowed. Post your topic once, in the correct section. If you accidentally post in the wrong section, use the Report button to report your own post. I did read the rules. And the topic is kinda different but okay I reported it. Quote
EL Dragon Posted November 14, 2014 Posted November 14, 2014 prontera,153,193,4 script .#Buffer -1,4,4,{ end; OnTouch: set .@deny, 1; // 10 seconds cooldown if ( @healer_deny + .@deny >= gettimetick(2) ) end; set @healer_deny, gettimetick(2); set .@time, 300000; // the buff last 5 minutes sc_end sc_stone; sc_end sc_freeze; sc_end sc_sleep; sc_end sc_curse; sc_end sc_silence; sc_end sc_confusion; sc_end sc_blind; sc_end sc_bleeding; sc_end sc_decreaseagi; sc_end sc_poison; sc_end sc_hallucination; sc_end sc_stripweapon; sc_end sc_striparmor; sc_end sc_striphelm; sc_end sc_stripshield; sc_end sc_changeundead; sc_end sc_orcish; sc_end sc_berserk; sc_end sc_ske; sc_end sc_swoo; sc_end sc_ska; specialeffect2 100; specialeffect2 885; sc_start SC_INCREASEAGI,1200000,10; sc_start SC_BLESSING,1200000,10; set .@ori, countitem(558); if ( .@ori >= 5 ) { getitem 573, .@ori / 5; delitem 558, .@ori / 5 * 5; message strcharinfo(0), "Refined "+ ( .@ori / 5 * 5 ) +" Oridecon Stones, got "+ ( .@ori / 5 ) +" Oridecons."; } set .@elu, countitem(561); if ( .@elu >= 5 ) { getitem 560, .@elu / 5; delitem 561, .@elu / 5 * 5; message strcharinfo(0), "Refined "+ ( .@elu / 5 * 5 ) +" Elunium Stones, got "+ ( .@elu / 5 ) +" Eluniums."; } while ( getbrokenid(1) && zeny >= 5000 ) { set .@rcount, .@rcount +1 ; set zeny, zeny - 5000; repair 1; } if ( .@rcount ) message strcharinfo(0), "Repaired "+ .@rcount +" Items."; getinventorylist; for( set .@i,0; .@i < @inventorylist_count; set .@i, .@i + 1 ) { if ( @inventorylist_identify[.@i] == 1 ) continue; else if ( getskilllv(40) == 1 && sp >= 10 ) heal 0,0; // lol... this is supposed to reduce their SP by 10, whatever else if ( countitem(611) ) delitem 611,1; else if ( getskilllv(224) && zeny >= ( 100 - ( 5 + 4 * getskilllv(224) ) )* 2/5 ) set zeny, zeny - ( 100 - ( 5 + 4 * getskilllv(224) ) )* 2/5; else if ( getskilllv(37) && zeny >= ( 100 - ( 5 + 2 * getskilllv(37) ) )* 2/5 ) set zeny, zeny - ( 100 - ( 5 + 2 * getskilllv(37) ) )* 2/5; else if ( zeny >= 40 ) set zeny, zeny - 40; else break; delitem2 @inventorylist_id[.@i],1,0,0,0,0,0,0,0; getitem @inventorylist_id[.@i],1; set .@icount, .@icount +1 ; } if ( .@icount ) message strcharinfo(0), "Identified "+ .@icount +" Items."; if ( isequippedcnt(4128) >= 1 ) // if your server needs 2 GTB to immune, set to 2 instead of 1 dispbottom "[Healer] Please unequip your Golden Thief Bug card to get full buff."; percentheal 100,100; skilleffect 28, maxhp; skilleffect 9, maxsp; end; } 1 Quote
Question
AtotheUtotheGtotheUST
Does anyone know how to make this kind of script on eAthena server?
Auto Heal, Agi Bless, Auto Repair, Auto Magnify and auto remove abnormal status in 1 NPC?
5 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.