Jump to content
  • 0

Automatic Potions When Activechar.isstunned


tiguz

Question

Hello again. Im fixing some things in my automatic potions code.

 

It was spamming pots even when char had some abnormal status like stunned, sleeping, paralized etc.

 

So I added this:

 

if (activeChar.isStunned() || activeChar.isConfused() || activeChar.isAway() || activeChar.isParalyzed() || activeChar.isSleeping() || activeChar.isDead())
{
activeChar.sendMessage("You Cannot Use Items Right Now.");
activeChar.sendPacket(new ExAutoSoulShot(id, 0));
activeChar.setAutoPot(id, null, false);
return;
}
 
BUT, this way, im disabling the toggle skill with : activeChar.sendPacket(new ExAutoSoulShot(id, 0));
And stoping the use of the pots: activeChar.setAutoPot(id, null, false);
 
This way when I get stunned (etc) the toggle potion (ExAutoSoulShot)  is disabled and the usage stops. But its a pain in the ass cause when stun effect is off, I need to right click again in the 3 potions to activate it again.
 
Well, it fixes my problem but cause another one lol. The best solution would be: Keep toggle skill active but dont use pots, and once the abnormal effect is off, it will consume potions again without needing to right click them all again.
Edited by tiguz
Link to comment
Share on other sites

Recommended Posts

  • 0

            if (activeChar.isStunned() || activeChar.isConfused() || activeChar.isAway() || activeChar.isParalyzed() || activeChar.isSleeping() || activeChar.isDead())
            {
                activeChar.sendMessage("You Cannot Use Items Right Now.");
                activeChar.sendPacket(new ExAutoSoulShot(id, 0));
                activeChar.setAutoPot(id, null, false);
                return;
           } 
The check already exists, simply remove two/three lines (return is a must) and voila.

 

AutoPot runnable method.

Edited by SweeTs
Link to comment
Share on other sites

  • 0

data\scripts\handlers\effecthandlers\CpHeal.java

 

final L2Character target = info.getEffected();

-if ((target == null) || target.isDead() || target.isDoor())

+if ((target == null) || target.isDead() || target.isDoor() || target.isStunned())
  {
   return;
  }

double amount = _power;

 

 

Try this one and add the other cases like this (isConfused, isDead bla bla bla bla)

Edited by Solomun
Link to comment
Share on other sites

  • 0

data\scripts\handlers\effecthandlers\CpHeal.java

 

final L2Character target = info.getEffected();

-if ((target == null) || target.isDead() || target.isDoor())

+if ((target == null) || target.isDead() || target.isDoor() || target.isStunned())

  {

   return;

  }

double amount = _power;

 

 

Try this one and add the other cases like this (isConfused, isDead bla bla bla bla)

OKay, but if the player leaves his char dead on pvp zone, he will burn all his cp potions cause it will keep spamming but will never heal? lol

Link to comment
Share on other sites

  • 0

Also, If I add this exception to Heal.Java, Cardinal heals wont affect targets with stun, sleep etc. So it wont work =/

Same would happen to Overlord Cp heal Skill. 

I have an auto HP pot, auto MP pot, and  auto CP.

Edited by tiguz
Link to comment
Share on other sites

  • 0

OKay, but if the player leaves his char dead on pvp zone, he will burn all his cp potions cause it will keep spamming but will never heal? lol

Hmm, sorry for that but i was thinking something else. I have no idea how your AutoCP works, so i had something else on my mind as an AutoCP..

Link to comment
Share on other sites

  • 0

Also, If I add this exception to Heal.Java, Cardinal heals wont affect targets with stun, sleep etc. So it wont work =/

Same would happen to Overlord Cp heal Skill. 

I have an auto HP pot, auto MP pot, and  auto CP.

Yea, u need to make the Skill ID restriction i gave you on the other post. Just as mana potion here

Link to comment
Share on other sites

  • 0

Simply add the check/return in the place where the cp is being used.

Could please paste the code here? Unfortunatelly I dont code. I can oly fix things things that I can copy from other files, or things that are very basic =P

Link to comment
Share on other sites

  • 0

Could please paste the code here? Unfortunatelly I dont code. I can oly fix things things that I can copy from other files, or things that are very basic =P

Where did you find your AutoCP code? Post the link and i will see if i can do it to avoid giving CP to stunned players...

Link to comment
Share on other sites

  • 0

Where did you find your AutoCP code? Post the link and i will see if i can do it to avoid giving CP to stunned players...

Actually this code is auto cp/hp/mp so I need for all 3 potions. The potion itself is a toggle skill that works like SoulShot with right click.

 

At moment when player isDead, isStunned etc, the toggle is turned off automaticaly to stop using potions, instead of just not using it while stun/sleep,death effects last.

There is no need to turn off the toggles everytime, should just stop using the potion itself while effect lasts, and start spamming again when effect is off.

So its a pain in the ass to click again in the 3 potions to activate them back after every stun, every sleep, every death.

Edited by tiguz
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.


×
×
  • Create New...