AtotheUtotheGtotheUST Posted November 13, 2014 Group: Members Topic Count: 10 Topics Per Day: 0.00 Content Count: 20 Reputation: 0 Joined: 03/12/12 Last Seen: September 12, 2016 Share 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 Link to comment Share on other sites More sharing options...
EL Dragon Posted November 13, 2014 Group: Members Topic Count: 86 Topics Per Day: 0.02 Content Count: 591 Reputation: 146 Joined: 06/19/12 Last Seen: December 10, 2016 Share 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 Link to comment Share on other sites More sharing options...
AtotheUtotheGtotheUST Posted November 13, 2014 Group: Members Topic Count: 10 Topics Per Day: 0.00 Content Count: 20 Reputation: 0 Joined: 03/12/12 Last Seen: September 12, 2016 Author Share 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 Link to comment Share on other sites More sharing options...
Capuche Posted November 13, 2014 Group: Developer Topic Count: 10 Topics Per Day: 0.00 Content Count: 2407 Reputation: 616 Joined: 07/05/12 Last Seen: March 20 Share 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 Link to comment Share on other sites More sharing options...
AtotheUtotheGtotheUST Posted November 14, 2014 Group: Members Topic Count: 10 Topics Per Day: 0.00 Content Count: 20 Reputation: 0 Joined: 03/12/12 Last Seen: September 12, 2016 Author Share 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 Link to comment Share on other sites More sharing options...
EL Dragon Posted November 14, 2014 Group: Members Topic Count: 86 Topics Per Day: 0.02 Content Count: 591 Reputation: 146 Joined: 06/19/12 Last Seen: December 10, 2016 Share 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 Link to comment Share on other sites More sharing options...
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?
Link to comment
Share on other sites
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.