05-03-2017, 02:24 AM
Сделал систему, проверки все работают, но если все проходит, то телепортирует только лидера группы, без членов группы.
[SRC="java"]if(command.equalsIgnoreCase("teleport"))
{
if (player.getParty() == null) {
player.sendMessage("Вам нужна группа для охоты на титанов.");
player.sendActionFailed();
return;
}
if (player.getParty().getPartyLeader() == player) {
for (Player partyMember : player.getParty().getPartyMembers()) {
if(player.isHero() || partyMember.isHero())
{
player.sendMessage("Лидерам фракции нельзя находится на землях титанов.");
player.sendActionFailed();
return;
}
if (partyMember.isInRangeZ(player, 2000) && !partyMember.isDead())
{
if (player.getFactionId() == 1) {
partyMember.teleToLocation(Location.findPointToStay(-24776, 253208, -3024, 100, 150, 1));
partyMember.stopMove();
} else if (player.getFactionId() == 2) {
partyMember.teleToLocation(Location.findPointToStay(-4344, 256504, -3128, 100, 150, 1));
}
}
else if(!partyMember.isInRange(player, 2000) || partyMember.isDead())
{
partyMember.sendMessage("Необходимо всем членам группы стоять у путеводителя и быть живыми.");
player.sendActionFailed();
partyMember.sendActionFailed();
return;
}
}
}
else if (player.getParty().getPartyLeader() != player)
{
player.sendMessage("Только лидер группы может призвать на земли титанов.");
player.sendActionFailed();
return;
}
}[/SRC]
Где ошибка?
[SRC="java"]if(command.equalsIgnoreCase("teleport"))
{
if (player.getParty() == null) {
player.sendMessage("Вам нужна группа для охоты на титанов.");
player.sendActionFailed();
return;
}
if (player.getParty().getPartyLeader() == player) {
for (Player partyMember : player.getParty().getPartyMembers()) {
if(player.isHero() || partyMember.isHero())
{
player.sendMessage("Лидерам фракции нельзя находится на землях титанов.");
player.sendActionFailed();
return;
}
if (partyMember.isInRangeZ(player, 2000) && !partyMember.isDead())
{
if (player.getFactionId() == 1) {
partyMember.teleToLocation(Location.findPointToStay(-24776, 253208, -3024, 100, 150, 1));
partyMember.stopMove();
} else if (player.getFactionId() == 2) {
partyMember.teleToLocation(Location.findPointToStay(-4344, 256504, -3128, 100, 150, 1));
}
}
else if(!partyMember.isInRange(player, 2000) || partyMember.isDead())
{
partyMember.sendMessage("Необходимо всем членам группы стоять у путеводителя и быть живыми.");
player.sendActionFailed();
partyMember.sendActionFailed();
return;
}
}
}
else if (player.getParty().getPartyLeader() != player)
{
player.sendMessage("Только лидер группы может призвать на земли титанов.");
player.sendActionFailed();
return;
}
}[/SRC]
Где ошибка?