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

Эвент На Ограничения По Шмоту

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

Где то был эвент, так вот там если у тебя шмот такой то, то тебя не телепортирует, а если такой, можешь лететь.

Шмот имено в инвентаре.

Поделитесь если кто меня понял и есть у кого.

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


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

тогда уже сделать что бы статы были как в 0 сете или 4 . ну что то типо такого как делали многие для олика

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


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

Где то был эвент, так вот там если у тебя шмот такой то, то тебя не телепортирует, а если такой, можешь лететь.

Шмот имено в инвентаре.

Поделитесь если кто меня понял и есть у кого.

 

Чисто перебором можно (на базе acis-а)

 

import javolution.util.FastList;
import net.sf.l2j.gameserver.model.L2ItemInstance;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.model.itemcontainer.PcInventory;

import java.util.List;

/**
* Created by Юрий on 12.05.14.
*/
public class ItemManager {
   private static ItemManager instance;
   private static final Object MUTEX = new Object();
   private List<Integer> itemDeniedList = new FastList<>();


   //Double check-lock singleton access
   public static ItemManager getInstance() {
       if (instance == null) {
           synchronized (MUTEX) {
               if (instance == null) {
                   instance = new ItemManager();
               }
           }
       }
       return instance;
   }

   private ItemManager() {
       //Добавляем итемы:
       itemDeniedList.add(57); //Adena
       itemDeniedList.add(4448); //Краски
   }

   @SuppressWarnings("SynchronizationOnLocalVariableOrMethodParameter")
   public boolean isPlayerHasDeniedItem(L2PcInstance pcInstance) {
       PcInventory inventory = pcInstance.getInventory();
       L2ItemInstance[] items = inventory.getItems();
       synchronized (inventory) {
           for (L2ItemInstance l2ItemInstance : items) {
               if (itemDeniedList.contains(l2ItemInstance.getItemId()))
                   return true;
           }
       }
       return false;
   }


}

 

И вызов:

 

boolean canPlayerParticipate = !ItemManager.getInstance().isPlayerHasDeniedItem(player);

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


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

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

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

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

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

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

Войти

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

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

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

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

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