Page 1 of 1

Help Gracia Final

Posted: Sun Oct 14, 2012 12:49 am
by Annu
If you want to receive support we need this info to help you properly.
» Find Revision
L2J Revision 5133:
L2JDP Revision 8404:


HI,,,before a couple of years i was using Gracial Final server. A friend of mine has implement some custom staf which iam trying to apply them mannualy to the current last revision of Gracia Final. Iam not so good in java so i need some here.

The old code looks like this


net.sf.l2j.gameserver.network.clientpackets.UseItem.java

Code: Select all

  if (item.getItem() instanceof L2Weapon)                {                    // &&                    // ((weaponItem != null && weaponItem != item.getItem()) || (weaponItem ==                    // null)))                                        String crystalType = ((L2Weapon) item.getItem()).getCrystal();                    activeChar.sendMessage("Crystal Type: " + crystalType);                                        String previousEquippedCrystalType = null;                    ExAutoSoulShot atk = null;                                        if (weaponItem != null)                    {                                          ETC..etc..etc 
and

package net.sf.l2j.gameserver.templates.item.L2Weapon.java

Code: Select all

private final String _crystal; // ADDED!....  public L2Weapon(L2WeaponType type, StatsSet set)    {        super(type, set);        _soulShotCount = set.getInteger("soulshots");        _spiritShotCount = set.getInteger("spiritshots");        _pDam = set.getInteger("p_dam");        _rndDam = set.getInteger("rnd_dam");        _critical = set.getInteger("critical");        _hitModifier = set.getDouble("hit_modify");        _avoidModifier = set.getInteger("avoid_modify");        _shieldDef = set.getInteger("shield_def");        _shieldDefRate = set.getDouble("shield_def_rate");        _atkSpeed = set.getInteger("atk_speed");        _atkReuse = set.getInteger("atk_reuse", (type == L2WeaponType.BOW) ? 1500 : (type == L2WeaponType.CROSSBOW) ? 1200 : 0);        _mpConsume = set.getInteger("mp_consume");        _mDam = set.getInteger("m_dam");                _skill = set.getString("skill").split(";");                int sId = set.getInteger("enchant4_skill_id");        int sLv = set.getInteger("enchant4_skill_lvl");        if (sId > 0 && sLv > 0)            _enchant4Skill = SkillTable.getInstance().getInfo(sId, sLv);                sId = set.getInteger("onCast_skill_id");        sLv = set.getInteger("onCast_skill_lvl");        int sCh = set.getInteger("onCast_skill_chance");        if (sId > 0 && sLv > 0 && sCh > 0)        {            L2Skill skill = SkillTable.getInstance().getInfo(sId, sLv);            //skill.attach(new ConditionGameChance(sCh),true);            attachOnCast(skill, sCh);        }                sId = set.getInteger("onCrit_skill_id");        sLv = set.getInteger("onCrit_skill_lvl");        sCh = set.getInteger("onCrit_skill_chance");        if (sId > 0 && sLv > 0 && sCh > 0)        {            L2Skill skill = SkillTable.getInstance().getInfo(sId, sLv);            //skill.attach(new ConditionGameChance(sCh),true);            attachOnCrit(skill, sCh);        }        _changeWeaponId = set.getInteger("change_weaponId");        [b]_crystal = set.getString("crystal_type"); // ADDED![/b]    } ... // ADDED!    /**     * Returns the Crystal type of the weapon (e.g. s,a,b,c,none)     * @return     */        public String getCrystal() {            return _crystal;        }        // END ADDED!  
As i can understand with this code is that he was catching up the crystal_type of the weapon when a player was equipped with a weapon . The point is that those info was saved in database. In the last revision of gracia final those info have been removed from database and placed in .htm files.

Applying this code in the last revision of Gracia final is not working. Can any1 help implement this?

Iam trying to make soulshots to work without been placed in the inventory of character(Automatic). Thanks in advance.