Interrupt fix.
Contributed by Sahar.
This commit is contained in:
parent
40baf02531
commit
2ccc3a155a
@ -523,7 +523,8 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Remove the L2Character from the world when the decay task is launched.<br>
|
* Remove the L2Character from the world when the decay task is launched.<br>
|
||||||
* <FONT COLOR=#FF0000><B> <U>Caution</U> : This method DOESN'T REMOVE the object from _allObjects of L2World </B></FONT><BR> <FONT COLOR=#FF0000><B> <U>Caution</U> : This method DOESN'T SEND Server->Client packets to players</B></FONT>
|
* <FONT COLOR=#FF0000><B> <U>Caution</U> : This method DOESN'T REMOVE the object from _allObjects of L2World </B></FONT><BR>
|
||||||
|
* <FONT COLOR=#FF0000><B> <U>Caution</U> : This method DOESN'T SEND Server->Client packets to players</B></FONT>
|
||||||
*/
|
*/
|
||||||
public void onDecay()
|
public void onDecay()
|
||||||
{
|
{
|
||||||
@ -3582,7 +3583,13 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe
|
|||||||
* A L2Character owns a table of Calculators called <B>_calculators</B>.<br>
|
* A L2Character owns a table of Calculators called <B>_calculators</B>.<br>
|
||||||
* Each Calculator (a calculator per state) own a table of Func object.<br>
|
* Each Calculator (a calculator per state) own a table of Func object.<br>
|
||||||
* A Func object is a mathematic function that permit to calculate the modifier of a state (ex : REGENERATE_HP_RATE...).<br>
|
* A Func object is a mathematic function that permit to calculate the modifier of a state (ex : REGENERATE_HP_RATE...).<br>
|
||||||
* <FONT COLOR=#FF0000><B> <U>Caution</U> : This method is ONLY for L2PcInstance</B></FONT><br> <B><U>Example of use</U>:</B> <ul> <li>Equip an item from inventory</li> <li>Learn a new passive skill</li> <li>Use an active skill</li> </ul>
|
* <FONT COLOR=#FF0000><B> <U>Caution</U> : This method is ONLY for L2PcInstance</B></FONT><br>
|
||||||
|
* <B><U>Example of use</U>:</B>
|
||||||
|
* <ul>
|
||||||
|
* <li>Equip an item from inventory</li>
|
||||||
|
* <li>Learn a new passive skill</li>
|
||||||
|
* <li>Use an active skill</li>
|
||||||
|
* </ul>
|
||||||
* @param functions The list of Func objects to add to the Calculator corresponding to the state affected
|
* @param functions The list of Func objects to add to the Calculator corresponding to the state affected
|
||||||
*/
|
*/
|
||||||
public final void addStatFuncs(List<AbstractFunction> functions)
|
public final void addStatFuncs(List<AbstractFunction> functions)
|
||||||
@ -3672,7 +3679,12 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe
|
|||||||
* A L2Character owns a table of Calculators called <B>_calculators</B>.<br>
|
* A L2Character owns a table of Calculators called <B>_calculators</B>.<br>
|
||||||
* Each Calculator (a calculator per state) own a table of Func object.<br>
|
* Each Calculator (a calculator per state) own a table of Func object.<br>
|
||||||
* A Func object is a mathematic function that permit to calculate the modifier of a state (ex : REGENERATE_HP_RATE...).<br>
|
* A Func object is a mathematic function that permit to calculate the modifier of a state (ex : REGENERATE_HP_RATE...).<br>
|
||||||
* <FONT COLOR=#FF0000><B> <U>Caution</U> : This method is ONLY for L2PcInstance</B></FONT><br> <B><U>Example of use</U>:</B> <ul> <li>Unequip an item from inventory</li> <li>Stop an active skill</li> </ul>
|
* <FONT COLOR=#FF0000><B> <U>Caution</U> : This method is ONLY for L2PcInstance</B></FONT><br>
|
||||||
|
* <B><U>Example of use</U>:</B>
|
||||||
|
* <ul>
|
||||||
|
* <li>Unequip an item from inventory</li>
|
||||||
|
* <li>Stop an active skill</li>
|
||||||
|
* </ul>
|
||||||
* @param functions The list of Func objects to add to the Calculator corresponding to the state affected
|
* @param functions The list of Func objects to add to the Calculator corresponding to the state affected
|
||||||
*/
|
*/
|
||||||
public final void removeStatFuncs(AbstractFunction[] functions)
|
public final void removeStatFuncs(AbstractFunction[] functions)
|
||||||
@ -4125,7 +4137,8 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe
|
|||||||
* That's why, client send regularly a Client->Server ValidatePosition packet to eventually correct the gap on the server.<br>
|
* That's why, client send regularly a Client->Server ValidatePosition packet to eventually correct the gap on the server.<br>
|
||||||
* But, it's always the server position that is used in range calculation. At the end of the estimated movement time,<br>
|
* But, it's always the server position that is used in range calculation. At the end of the estimated movement time,<br>
|
||||||
* the L2Character position is automatically set to the destination position even if the movement is not finished.<br>
|
* the L2Character position is automatically set to the destination position even if the movement is not finished.<br>
|
||||||
* <FONT COLOR=#FF0000><B><U>Caution</U>: The current Z position is obtained FROM THE CLIENT by the Client->Server ValidatePosition Packet.<br> But x and y positions must be calculated to avoid that players try to modify their movement speed.</B></FONT>
|
* <FONT COLOR=#FF0000><B><U>Caution</U>: The current Z position is obtained FROM THE CLIENT by the Client->Server ValidatePosition Packet.<br>
|
||||||
|
* But x and y positions must be calculated to avoid that players try to modify their movement speed.</B></FONT>
|
||||||
* @return True if the movement is finished
|
* @return True if the movement is finished
|
||||||
*/
|
*/
|
||||||
public boolean updatePosition()
|
public boolean updatePosition()
|
||||||
@ -4416,7 +4429,11 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe
|
|||||||
* <li>Add the L2Character to movingObjects of the GameTimeController</li>
|
* <li>Add the L2Character to movingObjects of the GameTimeController</li>
|
||||||
* <li>Create a task to notify the AI that L2Character arrives at a check point of the movement</li>
|
* <li>Create a task to notify the AI that L2Character arrives at a check point of the movement</li>
|
||||||
* </ul>
|
* </ul>
|
||||||
* <FONT COLOR=#FF0000><B><U>Caution</U>: This method DOESN'T send Server->Client packet MoveToPawn/CharMoveToLocation.</B></FONT><br> <B><U>Example of use</U>:</B> <ul> <li>AI : onIntentionMoveTo(Location), onIntentionPickUp(L2Object), onIntentionInteract(L2Object)</li> <li>FollowTask</li>
|
* <FONT COLOR=#FF0000><B><U>Caution</U>: This method DOESN'T send Server->Client packet MoveToPawn/CharMoveToLocation.</B></FONT><br>
|
||||||
|
* <B><U>Example of use</U>:</B>
|
||||||
|
* <ul>
|
||||||
|
* <li>AI : onIntentionMoveTo(Location), onIntentionPickUp(L2Object), onIntentionInteract(L2Object)</li>
|
||||||
|
* <li>FollowTask</li>
|
||||||
* </ul>
|
* </ul>
|
||||||
* @param x The X position of the destination
|
* @param x The X position of the destination
|
||||||
* @param y The Y position of the destination
|
* @param y The Y position of the destination
|
||||||
@ -4845,8 +4862,7 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <B><U> Overridden in </U> :</B>
|
* <B><U> Overridden in </U> :</B> <li>L2PcInstance</li>
|
||||||
* <li>L2PcInstance</li>
|
|
||||||
* @return True if arrows are available.
|
* @return True if arrows are available.
|
||||||
*/
|
*/
|
||||||
protected boolean checkAndEquipArrows()
|
protected boolean checkAndEquipArrows()
|
||||||
@ -4855,8 +4871,7 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <B><U> Overridden in </U> :</B>
|
* <B><U> Overridden in </U> :</B> <li>L2PcInstance</li>
|
||||||
* <li>L2PcInstance</li>
|
|
||||||
* @return True if bolts are available.
|
* @return True if bolts are available.
|
||||||
*/
|
*/
|
||||||
protected boolean checkAndEquipBolts()
|
protected boolean checkAndEquipBolts()
|
||||||
@ -4866,9 +4881,7 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Add Exp and Sp to the L2Character.<br>
|
* Add Exp and Sp to the L2Character.<br>
|
||||||
* <B><U> Overridden in </U> :</B>
|
* <B><U> Overridden in </U> :</B> <li>L2PcInstance</li> <li>L2PetInstance</li>
|
||||||
* <li>L2PcInstance</li>
|
|
||||||
* <li>L2PetInstance</li>
|
|
||||||
* @param addToExp
|
* @param addToExp
|
||||||
* @param addToSp
|
* @param addToSp
|
||||||
*/
|
*/
|
||||||
@ -4878,29 +4891,25 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <B><U> Overridden in </U> :</B>
|
* <B><U> Overridden in </U> :</B> <li>L2PcInstance</li>
|
||||||
* <li>L2PcInstance</li>
|
|
||||||
* @return the active weapon instance (always equiped in the right hand).
|
* @return the active weapon instance (always equiped in the right hand).
|
||||||
*/
|
*/
|
||||||
public abstract L2ItemInstance getActiveWeaponInstance();
|
public abstract L2ItemInstance getActiveWeaponInstance();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <B><U> Overridden in </U> :</B>
|
* <B><U> Overridden in </U> :</B> <li>L2PcInstance</li>
|
||||||
* <li>L2PcInstance</li>
|
|
||||||
* @return the active weapon item (always equiped in the right hand).
|
* @return the active weapon item (always equiped in the right hand).
|
||||||
*/
|
*/
|
||||||
public abstract L2Weapon getActiveWeaponItem();
|
public abstract L2Weapon getActiveWeaponItem();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <B><U> Overridden in </U> :</B>
|
* <B><U> Overridden in </U> :</B> <li>L2PcInstance</li>
|
||||||
* <li>L2PcInstance</li>
|
|
||||||
* @return the secondary weapon instance (always equiped in the left hand).
|
* @return the secondary weapon instance (always equiped in the left hand).
|
||||||
*/
|
*/
|
||||||
public abstract L2ItemInstance getSecondaryWeaponInstance();
|
public abstract L2ItemInstance getSecondaryWeaponInstance();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <B><U> Overridden in </U> :</B>
|
* <B><U> Overridden in </U> :</B> <li>L2PcInstance</li>
|
||||||
* <li>L2PcInstance</li>
|
|
||||||
* @return the secondary {@link L2Item} item (always equiped in the left hand).
|
* @return the secondary {@link L2Item} item (always equiped in the left hand).
|
||||||
*/
|
*/
|
||||||
public abstract L2Item getSecondaryWeaponItem();
|
public abstract L2Item getSecondaryWeaponItem();
|
||||||
@ -5152,8 +5161,7 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Reduce the arrow number of the L2Character.<br>
|
* Reduce the arrow number of the L2Character.<br>
|
||||||
* <B><U> Overridden in </U> :</B>
|
* <B><U> Overridden in </U> :</B> <li>L2PcInstance</li>
|
||||||
* <li>L2PcInstance</li>
|
|
||||||
* @param bolts
|
* @param bolts
|
||||||
*/
|
*/
|
||||||
protected void reduceArrowCount(boolean bolts)
|
protected void reduceArrowCount(boolean bolts)
|
||||||
@ -5556,7 +5564,7 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe
|
|||||||
|
|
||||||
// Healing party members should ignore LOS.
|
// Healing party members should ignore LOS.
|
||||||
if (((skill.getTargetType() != L2TargetType.PARTY) || !skill.hasEffectType(L2EffectType.HEAL)) //
|
if (((skill.getTargetType() != L2TargetType.PARTY) || !skill.hasEffectType(L2EffectType.HEAL)) //
|
||||||
&& !GeoData.getInstance().canSeeTarget(this, target))
|
&& (mut.getSkillTime() > 550) && !GeoData.getInstance().canSeeTarget(this, target))
|
||||||
{
|
{
|
||||||
skipLOS++;
|
skipLOS++;
|
||||||
continue;
|
continue;
|
||||||
|
Loading…
Reference in New Issue
Block a user