L2j_Mobius камни увеличения шанса заточки.

ЕгорСПБ

Знаменитый
Местный
Старожил I степени
Сообщения
216
Розыгрыши
0
Решения
2
Репутация
10
Реакции
40
Баллы
1 298
Хроники
  1. Master Class
Исходники
Присутствуют
Сборка
L2J_Mobius_12.3_Superion
Здравствуйте .
Столкнулся вот с такой проблемой

Посмотреть вложение bandicam 2025-12-02 03-20-02-133.mp4
Есть 3 файла в которых есть
Код:
BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_AM
1.
Код:
package org.l2jmobius.gameserver.model.item.enchant;

import java.util.EnumSet;
import java.util.Set;
import java.util.logging.Logger;

import org.l2jmobius.gameserver.data.xml.ItemData;
import org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.item.ItemTemplate;
import org.l2jmobius.gameserver.model.item.instance.Item;
import org.l2jmobius.gameserver.model.item.type.CrystalType;
import org.l2jmobius.gameserver.model.item.type.EtcItemType;

/**
 * @author UnAfraid
 */
public abstract class AbstractEnchantItem
{
    protected static final Logger LOGGER = Logger.getLogger(AbstractEnchantItem.class.getName());
    
    private static final Set<EtcItemType> ENCHANT_TYPES = EnumSet.noneOf(EtcItemType.class);
    static
    {
        ENCHANT_TYPES.add(EtcItemType.ENCHT_ATTR_ANCIENT_CRYSTAL_ENCHANT_AM);
        ENCHANT_TYPES.add(EtcItemType.ENCHT_ATTR_ANCIENT_CRYSTAL_ENCHANT_WP);
        ENCHANT_TYPES.add(EtcItemType.BLESS_ENCHT_AM);
        ENCHANT_TYPES.add(EtcItemType.BLESS_ENCHT_AM_DOWN);
        ENCHANT_TYPES.add(EtcItemType.BLESS_ENCHT_WP);
        ENCHANT_TYPES.add(EtcItemType.ENCHT_AM);
        ENCHANT_TYPES.add(EtcItemType.ENCHT_WP);
        ENCHANT_TYPES.add(EtcItemType.ENCHT_WP_DOWN);
        ENCHANT_TYPES.add(EtcItemType.ENCHT_AM_DOWN);
        ENCHANT_TYPES.add(EtcItemType.GIANT_ENCHT_AM);
        ENCHANT_TYPES.add(EtcItemType.GIANT_ENCHT_WP);
        ENCHANT_TYPES.add(EtcItemType.ENCHT_ATTR_INC_PROP_ENCHT_AM);
        ENCHANT_TYPES.add(EtcItemType.ENCHT_ATTR_INC_PROP_ENCHT_WP);
        ENCHANT_TYPES.add(EtcItemType.GIANT_ENCHT_ATTR_INC_PROP_ENCHT_AM);
        ENCHANT_TYPES.add(EtcItemType.GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP);
        ENCHANT_TYPES.add(EtcItemType.BLESSED_ENCHT_ATTR_INC_PROP_ENCHT_AM);
        ENCHANT_TYPES.add(EtcItemType.BLESSED_ENCHT_ATTR_INC_PROP_ENCHT_WP);
        ENCHANT_TYPES.add(EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_AM);
        ENCHANT_TYPES.add(EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP);
    }
    
    private final int _id;
    private final CrystalType _grade;
    private final int _minEnchantLevel;
    private final int _maxEnchantLevel;
    private final int _safeEnchantLevel;
    private final int _randomEnchantMin;
    private final int _randomEnchantMax;
    private final int _randomEnchantChance;
    private final double _bonusRate;
    
    public AbstractEnchantItem(StatSet set)
    {
        _id = set.getInt("id");
        if (getItem() == null)
        {
            throw new NullPointerException();
        }
        else if (!ENCHANT_TYPES.contains(getItem().getItemType()))
        {
            throw new IllegalAccessError();
        }
        _grade = set.getEnum("targetGrade", CrystalType.class, CrystalType.NONE);
        _minEnchantLevel = set.getInt("minEnchant", 0);
        _maxEnchantLevel = set.getInt("maxEnchant", 127);
        _safeEnchantLevel = set.getInt("safeEnchant", 0);
        _randomEnchantMin = set.getInt("randomEnchantMin", 1);
        _randomEnchantMax = set.getInt("randomEnchantMax", _randomEnchantMin);
        _randomEnchantChance = set.getInt("randomEnchantChance", 50);
        _bonusRate = set.getDouble("bonusRate", 0);
    }
    
    /**
     * @return id of current item
     */
    public int getId()
    {
        return _id;
    }
    
    /**
     * @return bonus chance that would be added
     */
    public double getBonusRate()
    {
        return _bonusRate;
    }
    
    /**
     * @return {@link ItemTemplate} current item/scroll
     */
    public ItemTemplate getItem()
    {
        return ItemData.getInstance().getTemplate(_id);
    }
    
    /**
     * @return grade of the item/scroll.
     */
    public CrystalType getGrade()
    {
        return _grade;
    }
    
    /**
     * @return {@code true} if scroll is for weapon, {@code false} for armor
     */
    public abstract boolean isWeapon();
    
    /**
     * @return the minimum enchant level that this scroll/item can be used with
     */
    public int getMinEnchantLevel()
    {
        return _minEnchantLevel;
    }
    
    /**
     * @return the maximum enchant level that this scroll/item can be used with
     */
    public int getMaxEnchantLevel()
    {
        return _maxEnchantLevel;
    }
    
    /**
     * @return the safe enchant level of this scroll/item
     */
    public int getSafeEnchant()
    {
        return _safeEnchantLevel;
    }
    
    /**
     * @return the minimum random enchant level of this scroll/item
     */
    public int getRandomEnchantMin()
    {
        return _randomEnchantMin;
    }
    
    /**
     * @return the maximum random enchant level of this scroll/item
     */
    public int getRandomEnchantMax()
    {
        return _randomEnchantMax;
    }
    
    /**
     * @return the chance to get the maximum random enchant
     */
    public int getRandomEnchantChance()
    {
        return _randomEnchantChance;
    }
    
    /**
     * @param itemToEnchant the item to be enchanted
     * @param supportItem
     * @return {@code true} if this support item can be used with the item to be enchanted, {@code false} otherwise
     */
    public boolean isValid(Item itemToEnchant, EnchantSupportItem supportItem)
    {
        if (itemToEnchant == null)
        {
            return false;
        }
        else if (!itemToEnchant.isEnchantable() || (!(itemToEnchant.getTemplate().getEnchantLimit() == 0) && (itemToEnchant.getEnchantLevel() == itemToEnchant.getTemplate().getEnchantLimit())))
        {
            return false;
        }
        else if (!isValidItemType(itemToEnchant.getTemplate().getType2()))
        {
            return false;
        }
        else if (((_minEnchantLevel != 0) && (itemToEnchant.getEnchantLevel() < _minEnchantLevel)) || ((_maxEnchantLevel != 0) && (itemToEnchant.getEnchantLevel() >= _maxEnchantLevel)))
        {
            return false;
        }
        else if (_grade != itemToEnchant.getTemplate().getCrystalTypePlus())
        {
            return false;
        }
        return true;
    }
    
    /**
     * @param type2
     * @return {@code true} if current type2 is valid to be enchanted, {@code false} otherwise
     */
    private boolean isValidItemType(int type2)
    {
        if (type2 == ItemTemplate.TYPE2_WEAPON)
        {
            return isWeapon();
        }
        else if ((type2 == ItemTemplate.TYPE2_SHIELD_ARMOR) || (type2 == ItemTemplate.TYPE2_ACCESSORY))
        {
            return !isWeapon();
        }
        return false;
    }
}
2.
Код:
package org.l2jmobius.gameserver.model.item.enchant;

import java.util.Collection;
import java.util.HashMap;
import java.util.Map;

import org.l2jmobius.commons.util.Rnd;
import org.l2jmobius.gameserver.data.xml.EnchantItemData;
import org.l2jmobius.gameserver.data.xml.EnchantItemGroupsData;
import org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.actor.Player;
import org.l2jmobius.gameserver.model.item.instance.Item;
import org.l2jmobius.gameserver.model.item.type.CrystalType;
import org.l2jmobius.gameserver.model.item.type.EtcItemType;
import org.l2jmobius.gameserver.model.item.type.ItemType;
import org.l2jmobius.gameserver.model.stats.Stat;

/**
 * @author UnAfraid, Mobius
 */
public class EnchantScroll extends AbstractEnchantItem
{
    private final boolean _isWeapon;
    private final boolean _isBlessed;
    private final boolean _isBlessedDown;
    private final boolean _isSafe;
    private final boolean _isGiant;
    private final int _scrollGroupId;
    private final Map<Integer, Integer> _items = new HashMap<>();
    
    public EnchantScroll(StatSet set)
    {
        super(set);
        _scrollGroupId = set.getInt("scrollGroupId", 0);
        
        final ItemType type = getItem().getItemType();
        _isWeapon = (type == EtcItemType.ENCHT_ATTR_ANCIENT_CRYSTAL_ENCHANT_WP) || (type == EtcItemType.BLESS_ENCHT_WP) || (type == EtcItemType.ENCHT_WP) || (type == EtcItemType.GIANT_ENCHT_WP);
        _isBlessed = (type == EtcItemType.BLESS_ENCHT_AM) || (type == EtcItemType.BLESS_ENCHT_WP) || (type == EtcItemType.BLESSED_ENCHT_ATTR_INC_PROP_ENCHT_WP) || (type == EtcItemType.BLESSED_ENCHT_ATTR_INC_PROP_ENCHT_AM) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_AM) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP);
        _isBlessedDown = (type == EtcItemType.BLESS_ENCHT_AM_DOWN);
        _isSafe = (type == EtcItemType.ENCHT_ATTR_ANCIENT_CRYSTAL_ENCHANT_AM) || (type == EtcItemType.ENCHT_ATTR_ANCIENT_CRYSTAL_ENCHANT_WP) || (type == EtcItemType.ENCHT_ATTR_CRYSTAL_ENCHANT_AM) || (type == EtcItemType.ENCHT_ATTR_CRYSTAL_ENCHANT_WP);
        _isGiant = (type == EtcItemType.GIANT_ENCHT_AM) || (type == EtcItemType.GIANT_ENCHT_WP || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_AM) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP));
    }
    
    @Override
    public boolean isWeapon()
    {
        return _isWeapon;
    }
    
    /**
     * @return {@code true} for blessed scrolls (enchanted item will remain on failure and enchant value will reset to 0), {@code false} otherwise
     */
    public boolean isBlessed()
    {
        return _isBlessed;
    }
    
    /**
     * @return {@code true} for blessed scrolls (enchanted item will remain on failure and enchant value will go down by 1), {@code false} otherwise
     */
    public boolean isBlessedDown()
    {
        return _isBlessedDown;
    }
    
    /**
     * @return {@code true} for safe-enchant scrolls (enchant level will remain on failure), {@code false} otherwise
     */
    public boolean isSafe()
    {
        return _isSafe;
    }
    
    public boolean isGiant()
    {
        return _isGiant;
    }
    
    /**
     * Enforces current scroll to use only those items as possible items to enchant
     * @param itemId
     * @param scrollGroupId
     */
    public void addItem(int itemId, int scrollGroupId)
    {
        _items.put(itemId, scrollGroupId > -1 ? scrollGroupId : _scrollGroupId);
    }
    
    public Collection<Integer> getItems()
    {
        return _items.keySet();
    }
    
    /**
     * @param itemToEnchant the item to be enchanted
     * @param supportItem the support item used when enchanting (can be null)
     * @return {@code true} if this scroll can be used with the specified support item and the item to be enchanted, {@code false} otherwise
     */
    @Override
    public boolean isValid(Item itemToEnchant, EnchantSupportItem supportItem)
    {
        if (!_items.isEmpty() && !_items.containsKey(itemToEnchant.getId()))
        {
            return false;
        }
        else if ((supportItem != null))
        {
            if ((isBlessed() && !supportItem.isBlessed()) || (!isBlessed() && supportItem.isBlessed()))
            {
                return false;
            }
            else if ((isGiant() && !supportItem.isGiant()) || (!isGiant() && supportItem.isGiant()))
            {
                return false;
            }
            else if (!supportItem.isValid(itemToEnchant, supportItem))
            {
                return false;
            }
            else if (supportItem.isWeapon() != isWeapon())
            {
                return false;
            }
        }
        if (_items.isEmpty())
        {
            for (EnchantScroll scroll : EnchantItemData.getInstance().getScrolls())
            {
                if (scroll.getId() == getId())
                {
                    continue;
                }
                final Collection<Integer> scrollItems = scroll.getItems();
                if (!scrollItems.isEmpty() && scrollItems.contains(itemToEnchant.getId()))
                {
                    return false;
                }
            }
        }
        return super.isValid(itemToEnchant, supportItem);
    }
    
    /**
     * @param player
     * @param enchantItem
     * @return the chance of current scroll's group.
     */
    public double getChance(Player player, Item enchantItem)
    {
        if (enchantItem == null)
        {
            return -1;
        }
        
        final int scrollGroupId = _items.getOrDefault(enchantItem.getId(), _scrollGroupId);
        if (EnchantItemGroupsData.getInstance().getScrollGroup(scrollGroupId) == null)
        {
            LOGGER.warning(getClass().getSimpleName() + ": Unexistent enchant scroll group specified for enchant scroll: " + getId());
            return -1;
        }
        
        final EnchantItemGroup group = EnchantItemGroupsData.getInstance().getItemGroup(enchantItem.getTemplate(), scrollGroupId);
        if (group == null)
        {
            LOGGER.warning(getClass().getSimpleName() + ": Couldn't find enchant item group for scroll: " + getId() + " requested by: " + player);
            return -1;
        }
        
        if ((getSafeEnchant() > 0) && (enchantItem.getEnchantLevel() < getSafeEnchant()))
        {
            return 100;
        }
        
        return group.getChance(enchantItem.getEnchantLevel());
    }
    
    /**
     * @param player
     * @param enchantItem
     * @param supportItem
     * @return the total chance for success rate of this scroll
     */
    public EnchantResultType calculateSuccess(Player player, Item enchantItem, EnchantSupportItem supportItem)
    {
        if (!isValid(enchantItem, supportItem))
        {
            return EnchantResultType.ERROR;
        }
        
        final double chance = getChance(player, enchantItem);
        if (chance == -1)
        {
            return EnchantResultType.ERROR;
        }
        
        final int crystalLevel = enchantItem.getTemplate().getCrystalType().getLevel();
        final double enchantRateStat = (crystalLevel > CrystalType.NONE.getLevel()) && (crystalLevel < CrystalType.EVENT.getLevel()) ? player.getStat().getValue(Stat.ENCHANT_RATE) : 0;
        final double bonusRate = getBonusRate();
        final double supportBonusRate = (supportItem != null) ? supportItem.getBonusRate() : 0;
        final double finalChance = Math.min(chance + bonusRate + supportBonusRate + enchantRateStat, 100);
        final double random = 100 * Rnd.nextDouble();
        final boolean success = (random < finalChance) || player.tryLuck();
        return success ? EnchantResultType.SUCCESS : EnchantResultType.FAILURE;
    }
}
3.
Код:
package org.l2jmobius.gameserver.model.item.enchant;

import org.l2jmobius.gameserver.model.StatSet;
import org.l2jmobius.gameserver.model.item.type.EtcItemType;
import org.l2jmobius.gameserver.model.item.type.ItemType;

/**
 * @author UnAfraid
 */
public class EnchantSupportItem extends AbstractEnchantItem
{
    private final boolean _isWeapon;
    private final boolean _isBlessed;
    private final boolean _isDown;
    private final boolean _isGiant;
    private final ItemType type;
    
    public EnchantSupportItem(StatSet set)
    {
        super(set);
        type = getItem().getItemType();
        _isWeapon = (type == EtcItemType.ENCHT_ATTR_INC_PROP_ENCHT_WP) || (type == EtcItemType.ENCHT_WP_DOWN) || (type == EtcItemType.BLESSED_ENCHT_ATTR_INC_PROP_ENCHT_WP) || (type == EtcItemType.GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP);
        _isBlessed = (type == EtcItemType.BLESSED_ENCHT_ATTR_INC_PROP_ENCHT_AM) || (type == EtcItemType.BLESSED_ENCHT_ATTR_INC_PROP_ENCHT_WP) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_AM) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP);
        _isDown = (type == EtcItemType.ENCHT_AM_DOWN) || (type == EtcItemType.ENCHT_WP_DOWN);
        _isGiant = (type == EtcItemType.GIANT_ENCHT_ATTR_INC_PROP_ENCHT_AM) || (type == EtcItemType.GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_AM) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP);
    }
    
    @Override
    public boolean isWeapon()
    {
        return _isWeapon;
    }
    
    public boolean isBlessed()
    {
        return _isBlessed;
    }
    
    public boolean isDown()
    {
        return _isDown;
    }
    
    public boolean isGiant()
    {
        return _isGiant;
    }
}
Помогите Пожалуйста , самому не разобраться.
 
Камни шанса работают только с обычными заточками (на офе тоже так), с заточками гигантов и блесс нет
 
Камни шанса работают только с обычными заточками (на офе тоже так), с заточками гигантов и блесс нет
Подтверждаю только что проверил, работает с простыми точками.
 

Вложения

  • Shot00000.webp
    Shot00000.webp
    202,9 КБ · Просмотры: 15
  • Shot00002.webp
    Shot00002.webp
    186 КБ · Просмотры: 15
Камни шанса работают только с обычными заточками (на офе тоже так), с заточками гигантов и блесс нет
Вы ошибаетесь , вот пример другой.
Посмотреть вложение bandicam 2025-12-03 01-54-03-849.mp4
Код:
<set name="etcitem_type" val="BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP" />
Вот этот параметр не хочет работать , а именно BLESSED.
 
Вы ошибаетесь , вот пример другой.
Посмотреть вложение 90398
Код:
<set name="etcitem_type" val="BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP" />
Вот этот параметр не хочет работать , а именно BLESSED.
Ты используешь для точки Giant's Enchant Scroll а к нему нельзя добавлять камни, никакие он и так точит на +3 смотри вложения у меня с +4 на +7 точнул. С простым скроллом или блессед камень можно добавлять. В любом случае если тебе так хочется добавлять камни при точке Giant's Enchant скроллами то условия в самой точке надо смотреть а не в камне. Посмотри какие условия на простой точке прописаны или какие на блессед, добавь тоже самое в Giant's Enchant скролл.
 

Вложения

  • Giant Scroll.webp
    Giant Scroll.webp
    139 КБ · Просмотры: 11
  • Blessed Scroll.webp
    Blessed Scroll.webp
    162,7 КБ · Просмотры: 8
  • Blessed Stone.webp
    Blessed Stone.webp
    152,4 КБ · Просмотры: 8
  • Success.webp
    Success.webp
    130,8 КБ · Просмотры: 12
Ты используешь для точки Giant's Enchant Scroll а к нему нельзя добавлять камни, никакие он и так точит на +3 смотри вложения у меня с +4 на +7 точнул. С простым скроллом или блессед камень можно добавлять. В любом случае если тебе так хочется добавлять камни при точке Giant's Enchant скроллами то условия в самой точке надо смотреть а не в камне. Посмотри какие условия на простой точке прописаны или какие на блессед, добавь тоже самое в Giant's Enchant скролл.
Там даже в описании к камню написано) изображение_2025-12-03_043811546.webp
Он увеличивает шанс модификации со свитком Гигантов.
Я даже не поленился нашел видео с офф main Lineage 2
изображение_2025-12-03_045952544.webp
 
Последнее редактирование:
Там даже в описании к камню написано)Посмотреть вложение 90405
Он увеличивает шанс модификации со свитком Гигантов.
Я даже не поленился нашел видео с офф main Lineage 2
Посмотреть вложение 90406
Скорее всего где то тут C:\Eclipse\workspace\L2J_Mobius\L2J_Mobius_12.3_Superion\java\org\l2jmobius\gameserver\model\item\enchant\EnchantScroll.java

Код:
public EnchantScroll(StatSet set)
    {
        super(set);
        _scrollGroupId = set.getInt("scrollGroupId", 0);
       
        final ItemType type = getItem().getItemType();
        _isWeapon = (type == EtcItemType.ENCHT_ATTR_ANCIENT_CRYSTAL_ENCHANT_WP) || (type == EtcItemType.BLESS_ENCHT_WP) || (type == EtcItemType.ENCHT_WP) || (type == EtcItemType.GIANT_ENCHT_WP);
        _isBlessed = (type == EtcItemType.BLESS_ENCHT_AM) || (type == EtcItemType.BLESS_ENCHT_WP) || (type == EtcItemType.BLESSED_ENCHT_ATTR_INC_PROP_ENCHT_WP) || (type == EtcItemType.BLESSED_ENCHT_ATTR_INC_PROP_ENCHT_AM) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_AM) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP);
        _isBlessedDown = (type == EtcItemType.BLESS_ENCHT_AM_DOWN);
        _isSafe = (type == EtcItemType.ENCHT_ATTR_ANCIENT_CRYSTAL_ENCHANT_AM) || (type == EtcItemType.ENCHT_ATTR_ANCIENT_CRYSTAL_ENCHANT_WP) || (type == EtcItemType.ENCHT_ATTR_CRYSTAL_ENCHANT_AM) || (type == EtcItemType.ENCHT_ATTR_CRYSTAL_ENCHANT_WP);
        _isGiant = (type == EtcItemType.GIANT_ENCHT_AM) || (type == EtcItemType.GIANT_ENCHT_WP);

Добавить к

Код:
_isGiant = (type == EtcItemType.GIANT_ENCHT_AM) || (type == EtcItemType.GIANT_ENCHT_WP)

Это

Код:
|| (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_AM) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP)


Как то так

Код:
_isGiant = (type == EtcItemType.GIANT_ENCHT_AM) || (type == EtcItemType.GIANT_ENCHT_WP) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_AM) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP);

Не проверял возможно еще где то подшаманить надо.
 
Скорее всего где то тут C:\Eclipse\workspace\L2J_Mobius\L2J_Mobius_12.3_Superion\java\org\l2jmobius\gameserver\model\item\enchant\EnchantScroll.java

Код:
public EnchantScroll(StatSet set)
    {
        super(set);
        _scrollGroupId = set.getInt("scrollGroupId", 0);
      
        final ItemType type = getItem().getItemType();
        _isWeapon = (type == EtcItemType.ENCHT_ATTR_ANCIENT_CRYSTAL_ENCHANT_WP) || (type == EtcItemType.BLESS_ENCHT_WP) || (type == EtcItemType.ENCHT_WP) || (type == EtcItemType.GIANT_ENCHT_WP);
        _isBlessed = (type == EtcItemType.BLESS_ENCHT_AM) || (type == EtcItemType.BLESS_ENCHT_WP) || (type == EtcItemType.BLESSED_ENCHT_ATTR_INC_PROP_ENCHT_WP) || (type == EtcItemType.BLESSED_ENCHT_ATTR_INC_PROP_ENCHT_AM) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_AM) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP);
        _isBlessedDown = (type == EtcItemType.BLESS_ENCHT_AM_DOWN);
        _isSafe = (type == EtcItemType.ENCHT_ATTR_ANCIENT_CRYSTAL_ENCHANT_AM) || (type == EtcItemType.ENCHT_ATTR_ANCIENT_CRYSTAL_ENCHANT_WP) || (type == EtcItemType.ENCHT_ATTR_CRYSTAL_ENCHANT_AM) || (type == EtcItemType.ENCHT_ATTR_CRYSTAL_ENCHANT_WP);
        _isGiant = (type == EtcItemType.GIANT_ENCHT_AM) || (type == EtcItemType.GIANT_ENCHT_WP);

Добавить к

Код:
_isGiant = (type == EtcItemType.GIANT_ENCHT_AM) || (type == EtcItemType.GIANT_ENCHT_WP)

Это

Код:
|| (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_AM) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP)


Как то так

Код:
_isGiant = (type == EtcItemType.GIANT_ENCHT_AM) || (type == EtcItemType.GIANT_ENCHT_WP) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_AM) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP);

Не проверял возможно еще где то подшаманить надо.
Всё равно не работает(
 
Всё равно не работает(
А так?

Код:
_isGiant = (type == EtcItemType.GIANT_ENCHT_AM) || (type == EtcItemType.GIANT_ENCHT_WP) || (type == EtcItemType.GIANT_ENCHT_ATTR_INC_PROP_ENCHT_AM) || (type == EtcItemType.GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_AM) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP);
 
А так?

Код:
_isGiant = (type == EtcItemType.GIANT_ENCHT_AM) || (type == EtcItemType.GIANT_ENCHT_WP) || (type == EtcItemType.GIANT_ENCHT_ATTR_INC_PROP_ENCHT_AM) || (type == EtcItemType.GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_AM) || (type == EtcItemType.BLESSED_GIANT_ENCHT_ATTR_INC_PROP_ENCHT_WP);
Я же все делаю правильно?
Изменяю.
Компилирую.
Скидываю в готовую сборку файл GameServer.jar ?
Все равно пишет (Нельзя улучшить в этих условиях)
 
Я же все делаю правильно?
Изменяю.
Компилирую.
Скидываю в готовую сборку файл GameServer.jar ?
Все равно пишет (Нельзя улучшить в этих условиях)
Да вроде да. Я обычно скомпиленное запускаю.
 
Назад
Сверху Снизу