Перейти к содержанию
Авторизация  
P1ckw1ck

Телепорт в город при смене карты.

Рекомендуемые сообщения

Добрый день есть типо эвента смена карт каждые 30 минут. по их окончанию всех телепортирует на свою базу, в том числе и офлайн трейдеров. поскажите как добавить их в исключение. что-бы их не телепортировало пока они на офф трейде. 

с меня пасибка. Вот сам код.

		if (Config.FACTION_TELEPORT_ON_VOTE)
		{
			for (L2PcInstance player : L2World.getInstance().getAllPlayers().values()) 
			{
				player.setVotedForMap(false);
				if (!player.isInSiege() && !player.isInsideZone(L2Character.ZONE_TOWN) && !player.isInsideZone(L2Character.ZONE_JAIL)
						&& !player.isInOlympiadMode() && !player.isInsideZone(L2Character.ZONE_CASTLE) && !player.isInsideZone(L2Character.ZONE_CLANHALL)) {
					int realLoc[] = new int[5];
					switch (player.getFactionId())
					{
						case 1:
							realLoc = Config.FACTION_TEAM1_BASE;
							player.teleToLocation(realLoc[0] + Rnd.get(realLoc[3], realLoc[4]), realLoc[1] + Rnd.get(realLoc[3], realLoc[4]), realLoc[2], false);
							break;
						case 2:
							realLoc = Config.FACTION_TEAM2_BASE;
							player.teleToLocation(realLoc[0] + Rnd.get(realLoc[3], realLoc[4]), realLoc[1] + Rnd.get(realLoc[3], realLoc[4]), realLoc[2], false);
							break;
						default:
							realLoc = Config.FACTION_NEWBIE_BASE;
							player.teleToLocation(realLoc[0] + Rnd.get(realLoc[3], realLoc[4]), realLoc[1] + Rnd.get(realLoc[3], realLoc[4]), realLoc[2], false);
							break;
					}
				}
			}
		}

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

if (player.isOfflineTrade())

{

      continue;

}

 

вот примерно такую проверку нужно вставить в метод телепорта игроков в город

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

if (player.isOfflineTrade())

{

      continue;

}

 

вот примерно такую проверку нужно вставить в метод телепорта игроков в город

а если изменить чутка проверку player.setVotedForMap(false);

 

добавив 2 зоны? пеасе и трейд?? что то в этом роде 

player.setVotedForMap(false);
				
if (!player.isInSiege() && !player.isInsideZone(L2Character.ZONE_TOWN) && !player.isInsideZone(L2Character.ZONE_JAIL)
						
&& !player.isInOlympiadMode() && !player.isInsideZone(L2Character.ZONE_CASTLE) && !player.isInsideZone(L2Character.ZONE_CLANHALL)
						
&& !player.isInsideZone(L2Character.ZONE_TRADE) && !player.isInsideZone(L2Character.ZONE_PEACE)) 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

а если изменить чутка проверку player.setVotedForMap(false);

 

добавив 2 зоны? пеасе и трейд?? что то в этом роде 

player.setVotedForMap(false);
				
if (!player.isInSiege() && !player.isInsideZone(L2Character.ZONE_TOWN) && !player.isInsideZone(L2Character.ZONE_JAIL)
						
&& !player.isInOlympiadMode() && !player.isInsideZone(L2Character.ZONE_CASTLE) && !player.isInsideZone(L2Character.ZONE_CLANHALL)
						
&& !player.isInsideZone(L2Character.ZONE_TRADE) && !player.isInsideZone(L2Character.ZONE_PEACE)) 

причем тут это ? не понял тебя совсем

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

причем тут это ? не понял тебя совсем

 

Я о том же... Он хочет сделать в методе setVotedForMap проверку)) почему бы и нет))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...