PcNy - Nov 23, 2013 13:46
The Healer npc in npc/custom/healer.txt is buggy.
When buff is enabled, it makes characters unable to move after getting buffs.
LuLu - Nov 23, 2013 14:12
i think yes. but didn't tested[code=auto:0]
- script Healer -1,{
set .@price,0; // Zeny required for heal
set .@Buffs,0; // Also buff players? (1: yes / 0: no)
set .@Delay,0; // Heal delay, in seconds
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) end; //I think this stucks the character because of "select".
set Zeny, Zeny-.@price;
}
specialeffect2 EF_HEAL2; percentheal 100,100;
if (.@Buffs) {
specialeffect2 EF_INCAGILITY; sc_start SC_INC_AGI,240000,10;
specialeffect2 EF_BLESSING; sc_start SC_BLESSING,240000,10;
}
if (.@Delay) set @HD, gettimetick(2)+.@Delay;
end;
}
[/code][code=auto:0]
if(select("^0055FFHeal^000000:^777777Cancel^000000") == 2) end; //I think this stucks the character because of "select".
[/code]
Dastgir Pojee - Nov 23, 2013 16:57
[quote name="LuLu" timestamp="1385215931"]
i think yes. but didn't tested[code=auto:0]
- script Healer -1,{
set .@price,0; // Zeny required for heal
set .@Buffs,0; // Also buff players? (1: yes / 0: no)
set .@Delay,0; // Heal delay, in seconds
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) end; //I think this stucks the character because of "select".
set Zeny, Zeny-.@price;
}
specialeffect2 EF_HEAL2; percentheal 100,100;
if (.@Buffs) {
specialeffect2 EF_INCAGILITY; sc_start SC_INC_AGI,240000,10;
specialeffect2 EF_BLESSING; sc_start SC_BLESSING,240000,10;
}
if (.@Delay) set @HD, gettimetick(2)+.@Delay;
end;
}
[/code][code=auto:0]
if(select("^0055FFHeal^000000:^777777Cancel^000000") == 2) end; //I think this stucks the character because of "select".
[/code][/quote]
It should be close; and not end;
Patskie - Nov 30, 2013 5:37
[code=auto:0]
- script Healer -1,{
set .@Price,0; // Zeny required for heal
set .@Buffs,0; // Also buff players? (1: yes / 0: no)
set .@Delay,0; // Heal delay, in seconds
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) {
specialeffect2 EF_INCAGILITY; sc_start SC_INC_AGI,240000,10;
specialeffect2 EF_BLESSING; sc_start SC_BLESSING,240000,10;
}
if (.@Delay) set @HD, gettimetick(2)+.@Delay;
close;
}
[/code]
You should replace those end with close otherwise it will stuck those characters who use it. The reason behind the end tag is that rAthena made a slight engine update that if you use dialog related commands you should use close otherwise you should use end.
kyeme - Nov 30, 2013 11:04
Fixed in [url="https://github.com/HerculesWS/Hercules/commit/6f26bde38a967620b1d275136a72c5c181fbe6ae"]6f26bde38a967620b1d275136a72c5c181fbe6ae[/url]
[url="https://github.com/HerculesWS/Hercules/commit/c952fe0da69ebd5371004d6737a4e2e54859b9b0"]c952fe0da69ebd5371004d6737a4e2e54859b9b0[/url]
Thanks to Patskie, Mumbles and all.
This post has been edited by
kyeme
on Nov 30, 2013 14:18