Prohibit multiple duel requests.
This commit is contained in:
parent
71f0b628c9
commit
8c8f0f6086
@ -487,6 +487,7 @@ public final class L2PcInstance extends L2Playable
|
||||
|
||||
/** Duel */
|
||||
private boolean _isInDuel = false;
|
||||
private boolean _startingDuel = false;
|
||||
private int _duelState = Duel.DUELSTATE_NODUEL;
|
||||
private int _duelId = 0;
|
||||
private SystemMessageId _noDuelReason = SystemMessageId.THERE_IS_NO_OPPONENT_TO_RECEIVE_YOUR_CHALLENGE_FOR_A_DUEL;
|
||||
@ -9365,6 +9366,11 @@ public final class L2PcInstance extends L2Playable
|
||||
return _isInDuel;
|
||||
}
|
||||
|
||||
public void setStartingDuel()
|
||||
{
|
||||
_startingDuel = true;
|
||||
}
|
||||
|
||||
public int getDuelId()
|
||||
{
|
||||
return _duelId;
|
||||
@ -9403,6 +9409,7 @@ public final class L2PcInstance extends L2Playable
|
||||
_duelState = Duel.DUELSTATE_NODUEL;
|
||||
_duelId = 0;
|
||||
}
|
||||
_startingDuel = false;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -9434,7 +9441,7 @@ public final class L2PcInstance extends L2Playable
|
||||
_noDuelReason = SystemMessageId.C1_CANNOT_DUEL_BECAUSE_C1_S_HP_OR_MP_IS_BELOW_50;
|
||||
return false;
|
||||
}
|
||||
if (_isInDuel)
|
||||
if (_isInDuel || _startingDuel)
|
||||
{
|
||||
_noDuelReason = SystemMessageId.C1_CANNOT_DUEL_BECAUSE_C1_IS_ALREADY_ENGAGED_IN_A_DUEL;
|
||||
return false;
|
||||
@ -12155,7 +12162,7 @@ public final class L2PcInstance extends L2Playable
|
||||
sendPacket(SystemMessageId.YOU_CANNOT_USE_MY_TELEPORTS_WHILE_PARTICIPATING_A_LARGE_SCALE_BATTLE_SUCH_AS_A_CASTLE_SIEGE_FORTRESS_SIEGE_OR_CLAN_HALL_SIEGE);
|
||||
return false;
|
||||
}
|
||||
else if (_isInDuel)
|
||||
else if (_isInDuel || _startingDuel)
|
||||
{
|
||||
sendPacket(SystemMessageId.YOU_CANNOT_USE_MY_TELEPORTS_DURING_A_DUEL);
|
||||
return false;
|
||||
|
@ -84,6 +84,23 @@ public class Duel
|
||||
_playerB = playerB;
|
||||
_partyDuel = partyDuel == 1;
|
||||
|
||||
if (_partyDuel)
|
||||
{
|
||||
for (L2PcInstance member : _playerA.getParty().getMembers())
|
||||
{
|
||||
member.setStartingDuel();
|
||||
}
|
||||
for (L2PcInstance member : _playerB.getParty().getMembers())
|
||||
{
|
||||
member.setStartingDuel();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
_playerA.setStartingDuel();
|
||||
_playerB.setStartingDuel();
|
||||
}
|
||||
|
||||
_duelEndTime = Calendar.getInstance();
|
||||
_duelEndTime.add(Calendar.SECOND, _partyDuel ? PARTY_DUEL_DURATION : PLAYER_DUEL_DURATION);
|
||||
|
||||
|
@ -489,6 +489,7 @@ public final class L2PcInstance extends L2Playable
|
||||
|
||||
/** Duel */
|
||||
private boolean _isInDuel = false;
|
||||
private boolean _startingDuel = false;
|
||||
private int _duelState = Duel.DUELSTATE_NODUEL;
|
||||
private int _duelId = 0;
|
||||
private SystemMessageId _noDuelReason = SystemMessageId.THERE_IS_NO_OPPONENT_TO_RECEIVE_YOUR_CHALLENGE_FOR_A_DUEL;
|
||||
@ -9372,6 +9373,11 @@ public final class L2PcInstance extends L2Playable
|
||||
return _isInDuel;
|
||||
}
|
||||
|
||||
public void setStartingDuel()
|
||||
{
|
||||
_startingDuel = true;
|
||||
}
|
||||
|
||||
public int getDuelId()
|
||||
{
|
||||
return _duelId;
|
||||
@ -9410,6 +9416,7 @@ public final class L2PcInstance extends L2Playable
|
||||
_duelState = Duel.DUELSTATE_NODUEL;
|
||||
_duelId = 0;
|
||||
}
|
||||
_startingDuel = false;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -9441,7 +9448,7 @@ public final class L2PcInstance extends L2Playable
|
||||
_noDuelReason = SystemMessageId.C1_CANNOT_DUEL_BECAUSE_C1_S_HP_OR_MP_IS_BELOW_50;
|
||||
return false;
|
||||
}
|
||||
if (_isInDuel)
|
||||
if (_isInDuel || _startingDuel)
|
||||
{
|
||||
_noDuelReason = SystemMessageId.C1_CANNOT_DUEL_BECAUSE_C1_IS_ALREADY_ENGAGED_IN_A_DUEL;
|
||||
return false;
|
||||
@ -12162,7 +12169,7 @@ public final class L2PcInstance extends L2Playable
|
||||
sendPacket(SystemMessageId.YOU_CANNOT_USE_MY_TELEPORTS_WHILE_PARTICIPATING_A_LARGE_SCALE_BATTLE_SUCH_AS_A_CASTLE_SIEGE_FORTRESS_SIEGE_OR_CLAN_HALL_SIEGE);
|
||||
return false;
|
||||
}
|
||||
else if (_isInDuel)
|
||||
else if (_isInDuel || _startingDuel)
|
||||
{
|
||||
sendPacket(SystemMessageId.YOU_CANNOT_USE_MY_TELEPORTS_DURING_A_DUEL);
|
||||
return false;
|
||||
|
@ -84,6 +84,23 @@ public class Duel
|
||||
_playerB = playerB;
|
||||
_partyDuel = partyDuel == 1;
|
||||
|
||||
if (_partyDuel)
|
||||
{
|
||||
for (L2PcInstance member : _playerA.getParty().getMembers())
|
||||
{
|
||||
member.setStartingDuel();
|
||||
}
|
||||
for (L2PcInstance member : _playerB.getParty().getMembers())
|
||||
{
|
||||
member.setStartingDuel();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
_playerA.setStartingDuel();
|
||||
_playerB.setStartingDuel();
|
||||
}
|
||||
|
||||
_duelEndTime = Calendar.getInstance();
|
||||
_duelEndTime.add(Calendar.SECOND, _partyDuel ? PARTY_DUEL_DURATION : PLAYER_DUEL_DURATION);
|
||||
|
||||
|
@ -491,6 +491,7 @@ public final class L2PcInstance extends L2Playable
|
||||
|
||||
/** Duel */
|
||||
private boolean _isInDuel = false;
|
||||
private boolean _startingDuel = false;
|
||||
private int _duelState = Duel.DUELSTATE_NODUEL;
|
||||
private int _duelId = 0;
|
||||
private SystemMessageId _noDuelReason = SystemMessageId.THERE_IS_NO_OPPONENT_TO_RECEIVE_YOUR_CHALLENGE_FOR_A_DUEL;
|
||||
@ -9382,6 +9383,11 @@ public final class L2PcInstance extends L2Playable
|
||||
return _isInDuel;
|
||||
}
|
||||
|
||||
public void setStartingDuel()
|
||||
{
|
||||
_startingDuel = true;
|
||||
}
|
||||
|
||||
public int getDuelId()
|
||||
{
|
||||
return _duelId;
|
||||
@ -9420,6 +9426,7 @@ public final class L2PcInstance extends L2Playable
|
||||
_duelState = Duel.DUELSTATE_NODUEL;
|
||||
_duelId = 0;
|
||||
}
|
||||
_startingDuel = false;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -9451,7 +9458,7 @@ public final class L2PcInstance extends L2Playable
|
||||
_noDuelReason = SystemMessageId.C1_CANNOT_DUEL_BECAUSE_C1_S_HP_OR_MP_IS_BELOW_50;
|
||||
return false;
|
||||
}
|
||||
if (_isInDuel)
|
||||
if (_isInDuel || _startingDuel)
|
||||
{
|
||||
_noDuelReason = SystemMessageId.C1_CANNOT_DUEL_BECAUSE_C1_IS_ALREADY_ENGAGED_IN_A_DUEL;
|
||||
return false;
|
||||
@ -12172,7 +12179,7 @@ public final class L2PcInstance extends L2Playable
|
||||
sendPacket(SystemMessageId.YOU_CANNOT_USE_MY_TELEPORTS_WHILE_PARTICIPATING_A_LARGE_SCALE_BATTLE_SUCH_AS_A_CASTLE_SIEGE_FORTRESS_SIEGE_OR_CLAN_HALL_SIEGE);
|
||||
return false;
|
||||
}
|
||||
else if (_isInDuel)
|
||||
else if (_isInDuel || _startingDuel)
|
||||
{
|
||||
sendPacket(SystemMessageId.YOU_CANNOT_USE_MY_TELEPORTS_DURING_A_DUEL);
|
||||
return false;
|
||||
|
@ -84,6 +84,23 @@ public class Duel
|
||||
_playerB = playerB;
|
||||
_partyDuel = partyDuel == 1;
|
||||
|
||||
if (_partyDuel)
|
||||
{
|
||||
for (L2PcInstance member : _playerA.getParty().getMembers())
|
||||
{
|
||||
member.setStartingDuel();
|
||||
}
|
||||
for (L2PcInstance member : _playerB.getParty().getMembers())
|
||||
{
|
||||
member.setStartingDuel();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
_playerA.setStartingDuel();
|
||||
_playerB.setStartingDuel();
|
||||
}
|
||||
|
||||
_duelEndTime = Calendar.getInstance();
|
||||
_duelEndTime.add(Calendar.SECOND, _partyDuel ? PARTY_DUEL_DURATION : PLAYER_DUEL_DURATION);
|
||||
|
||||
|
@ -496,6 +496,7 @@ public final class L2PcInstance extends L2Playable
|
||||
|
||||
/** Duel */
|
||||
private boolean _isInDuel = false;
|
||||
private boolean _startingDuel = false;
|
||||
private int _duelState = Duel.DUELSTATE_NODUEL;
|
||||
private int _duelId = 0;
|
||||
private SystemMessageId _noDuelReason = SystemMessageId.THERE_IS_NO_OPPONENT_TO_RECEIVE_YOUR_CHALLENGE_FOR_A_DUEL;
|
||||
@ -9380,6 +9381,11 @@ public final class L2PcInstance extends L2Playable
|
||||
return _isInDuel;
|
||||
}
|
||||
|
||||
public void setStartingDuel()
|
||||
{
|
||||
_startingDuel = true;
|
||||
}
|
||||
|
||||
public int getDuelId()
|
||||
{
|
||||
return _duelId;
|
||||
@ -9418,6 +9424,7 @@ public final class L2PcInstance extends L2Playable
|
||||
_duelState = Duel.DUELSTATE_NODUEL;
|
||||
_duelId = 0;
|
||||
}
|
||||
_startingDuel = false;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -9449,7 +9456,7 @@ public final class L2PcInstance extends L2Playable
|
||||
_noDuelReason = SystemMessageId.C1_CANNOT_DUEL_BECAUSE_C1_S_HP_OR_MP_IS_BELOW_50;
|
||||
return false;
|
||||
}
|
||||
if (_isInDuel)
|
||||
if (_isInDuel || _startingDuel)
|
||||
{
|
||||
_noDuelReason = SystemMessageId.C1_CANNOT_DUEL_BECAUSE_C1_IS_ALREADY_ENGAGED_IN_A_DUEL;
|
||||
return false;
|
||||
@ -12156,7 +12163,7 @@ public final class L2PcInstance extends L2Playable
|
||||
sendPacket(SystemMessageId.YOU_CANNOT_USE_MY_TELEPORTS_WHILE_PARTICIPATING_A_LARGE_SCALE_BATTLE_SUCH_AS_A_CASTLE_SIEGE_FORTRESS_SIEGE_OR_CLAN_HALL_SIEGE);
|
||||
return false;
|
||||
}
|
||||
else if (_isInDuel)
|
||||
else if (_isInDuel || _startingDuel)
|
||||
{
|
||||
sendPacket(SystemMessageId.YOU_CANNOT_USE_MY_TELEPORTS_DURING_A_DUEL);
|
||||
return false;
|
||||
|
@ -84,6 +84,23 @@ public class Duel
|
||||
_playerB = playerB;
|
||||
_partyDuel = partyDuel == 1;
|
||||
|
||||
if (_partyDuel)
|
||||
{
|
||||
for (L2PcInstance member : _playerA.getParty().getMembers())
|
||||
{
|
||||
member.setStartingDuel();
|
||||
}
|
||||
for (L2PcInstance member : _playerB.getParty().getMembers())
|
||||
{
|
||||
member.setStartingDuel();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
_playerA.setStartingDuel();
|
||||
_playerB.setStartingDuel();
|
||||
}
|
||||
|
||||
_duelEndTime = Calendar.getInstance();
|
||||
_duelEndTime.add(Calendar.SECOND, _partyDuel ? PARTY_DUEL_DURATION : PLAYER_DUEL_DURATION);
|
||||
|
||||
|
@ -493,6 +493,7 @@ public final class L2PcInstance extends L2Playable
|
||||
|
||||
/** Duel */
|
||||
private boolean _isInDuel = false;
|
||||
private boolean _startingDuel = false;
|
||||
private int _duelState = Duel.DUELSTATE_NODUEL;
|
||||
private int _duelId = 0;
|
||||
private SystemMessageId _noDuelReason = SystemMessageId.THERE_IS_NO_OPPONENT_TO_RECEIVE_YOUR_CHALLENGE_FOR_A_DUEL;
|
||||
@ -9826,6 +9827,11 @@ public final class L2PcInstance extends L2Playable
|
||||
return _isInDuel;
|
||||
}
|
||||
|
||||
public void setStartingDuel()
|
||||
{
|
||||
_startingDuel = true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getDuelId()
|
||||
{
|
||||
@ -9865,6 +9871,7 @@ public final class L2PcInstance extends L2Playable
|
||||
_duelState = Duel.DUELSTATE_NODUEL;
|
||||
_duelId = 0;
|
||||
}
|
||||
_startingDuel = false;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -9896,7 +9903,7 @@ public final class L2PcInstance extends L2Playable
|
||||
_noDuelReason = SystemMessageId.C1_CANNOT_DUEL_BECAUSE_C1_S_HP_OR_MP_IS_BELOW_50;
|
||||
return false;
|
||||
}
|
||||
if (_isInDuel)
|
||||
if (_isInDuel || _startingDuel)
|
||||
{
|
||||
_noDuelReason = SystemMessageId.C1_CANNOT_DUEL_BECAUSE_C1_IS_ALREADY_ENGAGED_IN_A_DUEL;
|
||||
return false;
|
||||
@ -12987,7 +12994,7 @@ public final class L2PcInstance extends L2Playable
|
||||
sendPacket(SystemMessageId.YOU_CANNOT_USE_MY_TELEPORTS_WHILE_PARTICIPATING_A_LARGE_SCALE_BATTLE_SUCH_AS_A_CASTLE_SIEGE_FORTRESS_SIEGE_OR_HIDEOUT_SIEGE);
|
||||
return false;
|
||||
}
|
||||
else if (_isInDuel)
|
||||
if (_isInDuel || _startingDuel)
|
||||
{
|
||||
sendPacket(SystemMessageId.YOU_CANNOT_USE_MY_TELEPORTS_DURING_A_DUEL);
|
||||
return false;
|
||||
|
@ -85,6 +85,23 @@ public class Duel
|
||||
_playerB = playerB;
|
||||
_partyDuel = partyDuel == 1;
|
||||
|
||||
if (_partyDuel)
|
||||
{
|
||||
for (L2PcInstance member : _playerA.getParty().getMembers())
|
||||
{
|
||||
member.setStartingDuel();
|
||||
}
|
||||
for (L2PcInstance member : _playerB.getParty().getMembers())
|
||||
{
|
||||
member.setStartingDuel();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
_playerA.setStartingDuel();
|
||||
_playerB.setStartingDuel();
|
||||
}
|
||||
|
||||
_duelEndTime = Calendar.getInstance();
|
||||
_duelEndTime.add(Calendar.SECOND, _partyDuel ? PARTY_DUEL_DURATION : PLAYER_DUEL_DURATION);
|
||||
|
||||
|
@ -486,6 +486,7 @@ public final class L2PcInstance extends L2Playable
|
||||
|
||||
/** Duel */
|
||||
private boolean _isInDuel = false;
|
||||
private boolean _startingDuel = false;
|
||||
private int _duelState = Duel.DUELSTATE_NODUEL;
|
||||
private int _duelId = 0;
|
||||
private SystemMessageId _noDuelReason = SystemMessageId.THERE_IS_NO_OPPONENT_TO_RECEIVE_YOUR_CHALLENGE_FOR_A_DUEL;
|
||||
@ -9310,6 +9311,11 @@ public final class L2PcInstance extends L2Playable
|
||||
return _isInDuel;
|
||||
}
|
||||
|
||||
public void setStartingDuel()
|
||||
{
|
||||
_startingDuel = true;
|
||||
}
|
||||
|
||||
public int getDuelId()
|
||||
{
|
||||
return _duelId;
|
||||
@ -9348,6 +9354,7 @@ public final class L2PcInstance extends L2Playable
|
||||
_duelState = Duel.DUELSTATE_NODUEL;
|
||||
_duelId = 0;
|
||||
}
|
||||
_startingDuel = false;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -9379,7 +9386,7 @@ public final class L2PcInstance extends L2Playable
|
||||
_noDuelReason = SystemMessageId.C1_CANNOT_DUEL_BECAUSE_C1_S_HP_OR_MP_IS_BELOW_50;
|
||||
return false;
|
||||
}
|
||||
if (_isInDuel)
|
||||
if (_isInDuel || _startingDuel)
|
||||
{
|
||||
_noDuelReason = SystemMessageId.C1_CANNOT_DUEL_BECAUSE_C1_IS_ALREADY_ENGAGED_IN_A_DUEL;
|
||||
return false;
|
||||
@ -12003,7 +12010,7 @@ public final class L2PcInstance extends L2Playable
|
||||
sendPacket(SystemMessageId.YOU_CANNOT_USE_MY_TELEPORTS_WHILE_PARTICIPATING_A_LARGE_SCALE_BATTLE_SUCH_AS_A_CASTLE_SIEGE_FORTRESS_SIEGE_OR_CLAN_HALL_SIEGE);
|
||||
return false;
|
||||
}
|
||||
else if (_isInDuel)
|
||||
else if (_isInDuel || _startingDuel)
|
||||
{
|
||||
sendPacket(SystemMessageId.YOU_CANNOT_USE_MY_TELEPORTS_DURING_A_DUEL);
|
||||
return false;
|
||||
|
@ -84,6 +84,23 @@ public class Duel
|
||||
_playerB = playerB;
|
||||
_partyDuel = partyDuel == 1;
|
||||
|
||||
if (_partyDuel)
|
||||
{
|
||||
for (L2PcInstance member : _playerA.getParty().getMembers())
|
||||
{
|
||||
member.setStartingDuel();
|
||||
}
|
||||
for (L2PcInstance member : _playerB.getParty().getMembers())
|
||||
{
|
||||
member.setStartingDuel();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
_playerA.setStartingDuel();
|
||||
_playerB.setStartingDuel();
|
||||
}
|
||||
|
||||
_duelEndTime = Calendar.getInstance();
|
||||
_duelEndTime.add(Calendar.SECOND, _partyDuel ? PARTY_DUEL_DURATION : PLAYER_DUEL_DURATION);
|
||||
|
||||
|
@ -486,6 +486,7 @@ public final class L2PcInstance extends L2Playable
|
||||
|
||||
/** Duel */
|
||||
private boolean _isInDuel = false;
|
||||
private boolean _startingDuel = false;
|
||||
private int _duelState = Duel.DUELSTATE_NODUEL;
|
||||
private int _duelId = 0;
|
||||
private SystemMessageId _noDuelReason = SystemMessageId.THERE_IS_NO_OPPONENT_TO_RECEIVE_YOUR_CHALLENGE_FOR_A_DUEL;
|
||||
@ -9312,6 +9313,11 @@ public final class L2PcInstance extends L2Playable
|
||||
return _isInDuel;
|
||||
}
|
||||
|
||||
public void setStartingDuel()
|
||||
{
|
||||
_startingDuel = true;
|
||||
}
|
||||
|
||||
public int getDuelId()
|
||||
{
|
||||
return _duelId;
|
||||
@ -9350,6 +9356,7 @@ public final class L2PcInstance extends L2Playable
|
||||
_duelState = Duel.DUELSTATE_NODUEL;
|
||||
_duelId = 0;
|
||||
}
|
||||
_startingDuel = false;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -9381,7 +9388,7 @@ public final class L2PcInstance extends L2Playable
|
||||
_noDuelReason = SystemMessageId.C1_CANNOT_DUEL_BECAUSE_C1_S_HP_OR_MP_IS_BELOW_50;
|
||||
return false;
|
||||
}
|
||||
if (_isInDuel)
|
||||
if (_isInDuel || _startingDuel)
|
||||
{
|
||||
_noDuelReason = SystemMessageId.C1_CANNOT_DUEL_BECAUSE_C1_IS_ALREADY_ENGAGED_IN_A_DUEL;
|
||||
return false;
|
||||
@ -12005,7 +12012,7 @@ public final class L2PcInstance extends L2Playable
|
||||
sendPacket(SystemMessageId.YOU_CANNOT_USE_MY_TELEPORTS_WHILE_PARTICIPATING_A_LARGE_SCALE_BATTLE_SUCH_AS_A_CASTLE_SIEGE_FORTRESS_SIEGE_OR_CLAN_HALL_SIEGE);
|
||||
return false;
|
||||
}
|
||||
else if (_isInDuel)
|
||||
else if (_isInDuel || _startingDuel)
|
||||
{
|
||||
sendPacket(SystemMessageId.YOU_CANNOT_USE_MY_TELEPORTS_DURING_A_DUEL);
|
||||
return false;
|
||||
|
@ -84,6 +84,23 @@ public class Duel
|
||||
_playerB = playerB;
|
||||
_partyDuel = partyDuel == 1;
|
||||
|
||||
if (_partyDuel)
|
||||
{
|
||||
for (L2PcInstance member : _playerA.getParty().getMembers())
|
||||
{
|
||||
member.setStartingDuel();
|
||||
}
|
||||
for (L2PcInstance member : _playerB.getParty().getMembers())
|
||||
{
|
||||
member.setStartingDuel();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
_playerA.setStartingDuel();
|
||||
_playerB.setStartingDuel();
|
||||
}
|
||||
|
||||
_duelEndTime = Calendar.getInstance();
|
||||
_duelEndTime.add(Calendar.SECOND, _partyDuel ? PARTY_DUEL_DURATION : PLAYER_DUEL_DURATION);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user