Initial changes.
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>L2J_Mobius_6.0_Fafurion</name>
|
||||
<name>L2J_Mobius_7.0_PreludeOfWar</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
|
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE xml>
|
||||
<project name="L2J_Mobius_6.0_Fafurion" default="cleanup" basedir=".">
|
||||
<project name="L2J_Mobius_7.0_PreludeOfWar" default="cleanup" basedir=".">
|
||||
<description>
|
||||
This file is part of the L2J Mobius project.
|
||||
|
||||
@@ -131,15 +131,15 @@
|
||||
</target>
|
||||
|
||||
<target name="adding-core" depends="jar" description="Adding the compiled jars to the Zip file.">
|
||||
<zip destfile="${build}/L2J_Mobius_6.0_Fafurion.zip" basedir="${build.dist}" level="9" />
|
||||
<zip destfile="${build}/L2J_Mobius_7.0_PreludeOfWar.zip" basedir="${build.dist}" level="9" />
|
||||
</target>
|
||||
|
||||
<target name="adding-datapack" depends="adding-core" description="Updating the Zip file with datapack content.">
|
||||
<zip destfile="${build}/L2J_Mobius_6.0_Fafurion.zip" basedir="${datapack}" update="true" level="9" />
|
||||
<zip destfile="${build}/L2J_Mobius_7.0_PreludeOfWar.zip" basedir="${datapack}" update="true" level="9" />
|
||||
</target>
|
||||
|
||||
<target name="adding-readme" depends="adding-datapack" description="Adding readme.txt to the Zip file.">
|
||||
<zip destfile="${build}/L2J_Mobius_6.0_Fafurion.zip" basedir="." includes="readme.txt" update="true" level="9" />
|
||||
<zip destfile="${build}/L2J_Mobius_7.0_PreludeOfWar.zip" basedir="." includes="readme.txt" update="true" level="9" />
|
||||
</target>
|
||||
|
||||
<target name="cleanup" depends="adding-readme" description="Cleaning the build folder.">
|
||||
|
@@ -785,11 +785,6 @@ PartyXpCutoffGapPercent = 100;30;0
|
||||
# Default: False
|
||||
DisableTutorial = False
|
||||
|
||||
# Expertise penalty
|
||||
# If disabled, player will not receive penalty for equip higher grade items
|
||||
# Default: True
|
||||
ExpertisePenalty = True
|
||||
|
||||
# Player can in client define his own key mapping and for save it must be stored server side.
|
||||
# Default: True
|
||||
StoreCharUiSettings = True
|
||||
|
@@ -101,8 +101,8 @@ MaximumOnlineUsers = 2000
|
||||
# Numbers of protocol revisions that server allows to connect.
|
||||
# Delimiter is ;
|
||||
# WARNING: <u><b><font color="red">Changing the protocol revision may result in incompatible communication and many errors in game!</font></b></u>
|
||||
# Fafurion: 166
|
||||
AllowedProtocolRevisions = 166
|
||||
# Prelude of War: 228
|
||||
AllowedProtocolRevisions = 228
|
||||
|
||||
# Displays server type next to the server name on character selection.
|
||||
# Notes:
|
||||
|
102
L2J_Mobius_7.0_PreludeOfWar/dist/game/data/TeleportListData.xml
vendored
Normal file
102
L2J_Mobius_7.0_PreludeOfWar/dist/game/data/TeleportListData.xml
vendored
Normal file
@@ -0,0 +1,102 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="xsd/TeleportListData.xsd">
|
||||
<teleport id="3" x="47382" y="111278" z="-2099" price="30000" /> <!-- Partisan's Hideaway -->
|
||||
<teleport id="4" x="5106" y="126916" z="-3659" price="30000" /> <!-- Cruma Marshlands -->
|
||||
<teleport id="5" x="17232" y="114186" z="-3439" price="30000" /> <!-- Cruma Tower -->
|
||||
<teleport id="7" x="15487" y="142871" z="-2701" price="60000" /> <!-- Town of Dion -->
|
||||
<teleport id="8" x="17144" y="170156" z="-3497" price="30000" /> <!-- Floran Village -->
|
||||
<teleport id="10" x="55936" y="164649" z="-2648" price="120000" /> <!-- Tanor Canyon -->
|
||||
<teleport id="17" x="105918" y="109759" z="-3165" price="30000" /> <!-- Hardin's Academy -->
|
||||
<teleport id="18" x="72071" y="116894" z="-3689" price="30000" /> <!-- Dragon Valley -->
|
||||
<teleport id="19" x="129728" y="114758" z="-3804" price="30000" /> <!-- Antharas' Lair -->
|
||||
<teleport id="24" x="47916" y="186857" z="-3485" price="30000" /> <!-- Giran Harbor -->
|
||||
<teleport id="25" x="83551" y="147945" z="-3395" price="60000" /> <!-- Town of Giran -->
|
||||
<teleport id="28" x="85546" y="131328" z="-3667" price="150000" /> <!-- Breka's Stronghold -->
|
||||
<teleport id="31" x="-19353" y="136842" z="-3759" price="30000" /> <!-- Ruins of Despair -->
|
||||
<teleport id="32" x="-41167" y="122789" z="-2914" price="30000" /> <!-- Ruins of Agony -->
|
||||
<teleport id="33" x="-16475" y="208815" z="-3662" price="30000" /> <!-- Wasteland -->
|
||||
<teleport id="34" x="-9965" y="176174" z="-4149" price="30000" /> <!-- Ant Nest -->
|
||||
<teleport id="35" x="-80684" y="149770" z="-3040" price="30000" /> <!-- Gludin Village -->
|
||||
<teleport id="37" x="-14608" y="123920" z="-3128" price="60000" /> <!-- Town of Gludio -->
|
||||
<teleport id="39" x="-89776" y="105344" z="-3581" price="30000" /> <!-- Orc Barracks -->
|
||||
<teleport id="44" x="-93421" y="89616" z="-3219" price="30000" /> <!-- Windy Hill -->
|
||||
<teleport id="49" x="-113443" y="256656" z="-1504" price="30000" /> <!-- Talking Island Village -->
|
||||
<teleport id="58" x="-74850" y="168753" z="-3506" price="30000" /> <!-- Windmill Hill -->
|
||||
<teleport id="68" x="21373" y="51119" z="-3693" price="30000" /> <!-- Elven Forest -->
|
||||
<teleport id="69" x="46976" y="31595" z="-3402" price="90000" /> <!-- Shadow of The Mother Tree -->
|
||||
<teleport id="70" x="44734" y="49210" z="-3056" price="30000" /> <!-- Elven Village -->
|
||||
<teleport id="75" x="11167" y="16012" z="-4584" price="30000" /> <!-- Dark Elf Village -->
|
||||
<teleport id="77" x="-15823" y="30485" z="-3617" price="60000" /> <!-- Bloody Swampland -->
|
||||
<teleport id="79" x="64328" y="26803" z="-3763" price="120000" /> <!-- Sea of Spores -->
|
||||
<teleport id="81" x="85392" y="16232" z="-3673" price="30000" /> <!-- Ivory Tower -->
|
||||
<teleport id="82" x="82958" y="53213" z="-1495" price="60000" /> <!-- Town of Oren -->
|
||||
<teleport id="84" x="87262" y="85483" z="-3079" price="30000" /> <!-- Plains of the Lizardmen -->
|
||||
<teleport id="85" x="87430" y="61449" z="-3666" price="30000" /> <!-- Sel Mahum Training Grounds -->
|
||||
<teleport id="90" x="89820" y="11908" z="-5117" price="120000" /> <!-- Ivory Tower Crater -->
|
||||
<teleport id="92" x="91539" y="-12204" z="-2435" price="30000" /> <!-- Outlaw Forest -->
|
||||
<teleport id="98" x="114639" y="11103" z="-5115" price="120000" /> <!-- Tower of Insolence -->
|
||||
<teleport id="99" x="155310" y="-16339" z="-3315" price="60000" /> <!-- Blazing Swamp -->
|
||||
<teleport id="101" x="184734" y="19735" z="-3171" price="60000" /> <!-- Seal of Shilen -->
|
||||
<teleport id="102" x="174479" y="50931" z="-4369" price="90000" /> <!-- Giant's Cave -->
|
||||
<teleport id="103" x="114681" y="48255" z="-4576" price="90000" /> <!-- Enchanted Valley -->
|
||||
<teleport id="104" x="166550" y="20305" z="-3328" price="60000" /> <!-- The Cemetery -->
|
||||
<teleport id="105" x="142065" y="81300" z="-2995" price="120000" /> <!-- Forest of Mirrors -->
|
||||
<teleport id="106" x="172449" y="90319" z="-1985" price="30000" /> <!-- Anghel Waterfall -->
|
||||
<teleport id="107" x="146798" y="25796" z="-2012" price="60000" /> <!-- Aden -->
|
||||
<teleport id="108" x="117070" y="76936" z="-2696" price="30000" /> <!-- Hunter's Village -->
|
||||
<teleport id="110" x="146439" y="46715" z="-3434" price="30000" /> <!-- Coliseum -->
|
||||
<teleport id="114" x="174462" y="40115" z="-4145" price="30000" /> <!-- Forsaken Plains -->
|
||||
<teleport id="115" x="170832" y="55769" z="-5279" price="60000" /> <!-- Silent Valley -->
|
||||
<teleport id="118" x="183531" y="-14983" z="-2776" price="30000" /> <!-- Fields of Massacre -->
|
||||
<teleport id="122" x="95117" y="171146" z="-3672" price="120000" /> <!-- Field of Silence -->
|
||||
<teleport id="123" x="82192" y="226128" z="-3665" price="120000" /> <!-- Field of Whispers -->
|
||||
<teleport id="124" x="84413" y="234334" z="-3651" price="30000" /> <!-- Garden of Eva -->
|
||||
<teleport id="125" x="115583" y="192261" z="-3483" price="120000" /> <!-- Alligator Island -->
|
||||
<teleport id="126" x="111453" y="219391" z="-3545" price="60000" /> <!-- Heine -->
|
||||
<teleport id="131" x="-44124" y="-113390" z="-240" price="30000" /> <!-- Orc Village -->
|
||||
<teleport id="133" x="16360" y="-114097" z="-226" price="30000" /> <!-- Gainak -->
|
||||
<teleport id="140" x="115357" y="-178212" z="-928" price="30000" /> <!-- Dwarven Village -->
|
||||
<teleport id="143" x="171946" y="-173352" z="3445" price="30000" /> <!-- Mithril Mines -->
|
||||
<teleport id="148" x="111965" y="-154172" z="-1523" price="90000" /> <!-- Plunderous Plains -->
|
||||
<teleport id="149" x="123463" y="-126707" z="-2458" price="30000" /> <!-- Frozen Labyrinth -->
|
||||
<teleport id="150" x="102174" y="-124781" z="-2760" price="30000" /> <!-- Freya's Garden -->
|
||||
<teleport id="151" x="91280" y="-117152" z="-3923" price="30000" /> <!-- Pavel Ruins -->
|
||||
<teleport id="157" x="87130" y="-143514" z="-1291" price="60000" /> <!-- Town of Schuttgart -->
|
||||
<teleport id="181" x="148015" y="-55293" z="-2733" price="60000" /> <!-- Town of Goddard -->
|
||||
<teleport id="184" x="144880" y="-113468" z="-2555" price="30000" /> <!-- Hot Springs -->
|
||||
<teleport id="186" x="169018" y="-116303" z="-2427" price="30000" /> <!-- Forge of the Gods -->
|
||||
<teleport id="189" x="146990" y="-67128" z="-3635" price="30000" /> <!-- Ketra Orc Outpost -->
|
||||
<teleport id="191" x="186699" y="-75915" z="-2821" price="30000" /> <!-- Imperial Tomb -->
|
||||
<teleport id="193" x="165054" y="-47861" z="-3555" price="30000" /> <!-- Wall of Argos -->
|
||||
<teleport id="195" x="125740" y="-40864" z="-3731" price="30000" /> <!-- Varka Silenos Barracks -->
|
||||
<teleport id="201" x="43823" y="-47760" z="-796" price="60000" /> <!-- Town of Rune -->
|
||||
<teleport id="205" x="53516" y="-82831" z="-2695" price="30000" /> <!-- Beast Farm -->
|
||||
<teleport id="207" x="65307" y="-71445" z="-3683" price="30000" /> <!-- Valley of Saints -->
|
||||
<teleport id="208" x="52107" y="-54328" z="-3147" price="30000" /> <!-- Forest of the Dead -->
|
||||
<teleport id="211" x="69340" y="-50203" z="-3283" price="30000" /> <!-- Swamp of Screams -->
|
||||
<teleport id="214" x="89513" y="-44800" z="-2131" price="30000" /> <!-- Stakato Nest -->
|
||||
<teleport id="216" x="113902" y="-108751" z="-856" price="30000" /> <!-- Ice Merchant Cabin -->
|
||||
<teleport id="234" x="149518" y="195280" z="-3731" price="150000" /> <!-- Isle of Prayer -->
|
||||
<teleport id="239" x="149362" y="172556" z="-952" price="60000" /> <!-- Parnassus -->
|
||||
<teleport id="244" x="-117001" y="46589" z="360" price="30000" /> <!-- Kamael Village -->
|
||||
<teleport id="273" x="-21624" y="242909" z="-3144" price="90000" /> <!-- Beleth's Magic Circle -->
|
||||
<teleport id="278" x="-9209" y="241301" z="-1968" price="90000" /> <!-- Desert Quarry -->
|
||||
<teleport id="305" x="207482" y="86610" z="-1000" price="30000" /> <!-- Ancient City Arcan -->
|
||||
<teleport id="311" x="-109300" y="237498" z="-2944" price="30000" /> <!-- Ruins of Ye Sagira -->
|
||||
<teleport id="316" x="-80532" y="247714" z="-3492" price="30000" /> <!-- Faeron Village -->
|
||||
<teleport id="317" x="-82399" y="244118" z="-3738" price="30000" /> <!-- Whispering Woods -->
|
||||
<teleport id="320" x="-51015" y="-147271" z="-14944" price="30000" /> <!-- Underground Gainak -->
|
||||
<teleport id="321" x="79827" y="152588" z="2304" price="90000" /> <!-- Superion Fortress -->
|
||||
<teleport id="352" x="-149406" y="255247" z="-80" price="30000" /> <!-- Gludio Wharf -->
|
||||
<teleport id="354" x="-122410" y="73205" z="-2867" price="30000" /> <!-- Stronghold I -->
|
||||
<teleport id="355" x="-94895" y="52208" z="-2029" price="60000" /> <!-- Stronghold II -->
|
||||
<teleport id="356" x="-85928" y="37095" z="-2043" price="60000" /> <!-- Stronghold III -->
|
||||
<teleport id="357" x="-73840" y="53480" z="-3680" price="30000" /> <!-- Isle of Souls Harbor -->
|
||||
<teleport id="358" x="-13982" y="22124" z="-3616" price="60000" /> <!-- Altar of Evil -->
|
||||
<teleport id="359" x="-28575" y="255984" z="-2195" price="90000" /> <!-- Hellbound -->
|
||||
<teleport id="384" x="-22480" y="13862" z="-3172" price="120000" /> <!-- Catacomb of Dark Omens -->
|
||||
<teleport id="385" x="168548" y="-17966" z="-3172" price="120000" /> <!-- The Disciple's Necropolis -->
|
||||
<teleport id="387" x="168844" y="234416" z="-2304" price="150000" /> <!-- Fafurion Temple -->
|
||||
<teleport id="388" x="-114986" y="226633" z="-2864" price="30000" /> <!-- Tomb of Souls -->
|
||||
<teleport id="389" x="-48154" y="69462" z="-3080" price="90000" /> <!-- Blackbird Campsite -->
|
||||
</list>
|
@@ -103,7 +103,6 @@ public class EffectMasterHandler
|
||||
EffectHandler.getInstance().registerHandler("CriticalDamagePosition", CriticalDamagePosition::new);
|
||||
EffectHandler.getInstance().registerHandler("CriticalRate", CriticalRate::new);
|
||||
EffectHandler.getInstance().registerHandler("CriticalRatePositionBonus", CriticalRatePositionBonus::new);
|
||||
EffectHandler.getInstance().registerHandler("CrystalGradeModify", CrystalGradeModify::new);
|
||||
EffectHandler.getInstance().registerHandler("Crystallize", Crystallize::new);
|
||||
EffectHandler.getInstance().registerHandler("CubicMastery", CubicMastery::new);
|
||||
EffectHandler.getInstance().registerHandler("DamageBlock", DamageBlock::new);
|
||||
@@ -286,7 +285,6 @@ public class EffectMasterHandler
|
||||
EffectHandler.getInstance().registerHandler("ReflectSkill", ReflectSkill::new);
|
||||
EffectHandler.getInstance().registerHandler("RefuelAirship", RefuelAirship::new);
|
||||
EffectHandler.getInstance().registerHandler("Relax", Relax::new);
|
||||
EffectHandler.getInstance().registerHandler("RemoveEquipPenalty", RemoveEquipPenalty::new);
|
||||
EffectHandler.getInstance().registerHandler("ReplaceSkillBySkill", ReplaceSkillBySkill::new);
|
||||
EffectHandler.getInstance().registerHandler("ResetInstanceEntry", ResetInstanceEntry::new);
|
||||
EffectHandler.getInstance().registerHandler("ResistAbnormalByCategory", ResistAbnormalByCategory::new);
|
||||
|
@@ -80,7 +80,7 @@ public class Wear implements IBypassHandler
|
||||
|
||||
player.setInventoryBlockingStatus(true);
|
||||
|
||||
player.sendPacket(new ShopPreviewList(buyList, player.getAdena(), player.getExpertiseLevel()));
|
||||
player.sendPacket(new ShopPreviewList(buyList, player.getAdena()));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -1,60 +0,0 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package handlers.effecthandlers;
|
||||
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
|
||||
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
|
||||
import org.l2jmobius.gameserver.model.skills.Skill;
|
||||
|
||||
/**
|
||||
* Crystal Grade Modify effect implementation.
|
||||
* @author Zoey76
|
||||
*/
|
||||
public class CrystalGradeModify extends AbstractEffect
|
||||
{
|
||||
private final int _amount;
|
||||
|
||||
public CrystalGradeModify(StatsSet params)
|
||||
{
|
||||
_amount = params.getInt("_amount", 0);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canStart(Creature effector, Creature effected, Skill skill)
|
||||
{
|
||||
return effected.isPlayer();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onStart(Creature effector, Creature effected, Skill skill, ItemInstance item)
|
||||
{
|
||||
effected.getActingPlayer().setExpertisePenaltyBonus(_amount);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onExit(Creature effector, Creature effected, Skill skill)
|
||||
{
|
||||
final PlayerInstance player = effected.getActingPlayer();
|
||||
if (player != null)
|
||||
{
|
||||
player.setExpertisePenaltyBonus(0);
|
||||
}
|
||||
}
|
||||
}
|
@@ -1,65 +0,0 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package handlers.effecthandlers;
|
||||
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
|
||||
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
|
||||
import org.l2jmobius.gameserver.model.items.type.CrystalType;
|
||||
import org.l2jmobius.gameserver.model.skills.Skill;
|
||||
|
||||
/**
|
||||
* An effect that removes equipment grade penalty. Its the base effect for the grade penalty mechanics.
|
||||
* @author Nik
|
||||
*/
|
||||
public class RemoveEquipPenalty extends AbstractEffect
|
||||
{
|
||||
private final CrystalType _grade;
|
||||
|
||||
public RemoveEquipPenalty(StatsSet params)
|
||||
{
|
||||
_grade = params.getEnum("grade", CrystalType.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canStart(Creature effector, Creature effected, Skill skill)
|
||||
{
|
||||
return effected.isPlayer();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onStart(Creature effector, Creature effected, Skill skill, ItemInstance item)
|
||||
{
|
||||
final PlayerInstance player = effected.getActingPlayer();
|
||||
if (player != null)
|
||||
{
|
||||
player.setExpertiseLevel(_grade);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onExit(Creature effector, Creature effected, Skill skill)
|
||||
{
|
||||
final PlayerInstance player = effected.getActingPlayer();
|
||||
if (player != null)
|
||||
{
|
||||
player.setExpertiseLevel(null);
|
||||
}
|
||||
}
|
||||
}
|
@@ -27,7 +27,6 @@ import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.model.holders.ItemSkillHolder;
|
||||
import org.l2jmobius.gameserver.model.items.Weapon;
|
||||
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
|
||||
import org.l2jmobius.gameserver.model.items.type.ActionType;
|
||||
import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.MagicSkillUse;
|
||||
import org.l2jmobius.gameserver.util.Broadcast;
|
||||
@@ -68,17 +67,6 @@ public class BlessedSoulShots implements IItemHandler
|
||||
return false;
|
||||
}
|
||||
|
||||
final boolean gradeCheck = item.isEtcItem() && (item.getEtcItem().getDefaultAction() == ActionType.SOULSHOT) && (weaponInst.getItem().getCrystalTypePlus() == item.getItem().getCrystalTypePlus());
|
||||
|
||||
if (!gradeCheck)
|
||||
{
|
||||
if (!player.getAutoSoulShot().contains(itemId))
|
||||
{
|
||||
player.sendPacket(SystemMessageId.THE_SOULSHOT_YOU_ARE_ATTEMPTING_TO_USE_DOES_NOT_MATCH_THE_GRADE_OF_YOUR_EQUIPPED_WEAPON);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
player.soulShotLock.lock();
|
||||
try
|
||||
{
|
||||
|
@@ -26,7 +26,6 @@ import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.model.holders.ItemSkillHolder;
|
||||
import org.l2jmobius.gameserver.model.items.Weapon;
|
||||
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
|
||||
import org.l2jmobius.gameserver.model.items.type.ActionType;
|
||||
import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.MagicSkillUse;
|
||||
import org.l2jmobius.gameserver.util.Broadcast;
|
||||
@@ -70,19 +69,6 @@ public class BlessedSpiritShot implements IItemHandler
|
||||
return false;
|
||||
}
|
||||
|
||||
// Check for correct grade
|
||||
final boolean gradeCheck = item.isEtcItem() && (item.getEtcItem().getDefaultAction() == ActionType.SPIRITSHOT) && (weaponInst.getItem().getCrystalTypePlus() == item.getItem().getCrystalTypePlus());
|
||||
|
||||
if (!gradeCheck)
|
||||
{
|
||||
if (!player.getAutoSoulShot().contains(itemId))
|
||||
{
|
||||
player.sendPacket(SystemMessageId.YOUR_SPIRITSHOT_DOES_NOT_MATCH_THE_WEAPON_S_GRADE);
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
// Consume Blessed SpiritShot if player has enough of them
|
||||
if (!player.destroyItemWithoutTrace("Consume", item.getObjectId(), weaponItem.getSpiritShotCount(), null, false))
|
||||
{
|
||||
|
@@ -27,7 +27,6 @@ import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.model.holders.ItemSkillHolder;
|
||||
import org.l2jmobius.gameserver.model.items.Weapon;
|
||||
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
|
||||
import org.l2jmobius.gameserver.model.items.type.ActionType;
|
||||
import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.MagicSkillUse;
|
||||
import org.l2jmobius.gameserver.util.Broadcast;
|
||||
@@ -65,17 +64,6 @@ public class SoulShots implements IItemHandler
|
||||
return false;
|
||||
}
|
||||
|
||||
final boolean gradeCheck = item.isEtcItem() && (item.getEtcItem().getDefaultAction() == ActionType.SOULSHOT) && (weaponInst.getItem().getCrystalTypePlus() == item.getItem().getCrystalTypePlus());
|
||||
|
||||
if (!gradeCheck)
|
||||
{
|
||||
if (!player.getAutoSoulShot().contains(itemId))
|
||||
{
|
||||
player.sendPacket(SystemMessageId.THE_SOULSHOT_YOU_ARE_ATTEMPTING_TO_USE_DOES_NOT_MATCH_THE_GRADE_OF_YOUR_EQUIPPED_WEAPON);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
player.soulShotLock.lock();
|
||||
try
|
||||
{
|
||||
|
@@ -26,7 +26,6 @@ import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.model.holders.ItemSkillHolder;
|
||||
import org.l2jmobius.gameserver.model.items.Weapon;
|
||||
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
|
||||
import org.l2jmobius.gameserver.model.items.type.ActionType;
|
||||
import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.MagicSkillUse;
|
||||
import org.l2jmobius.gameserver.util.Broadcast;
|
||||
@@ -70,19 +69,6 @@ public class SpiritShot implements IItemHandler
|
||||
return false;
|
||||
}
|
||||
|
||||
// Check for correct grade
|
||||
final boolean gradeCheck = item.isEtcItem() && (item.getEtcItem().getDefaultAction() == ActionType.SPIRITSHOT) && (weaponInst.getItem().getCrystalTypePlus() == item.getItem().getCrystalTypePlus());
|
||||
|
||||
if (!gradeCheck)
|
||||
{
|
||||
if (!player.getAutoSoulShot().contains(itemId))
|
||||
{
|
||||
player.sendPacket(SystemMessageId.YOUR_SPIRITSHOT_DOES_NOT_MATCH_THE_WEAPON_S_GRADE);
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
// Consume SpiritShot if player has enough of them
|
||||
if (!player.destroyItemWithoutTrace("Consume", item.getObjectId(), weaponItem.getSpiritShotCount(), null, false))
|
||||
{
|
||||
|
@@ -2,17 +2,6 @@
|
||||
<list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/skillTrees.xsd">
|
||||
<skillTree type="classSkillTree">
|
||||
<skill skillName="Lucky" skillId="194" skillLvl="1" getLevel="1" autoGet="true" />
|
||||
<skill skillName="Expertise D" skillId="239" skillLvl="1" getLevel="20" autoGet="true" />
|
||||
<skill skillName="Expertise C" skillId="239" skillLvl="2" getLevel="40" autoGet="true" />
|
||||
<skill skillName="Expertise B" skillId="239" skillLvl="3" getLevel="52" autoGet="true" />
|
||||
<skill skillName="Expertise A" skillId="239" skillLvl="4" getLevel="61" autoGet="true" />
|
||||
<skill skillName="Expertise S" skillId="239" skillLvl="5" getLevel="76" autoGet="true" />
|
||||
<skill skillName="Expertise S80" skillId="239" skillLvl="6" getLevel="80" autoGet="true" />
|
||||
<skill skillName="Expertise S84" skillId="239" skillLvl="7" getLevel="84" autoGet="true" />
|
||||
<skill skillName="Expertise R" skillId="239" skillLvl="8" getLevel="85" autoGet="true" />
|
||||
<skill skillName="Expertise R95" skillId="239" skillLvl="9" getLevel="95" autoGet="true" />
|
||||
<skill skillName="Expertise R99" skillId="239" skillLvl="10" getLevel="99" autoGet="true" />
|
||||
<skill skillName="Expertise R110" skillId="239" skillLvl="11" getLevel="110" autoGet="true" />
|
||||
<skill skillName="Common Craft" skillId="1322" skillLvl="1" getLevel="1" autoGet="true" />
|
||||
<skill skillName="Create Common Item" skillId="1320" skillLvl="1" getLevel="5" autoGet="true" />
|
||||
<skill skillName="Create Common Item" skillId="1320" skillLvl="2" getLevel="20" autoGet="true" />
|
||||
|
@@ -2,74 +2,376 @@
|
||||
<list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../xsd/optionsData.xsd">
|
||||
<option id="33900" name="Dragon_Earring">
|
||||
<!-- Stun/ Faint/ Slip/ Pull Attack Success and Resistance +25%, CHA/ LUC +3, MP Consumption -11%, Healing Received +11%, Vampiric Rage +6%, Speed +4, Skill Power +6%, P./ M. Critical Damage Received -11%, All Defense Attribute +40 -->
|
||||
<passive_skill id="35355" level="5" /> <!-- Dragon Earring -->
|
||||
<passive_skill id="35355" level="5" /><!-- Dragon Earring -->
|
||||
</option>
|
||||
<option id="33901" name="Dragon_Earring">
|
||||
<!-- Stun/ Faint/ Slip/ Pull Attack Success and Resistance +25%, CHA/ LUC +3, MP Consumption -12%, Healing Received +12%, Vampiric Rage +7%, Speed +5, Skill Power +7%, P./ M. Critical Damage Received -12%, All Defense Attribute +50 -->
|
||||
<passive_skill id="35355" level="6" /> <!-- Dragon Earring -->
|
||||
<passive_skill id="35355" level="6" /><!-- Dragon Earring -->
|
||||
</option>
|
||||
<option id="33902" name="Dragon_Earring">
|
||||
<!-- Stun/ Faint/ Slip/ Pull Attack Success and Resistance +25%, CHA/ LUC +3, MP Consumption -13%, Healing Received +13%, Vampiric Rage +8%, Speed +6, Skill Power +8%, P./ M. Critical Damage Received -13%, All Defense Attribute +60 -->
|
||||
<passive_skill id="35355" level="7" /> <!-- Dragon Earring -->
|
||||
<passive_skill id="35355" level="7" /><!-- Dragon Earring -->
|
||||
</option>
|
||||
<option id="33903" name="Dragon_Earring">
|
||||
<!-- Stun/ Faint/ Slip/ Pull Attack Success and Resistance +25%, CHA/ LUC +3, MP Consumption -14%, Healing Received +14%, Vampiric Rage +9%, Speed +7, Skill Power +9%, P./ M. Critical Damage Received -14%, All Defense Attribute +70 -->
|
||||
<passive_skill id="35355" level="8" /> <!-- Dragon Earring -->
|
||||
<passive_skill id="35355" level="8" /><!-- Dragon Earring -->
|
||||
</option>
|
||||
<option id="33904" name="Dragon_Earring">
|
||||
<!-- Stun/ Faint/ Slip/ Pull Attack Success and Resistance +25%, CHA/ LUC +3, MP Consumption -15%, Healing Received +15%, Vampiric Rage +10%, Speed +8, Skill Power +10%, P./ M. Critical Damage Received -15%, All Defense Attribute +80 -->
|
||||
<passive_skill id="35355" level="9" /> <!-- Dragon Earring -->
|
||||
<passive_skill id="35355" level="9" /><!-- Dragon Earring -->
|
||||
</option>
|
||||
<option id="33905" name="Dragon_Earring">
|
||||
<!-- Stun/ Faint/ Slip/ Pull Attack Success and Resistance +25%, CHA/ LUC +3, MP Consumption -16%, Healing Received +16%, Vampiric Rage +11%, Speed +9, Skill Power +11%, P./ M. Critical Damage Received -16%, All Defense Attribute +90 -->
|
||||
<passive_skill id="35355" level="10" /> <!-- Dragon Earring -->
|
||||
<passive_skill id="35355" level="10" /><!-- Dragon Earring -->
|
||||
</option>
|
||||
<option id="33906" name="Dragon_Earring">
|
||||
<!-- Stun/ Faint/ Slip/ Pull Attack Success and Resistance +25%, CHA/ LUC +3, MP Consumption -17%, Healing Received +17%, Vampiric Rage +12%, Speed +10, Skill Power +12%, P./ M. Critical Damage Received -17%, All Defense Attribute +100 -->
|
||||
<passive_skill id="35355" level="11" /> <!-- Dragon Earring -->
|
||||
<passive_skill id="35355" level="11" /><!-- Dragon Earring -->
|
||||
</option>
|
||||
<option id="33907" name="Dragon_Ring">
|
||||
<!-- Enchant Dragon Ring to have additional special options. -->
|
||||
<passive_skill id="35356" level="1" /> <!-- Dragon Ring -->
|
||||
<passive_skill id="35356" level="1" /><!-- Dragon Ring -->
|
||||
</option>
|
||||
<option id="33908" name="Dragon_Ring">
|
||||
<!-- Stun/ Mental/ Knockback/ Knockdown/ Aerial Yoke Attack Success and Resistance +15%, CHA/ LUC +1, Atk./ Casting Spd. +3%, P./ M. Accuracy +3, Speed +1, Skill Power +3%, Normal/ P./ M. Skill Critical Damage +5%, Damage to immobilized target +1%, All Defense Attribute +10 -->
|
||||
<passive_skill id="35356" level="2" /> <!-- Dragon Ring -->
|
||||
<passive_skill id="35356" level="2" /><!-- Dragon Ring -->
|
||||
</option>
|
||||
<option id="33909" name="Dragon_Ring">
|
||||
<!-- Stun/ Mental/ Knockback/ Knockdown/ Aerial Yoke Attack Success and Resistance +20%, CHA/ LUC +2, Atk./ Casting Spd. +4%, P./ M. Accuracy +4, Speed +2, Skill Power +4%, Normal/ P./ M. Skill Critical Damage +10%, Damage to immobilized target +2%, All Defense Attribute +20 -->
|
||||
<passive_skill id="35356" level="3" /> <!-- Dragon Ring -->
|
||||
<passive_skill id="35356" level="3" /><!-- Dragon Ring -->
|
||||
</option>
|
||||
<option id="33910" name="Dragon_Ring">
|
||||
<!-- Stun/ Mental/ Knockback/ Knockdown/ Aerial Yoke Attack Success and Resistance +25%, CHA/ LUC +3, Atk./ Casting Spd. +5%, P./ M. Accuracy +5, Speed +3, Skill Power +5%, Normal/ P./ M. Skill Critical Damage +15%, Damage to immobilized target +3%, All Defense Attribute +30 -->
|
||||
<passive_skill id="35356" level="4" /> <!-- Dragon Ring -->
|
||||
<passive_skill id="35356" level="4" /><!-- Dragon Ring -->
|
||||
</option>
|
||||
<option id="33911" name="Dragon_Ring">
|
||||
<!-- Stun/ Mental/ Knockback/ Knockdown/ Aerial Yoke Attack Success and Resistance +25%, CHA/ LUC +3, Atk./ Casting Spd. +6%, P./ M. Accuracy +6, Speed +4, Skill Power +6%, Normal/ P./ M. Skill Critical Damage +16%, Damage to immobilized target +4%, All Defense Attribute +40 -->
|
||||
<passive_skill id="35356" level="5" /> <!-- Dragon Ring -->
|
||||
<passive_skill id="35356" level="5" /><!-- Dragon Ring -->
|
||||
</option>
|
||||
<option id="33912" name="Dragon_Ring">
|
||||
<!-- Stun/ Mental/ Knockback/ Knockdown/ Aerial Yoke Attack Success and Resistance +25%, CHA/ LUC +3, Atk./ Casting Spd. +7%, P./ M. Accuracy +7, Speed +5, Skill Power +7%, Normal/ P./ M. Skill Critical Damage +17%, Damage to immobilized target +5%, All Defense Attribute +50 -->
|
||||
<passive_skill id="35356" level="6" /> <!-- Dragon Ring -->
|
||||
<passive_skill id="35356" level="6" /><!-- Dragon Ring -->
|
||||
</option>
|
||||
<option id="33913" name="Dragon_Ring">
|
||||
<!-- Stun/ Mental/ Knockback/ Knockdown/ Aerial Yoke Attack Success and Resistance +25%, CHA/ LUC +3, Atk./ Casting Spd. +8%, P./ M. Accuracy +8, Speed +6, Skill Power +8%, Normal/ P./ M. Skill Critical Damage +18%, Damage to immobilized target +6%, All Defense Attribute +60 -->
|
||||
<passive_skill id="35356" level="7" /> <!-- Dragon Ring -->
|
||||
<passive_skill id="35356" level="7" /><!-- Dragon Ring -->
|
||||
</option>
|
||||
<option id="33914" name="Dragon_Ring">
|
||||
<!-- Stun/ Mental/ Knockback/ Knockdown/ Aerial Yoke Attack Success and Resistance +25%, CHA/ LUC +3, Atk./ Casting Spd. +9%, P./ M. Accuracy +9, Speed +7, Skill Power +9%, Normal/ P./ M. Skill Critical Damage +19%, Damage to immobilized target +7%, All Defense Attribute +70 -->
|
||||
<passive_skill id="35356" level="8" /> <!-- Dragon Ring -->
|
||||
<passive_skill id="35356" level="8" /><!-- Dragon Ring -->
|
||||
</option>
|
||||
<option id="33915" name="Dragon_Ring">
|
||||
<!-- Stun/ Mental/ Knockback/ Knockdown/ Aerial Yoke Attack Success and Resistance +25%, CHA/ LUC +3, Atk./ Casting Spd. +10%, P./ M. Accuracy +10, Speed +8, Skill Power +10%, Normal/ P./ M. Skill Critical Damage +20%, Damage to immobilized target +8%, All Defense Attribute +80 -->
|
||||
<passive_skill id="35356" level="9" /> <!-- Dragon Ring -->
|
||||
<passive_skill id="35356" level="9" /><!-- Dragon Ring -->
|
||||
</option>
|
||||
<option id="33916" name="Dragon_Ring">
|
||||
<!-- Stun/ Mental/ Knockback/ Knockdown/ Aerial Yoke Attack Success and Resistance +25%, CHA/ LUC +3, Atk./ Casting Spd. +11%, P./ M. Accuracy +11, Speed +9, Skill Power +11%, Normal/ P./ M. Skill Critical Damage +21%, Damage to immobilized target +9%, All Defense Attribute +90 -->
|
||||
<passive_skill id="35356" level="10" /> <!-- Dragon Ring -->
|
||||
<passive_skill id="35356" level="10" /><!-- Dragon Ring -->
|
||||
</option>
|
||||
<option id="33917" name="Dragon_Ring">
|
||||
<!-- Stun/ Mental/ Knockback/ Knockdown/ Aerial Yoke Attack Success and Resistance +25%, CHA/ LUC +3, Atk./ Casting Spd. +12%, P./ M. Accuracy +12, Speed +10, Skill Power +12%, Normal/ P./ M. Skill Critical Damage +22%, Damage to immobilized target +10%, All Defense Attribute +100 -->
|
||||
<passive_skill id="35356" level="11" /> <!-- Dragon Ring -->
|
||||
<passive_skill id="35356" level="11" /><!-- Dragon Ring -->
|
||||
</option>
|
||||
<option id="33918" name="fafurion_unk_opt">
|
||||
<!-- Echant to +7 and over and take it to Mammon's Relic Collector to receive a reward according to the enchant level. -->
|
||||
</option>
|
||||
<option id="33919" name="fafurion_unk_opt">
|
||||
<!-- Echant to +7 and over and take it to Mammon's Relic Collector to receive a reward according to the enchant level. -->
|
||||
</option>
|
||||
<option id="33920" name="fafurion_unk_opt">
|
||||
<!-- Echant to +7 and over and take it to Mammon's Relic Collector to receive a reward according to the enchant level. -->
|
||||
</option>
|
||||
<option id="33921" name="fafurion_unk_opt">
|
||||
<!-- Echant to +7 and over and take it to Mammon's Relic Collector to receive a reward according to the enchant level. -->
|
||||
</option>
|
||||
<option id="33922" name="fafurion_unk_opt">
|
||||
<!-- Echant to +7 and over and take it to Mammon's Relic Collector to receive a reward according to the enchant level. -->
|
||||
</option>
|
||||
<option id="33923" name="fafurion_unk_opt">
|
||||
<!-- Echant to +7 and over and take it to Mammon's Relic Collector to receive a reward according to the enchant level. -->
|
||||
</option>
|
||||
<option id="33924" name="fafurion_unk_opt">
|
||||
<!-- Echant to +7 and over and take it to Mammon's Relic Collector to receive a reward according to the enchant level. -->
|
||||
</option>
|
||||
<option id="33925" name="fafurion_unk_opt">
|
||||
<!-- Exchange with Mammon's Relic Collector and obtain an Ultimate Lv. 3 Jewelry Box. -->
|
||||
</option>
|
||||
<option id="33926" name="fafurion_unk_opt">
|
||||
<!-- Exchange with Mammon's Relic Collector and obtain 3 Mammon's Key Chests. -->
|
||||
</option>
|
||||
<option id="33927" name="fafurion_unk_opt">
|
||||
<!-- Exchange with Mammon's Relic Collector and obtain 2 Mammon's Adena Boxes. -->
|
||||
</option>
|
||||
<option id="33928" name="fafurion_unk_opt">
|
||||
<!-- Exchange with Mammon's Relic Collector and obtain a Zodiac Agathion Cube. -->
|
||||
</option>
|
||||
<option id="33929" name="fafurion_unk_opt">
|
||||
<!-- Exchange with Mammon's Relic Collector and obtain 5 Mammon's Key Chests and 2 Mammon's Adena Boxes. -->
|
||||
</option>
|
||||
<option id="33930" name="fafurion_unk_opt">
|
||||
<!-- Exchange with Mammon's Relic Collector and obtain an Ultimate Lv. 4 Jewelry Box. -->
|
||||
</option>
|
||||
<option id="33931" name="fafurion_unk_opt">
|
||||
<!-- Exchange with Mammon's Relic Collector and obtain a High-grade Seed Bracelet. -->
|
||||
</option>
|
||||
<option id="33932" name="fafurion_unk_opt">
|
||||
<!-- Exchange with Mammon's Relic Collector and obtain a +5 Zodiac Agathion Cube. -->
|
||||
</option>
|
||||
<option id="33933" name="fafurion_unk_opt">
|
||||
<!-- Exchange with Mammon's Relic Collector and obtain a Sealed Talisman - Longing. -->
|
||||
</option>
|
||||
<option id="33934" name="fafurion_unk_opt">
|
||||
<!-- Exchange with Mammon's Relic Collector and obtain an Ultimate Lv. 5 Jewelry Box. -->
|
||||
</option>
|
||||
<option id="33935" name="fafurion_unk_opt">
|
||||
<!-- Exchange with Mammon's Relic Collector and obtain a +7 Zodiac Agathion Cube. -->
|
||||
</option>
|
||||
<option id="33936" name="fafurion_unk_opt">
|
||||
<!-- Exchange with Mammon's Relic Collector for a chance to obtain a Queen Ant's Soul Ring, Baium's Soul Ring or Earth Wyrm Heart Ring. -->
|
||||
</option>
|
||||
<option id="33937" name="fafurion_unk_opt">
|
||||
<!-- Exchange with Mammon's Relic Collector and obtain a Super Advanced Seed Bracelet. -->
|
||||
</option>
|
||||
<option id="33938" name="fafurion_unk_opt">
|
||||
<!-- Exchange with Mammon's Relic Collector and obtain a +18 Bloody Amaranthine Weapon. -->
|
||||
</option>
|
||||
<option id="33939" name="fafurion_unk_opt">
|
||||
<!-- Exchange with Mammon's Relic Collector and obtain a +19 Bloody Amaranthine Weapon. -->
|
||||
</option>
|
||||
<option id="33940" name="fafurion_unk_opt">
|
||||
<!-- Exchange with Mammon's Relic Collector and obtain a +20 Bloody Amaranthine Weapon. -->
|
||||
</option>
|
||||
<option id="33941" name="fafurion_unk_opt">
|
||||
<!-- Exchange with Mammon's Relic Collector and obtain a Ruler's Authority. -->
|
||||
</option>
|
||||
<option id="33942" name="fafurion_unk_opt">
|
||||
<!-- Exchange with Mammon's Relic Collector for a chance to obtain a Blessed Antharas' Earring, Blessed Valakas' Necklace, or Lindvior's Earring. -->
|
||||
</option>
|
||||
<option id="33943" name="fafurion_unk_opt">
|
||||
<!-- Exchange with Mammon's Relic Collector for a chance to obtain a Ruler's Ring of Authority or a Ring of the Truth-Seeker. -->
|
||||
</option>
|
||||
<option id="33944" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage increases when enchanted -->
|
||||
<passive_skill id="35364" level="1" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="33945" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +1% -->
|
||||
<passive_skill id="35364" level="2" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="33946" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +2% -->
|
||||
<passive_skill id="35364" level="3" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="33947" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +3% -->
|
||||
<passive_skill id="35364" level="4" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="33948" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +5% -->
|
||||
<passive_skill id="35364" level="5" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="33949" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +6% -->
|
||||
<passive_skill id="35364" level="6" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="33950" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +7% -->
|
||||
<passive_skill id="35364" level="7" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="33951" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +9% -->
|
||||
<passive_skill id="35364" level="8" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="33952" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +11% -->
|
||||
<passive_skill id="35364" level="9" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="33953" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +13% -->
|
||||
<passive_skill id="35364" level="10" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="33954" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +15% -->
|
||||
<passive_skill id="35364" level="11" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="33955" name="preludeofwar_artifact_opt">
|
||||
<!-- When enchanting, increases P. Skill Critical Damage. -->
|
||||
<passive_skill id="35365" level="1" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33956" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage + 1% -->
|
||||
<passive_skill id="35365" level="2" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33957" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage + 2% -->
|
||||
<passive_skill id="35365" level="3" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33958" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage + 3% -->
|
||||
<passive_skill id="35365" level="4" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33959" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage + 5% -->
|
||||
<passive_skill id="35365" level="5" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33960" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage + 6% -->
|
||||
<passive_skill id="35365" level="6" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33961" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage + 7% -->
|
||||
<passive_skill id="35365" level="7" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33962" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage + 9% -->
|
||||
<passive_skill id="35365" level="8" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33963" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage + 11% -->
|
||||
<passive_skill id="35365" level="9" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33964" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage + 13% -->
|
||||
<passive_skill id="35365" level="10" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33965" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage + 15% -->
|
||||
<passive_skill id="35365" level="11" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33966" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage increases when enchanted -->
|
||||
<passive_skill id="35366" level="1" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33967" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage + 1% -->
|
||||
<passive_skill id="35366" level="2" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33968" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage + 2% -->
|
||||
<passive_skill id="35366" level="3" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33969" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage + 3% -->
|
||||
<passive_skill id="35366" level="4" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33970" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage + 5% -->
|
||||
<passive_skill id="35366" level="5" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33971" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage + 6% -->
|
||||
<passive_skill id="35366" level="6" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33972" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage + 7% -->
|
||||
<passive_skill id="35366" level="7" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33973" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage + 9% -->
|
||||
<passive_skill id="35366" level="8" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33974" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage + 11% -->
|
||||
<passive_skill id="35366" level="9" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33975" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage + 13% -->
|
||||
<passive_skill id="35366" level="10" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33976" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage + 15% -->
|
||||
<passive_skill id="35366" level="11" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="33977" name="preludeofwar_artifact_opt">
|
||||
<!-- When enchanted, increases resistance to bow/ crossbow attacks. -->
|
||||
<passive_skill id="35370" level="1" /><!-- Artifact - Bow Resistance -->
|
||||
</option>
|
||||
<option id="33978" name="preludeofwar_artifact_opt">
|
||||
<!-- Bow/Crossbow Resistance +1% -->
|
||||
<passive_skill id="35370" level="2" /><!-- Artifact - Bow Resistance -->
|
||||
</option>
|
||||
<option id="33979" name="preludeofwar_artifact_opt">
|
||||
<!-- Bow/Crossbow Resistance +2% -->
|
||||
<passive_skill id="35370" level="3" /><!-- Artifact - Bow Resistance -->
|
||||
</option>
|
||||
<option id="33980" name="preludeofwar_artifact_opt">
|
||||
<!-- Bow/Crossbow Resistance +3% -->
|
||||
<passive_skill id="35370" level="4" /><!-- Artifact - Bow Resistance -->
|
||||
</option>
|
||||
<option id="33981" name="preludeofwar_artifact_opt">
|
||||
<!-- Bow/Crossbow Resistance +5% -->
|
||||
<passive_skill id="35370" level="5" /><!-- Artifact - Bow Resistance -->
|
||||
</option>
|
||||
<option id="33982" name="preludeofwar_artifact_opt">
|
||||
<!-- Bow/Crossbow Resistance +6% -->
|
||||
<passive_skill id="35370" level="6" /><!-- Artifact - Bow Resistance -->
|
||||
</option>
|
||||
<option id="33983" name="preludeofwar_artifact_opt">
|
||||
<!-- Bow/Crossbow Resistance +7% -->
|
||||
<passive_skill id="35370" level="7" /><!-- Artifact - Bow Resistance -->
|
||||
</option>
|
||||
<option id="33984" name="preludeofwar_artifact_opt">
|
||||
<!-- Bow/Crossbow Resistance +9% -->
|
||||
<passive_skill id="35370" level="8" /><!-- Artifact - Bow Resistance -->
|
||||
</option>
|
||||
<option id="33985" name="preludeofwar_artifact_opt">
|
||||
<!-- Bow/Crossbow Resistance +11% -->
|
||||
<passive_skill id="35370" level="9" /><!-- Artifact - Bow Resistance -->
|
||||
</option>
|
||||
<option id="33986" name="preludeofwar_artifact_opt">
|
||||
<!-- Bow/Crossbow Resistance +13% -->
|
||||
<passive_skill id="35370" level="10" /><!-- Artifact - Bow Resistance -->
|
||||
</option>
|
||||
<option id="33987" name="preludeofwar_artifact_opt">
|
||||
<!-- Bow/Crossbow Resistance +15% -->
|
||||
<passive_skill id="35370" level="11" /><!-- Artifact - Bow Resistance -->
|
||||
</option>
|
||||
<option id="33988" name="preludeofwar_artifact_opt">
|
||||
<!-- Dagger/Dual Dagger Resistance increases when enchanted -->
|
||||
<passive_skill id="35371" level="1" /><!-- Artifact - Dagger Resistance -->
|
||||
</option>
|
||||
<option id="33989" name="preludeofwar_artifact_opt">
|
||||
<!-- Dagger/Dual Resistance +1% -->
|
||||
<passive_skill id="35371" level="2" /><!-- Artifact - Dagger Resistance -->
|
||||
</option>
|
||||
<option id="33990" name="preludeofwar_artifact_opt">
|
||||
<!-- Dagger/Dual Resistance +2% -->
|
||||
<passive_skill id="35371" level="3" /><!-- Artifact - Dagger Resistance -->
|
||||
</option>
|
||||
<option id="33991" name="preludeofwar_artifact_opt">
|
||||
<!-- Dagger/Dual Resistance +3% -->
|
||||
<passive_skill id="35371" level="4" /><!-- Artifact - Dagger Resistance -->
|
||||
</option>
|
||||
<option id="33992" name="preludeofwar_artifact_opt">
|
||||
<!-- Dagger/Dual Resistance +5% -->
|
||||
<passive_skill id="35371" level="5" /><!-- Artifact - Dagger Resistance -->
|
||||
</option>
|
||||
<option id="33993" name="preludeofwar_artifact_opt">
|
||||
<!-- Dagger/Dual Resistance +6% -->
|
||||
<passive_skill id="35371" level="6" /><!-- Artifact - Dagger Resistance -->
|
||||
</option>
|
||||
<option id="33994" name="preludeofwar_artifact_opt">
|
||||
<!-- Dagger/Dual Resistance +7% -->
|
||||
<passive_skill id="35371" level="7" /><!-- Artifact - Dagger Resistance -->
|
||||
</option>
|
||||
<option id="33995" name="preludeofwar_artifact_opt">
|
||||
<!-- Dagger/Dual Resistance +9% -->
|
||||
<passive_skill id="35371" level="8" /><!-- Artifact - Dagger Resistance -->
|
||||
</option>
|
||||
<option id="33996" name="preludeofwar_artifact_opt">
|
||||
<!-- Dagger/Dual Resistance +11% -->
|
||||
<passive_skill id="35371" level="9" /><!-- Artifact - Dagger Resistance -->
|
||||
</option>
|
||||
<option id="33997" name="preludeofwar_artifact_opt">
|
||||
<!-- Dagger/Dual Resistance +13% -->
|
||||
<passive_skill id="35371" level="10" /><!-- Artifact - Dagger Resistance -->
|
||||
</option>
|
||||
<option id="33998" name="preludeofwar_artifact_opt">
|
||||
<!-- Dagger/Dual Resistance +15% -->
|
||||
<passive_skill id="35371" level="11" /><!-- Artifact - Dagger Resistance -->
|
||||
</option>
|
||||
<option id="33999" name="preludeofwar_artifact_opt">
|
||||
<!-- When enchanting, increases resistance to attacks by one-handed/ two-handed swords, dual swords, and magic swords.-->
|
||||
<passive_skill id="35372" level="1" /><!-- Artifact - Sword Resistance -->
|
||||
</option>
|
||||
</list>
|
403
L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/augmentation/options/34000-34099.xml
vendored
Normal file
403
L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/augmentation/options/34000-34099.xml
vendored
Normal file
@@ -0,0 +1,403 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../xsd/optionsData.xsd">
|
||||
<option id="34000" name="preludeofwar_artifact_opt">
|
||||
<!-- One-handed/ two-handed sword/ dual sword/ magic sword attack resistance +1% -->
|
||||
<passive_skill id="35372" level="2" /><!-- Artifact - Sword Resistance -->
|
||||
</option>
|
||||
<option id="34001" name="preludeofwar_artifact_opt">
|
||||
<!-- One-handed/ two-handed sword/ dual sword/ magic sword attack resistance +2% -->
|
||||
<passive_skill id="35372" level="3" /><!-- Artifact - Sword Resistance -->
|
||||
</option>
|
||||
<option id="34002" name="preludeofwar_artifact_opt">
|
||||
<!-- One-handed/ two-handed sword/ dual sword/ magic sword attack resistance +3% -->
|
||||
<passive_skill id="35372" level="4" /><!-- Artifact - Sword Resistance -->
|
||||
</option>
|
||||
<option id="34003" name="preludeofwar_artifact_opt">
|
||||
<!-- One-handed/ two-handed sword/ dual sword/ magic sword attack resistance +5% -->
|
||||
<passive_skill id="35372" level="5" /><!-- Artifact - Sword Resistance -->
|
||||
</option>
|
||||
<option id="34004" name="preludeofwar_artifact_opt">
|
||||
<!-- One-handed/ two-handed sword/ dual sword/ magic sword attack resistance +6% -->
|
||||
<passive_skill id="35372" level="6" /><!-- Artifact - Sword Resistance -->
|
||||
</option>
|
||||
<option id="34005" name="preludeofwar_artifact_opt">
|
||||
<!-- One-handed/ two-handed sword/ dual sword/ magic sword attack resistance +7% -->
|
||||
<passive_skill id="35372" level="7" /><!-- Artifact - Sword Resistance -->
|
||||
</option>
|
||||
<option id="34006" name="preludeofwar_artifact_opt">
|
||||
<!-- One-handed/ two-handed sword/ dual sword/ magic sword attack resistance +9% -->
|
||||
<passive_skill id="35372" level="8" /><!-- Artifact - Sword Resistance -->
|
||||
</option>
|
||||
<option id="34007" name="preludeofwar_artifact_opt">
|
||||
<!-- One-handed/ two-handed sword/ dual sword/ magic sword attack resistance +11% -->
|
||||
<passive_skill id="35372" level="9" /><!-- Artifact - Sword Resistance -->
|
||||
</option>
|
||||
<option id="34008" name="preludeofwar_artifact_opt">
|
||||
<!-- One-handed/ two-handed sword/ dual sword/ magic sword attack resistance +13% -->
|
||||
<passive_skill id="35372" level="10" /><!-- Artifact - Sword Resistance -->
|
||||
</option>
|
||||
<option id="34009" name="preludeofwar_artifact_opt">
|
||||
<!-- One-handed/ two-handed sword/ dual sword/ magic sword attack resistance +15% -->
|
||||
<passive_skill id="35372" level="11" /><!-- Artifact - Sword Resistance -->
|
||||
</option>
|
||||
<option id="34010" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Bonus increases when enchanted -->
|
||||
<passive_skill id="35376" level="1" /><!-- Artifact - Vitality Bonus -->
|
||||
</option>
|
||||
<option id="34011" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Bonus +1% -->
|
||||
<passive_skill id="35376" level="2" /><!-- Artifact - Vitality Bonus -->
|
||||
</option>
|
||||
<option id="34012" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Bonus +2% -->
|
||||
<passive_skill id="35376" level="3" /><!-- Artifact - Vitality Bonus -->
|
||||
</option>
|
||||
<option id="34013" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Bonus +3% -->
|
||||
<passive_skill id="35376" level="4" /><!-- Artifact - Vitality Bonus -->
|
||||
</option>
|
||||
<option id="34014" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Bonus +5% -->
|
||||
<passive_skill id="35376" level="5" /><!-- Artifact - Vitality Bonus -->
|
||||
</option>
|
||||
<option id="34015" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Bonus +7% -->
|
||||
<passive_skill id="35376" level="6" /><!-- Artifact - Vitality Bonus -->
|
||||
</option>
|
||||
<option id="34016" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Bonus +9% -->
|
||||
<passive_skill id="35376" level="7" /><!-- Artifact - Vitality Bonus -->
|
||||
</option>
|
||||
<option id="34017" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Bonus +11% -->
|
||||
<passive_skill id="35376" level="8" /><!-- Artifact - Vitality Bonus -->
|
||||
</option>
|
||||
<option id="34018" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Bonus +14% -->
|
||||
<passive_skill id="35376" level="9" /><!-- Artifact - Vitality Bonus -->
|
||||
</option>
|
||||
<option id="34019" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Bonus +17% -->
|
||||
<passive_skill id="35376" level="10" /><!-- Artifact - Vitality Bonus -->
|
||||
</option>
|
||||
<option id="34020" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Bonus +20% -->
|
||||
<passive_skill id="35376" level="11" /><!-- Artifact - Vitality Bonus -->
|
||||
</option>
|
||||
<option id="34021" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Consumption Speed decreases when enchanted -->
|
||||
<passive_skill id="35377" level="1" /><!-- Artifact - Vitality Consumption -->
|
||||
</option>
|
||||
<option id="34022" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Consumption Speed -1% -->
|
||||
<passive_skill id="35377" level="2" /><!-- Artifact - Vitality Consumption -->
|
||||
</option>
|
||||
<option id="34023" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Consumption Speed -2% -->
|
||||
<passive_skill id="35377" level="3" /><!-- Artifact - Vitality Consumption -->
|
||||
</option>
|
||||
<option id="34024" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Consumption Speed -3% -->
|
||||
<passive_skill id="35377" level="4" /><!-- Artifact - Vitality Consumption -->
|
||||
</option>
|
||||
<option id="34025" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Consumption Speed -5% -->
|
||||
<passive_skill id="35377" level="5" /><!-- Artifact - Vitality Consumption -->
|
||||
</option>
|
||||
<option id="34026" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Consumption Speed -7% -->
|
||||
<passive_skill id="35377" level="6" /><!-- Artifact - Vitality Consumption -->
|
||||
</option>
|
||||
<option id="34027" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Consumption Speed -9% -->
|
||||
<passive_skill id="35377" level="7" /><!-- Artifact - Vitality Consumption -->
|
||||
</option>
|
||||
<option id="34028" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Consumption Speed -11% -->
|
||||
<passive_skill id="35377" level="8" /><!-- Artifact - Vitality Consumption -->
|
||||
</option>
|
||||
<option id="34029" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Consumption Speed -14% -->
|
||||
<passive_skill id="35377" level="9" /><!-- Artifact - Vitality Consumption -->
|
||||
</option>
|
||||
<option id="34030" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Consumption Speed -17% -->
|
||||
<passive_skill id="35377" level="10" /><!-- Artifact - Vitality Consumption -->
|
||||
</option>
|
||||
<option id="34031" name="preludeofwar_artifact_opt">
|
||||
<!-- Vitality Consumption Speed -20% -->
|
||||
<passive_skill id="35377" level="11" /><!-- Artifact - Vitality Consumption -->
|
||||
</option>
|
||||
<option id="34032" name="preludeofwar_artifact_opt">
|
||||
<!-- Skill MP Consumption decreases when enchanted -->
|
||||
<passive_skill id="35378" level="1" /><!-- Artifact - MP Consumption -->
|
||||
</option>
|
||||
<option id="34033" name="preludeofwar_artifact_opt">
|
||||
<!-- Skill MP Consumption -1% -->
|
||||
<passive_skill id="35378" level="2" /><!-- Artifact - MP Consumption -->
|
||||
</option>
|
||||
<option id="34034" name="preludeofwar_artifact_opt">
|
||||
<!-- Skill MP Consumption -2% -->
|
||||
<passive_skill id="35378" level="3" /><!-- Artifact - MP Consumption -->
|
||||
</option>
|
||||
<option id="34035" name="preludeofwar_artifact_opt">
|
||||
<!-- Skill MP Consumption -3% -->
|
||||
<passive_skill id="35378" level="4" /><!-- Artifact - MP Consumption -->
|
||||
</option>
|
||||
<option id="34036" name="preludeofwar_artifact_opt">
|
||||
<!-- Skill MP Consumption -5% -->
|
||||
<passive_skill id="35378" level="5" /><!-- Artifact - MP Consumption -->
|
||||
</option>
|
||||
<option id="34037" name="preludeofwar_artifact_opt">
|
||||
<!-- Skill MP Consumption -7% -->
|
||||
<passive_skill id="35378" level="6" /><!-- Artifact - MP Consumption -->
|
||||
</option>
|
||||
<option id="34038" name="preludeofwar_artifact_opt">
|
||||
<!-- Skill MP Consumption -9% -->
|
||||
<passive_skill id="35378" level="7" /><!-- Artifact - MP Consumption -->
|
||||
</option>
|
||||
<option id="34039" name="preludeofwar_artifact_opt">
|
||||
<!-- Skill MP Consumption -11% -->
|
||||
<passive_skill id="35378" level="8" /><!-- Artifact - MP Consumption -->
|
||||
</option>
|
||||
<option id="34040" name="preludeofwar_artifact_opt">
|
||||
<!-- Skill MP Consumption -14% -->
|
||||
<passive_skill id="35378" level="9" /><!-- Artifact - MP Consumption -->
|
||||
</option>
|
||||
<option id="34041" name="preludeofwar_artifact_opt">
|
||||
<!-- Skill MP Consumption -17% -->
|
||||
<passive_skill id="35378" level="10" /><!-- Artifact - MP Consumption -->
|
||||
</option>
|
||||
<option id="34042" name="preludeofwar_artifact_opt">
|
||||
<!-- Skill MP Consumption -20% -->
|
||||
<passive_skill id="35378" level="11" /><!-- Artifact - MP Consumption -->
|
||||
</option>
|
||||
<option id="34043" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Def. increases when enchanted -->
|
||||
<passive_skill id="35382" level="1" /><!-- Artifact - P. Def. -->
|
||||
</option>
|
||||
<option id="34044" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Def. +1% -->
|
||||
<passive_skill id="35382" level="2" /><!-- Artifact - P. Def. -->
|
||||
</option>
|
||||
<option id="34045" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Def. +2% -->
|
||||
<passive_skill id="35382" level="3" /><!-- Artifact - P. Def. -->
|
||||
</option>
|
||||
<option id="34046" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Def. +3% -->
|
||||
<passive_skill id="35382" level="4" /><!-- Artifact - P. Def. -->
|
||||
</option>
|
||||
<option id="34047" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Def. +5% -->
|
||||
<passive_skill id="35382" level="5" /><!-- Artifact - P. Def. -->
|
||||
</option>
|
||||
<option id="34048" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Def. +6% -->
|
||||
<passive_skill id="35382" level="6" /><!-- Artifact - P. Def. -->
|
||||
</option>
|
||||
<option id="34049" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Def. +7% -->
|
||||
<passive_skill id="35382" level="7" /><!-- Artifact - P. Def. -->
|
||||
</option>
|
||||
<option id="34050" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Def. +9% -->
|
||||
<passive_skill id="35382" level="8" /><!-- Artifact - P. Def. -->
|
||||
</option>
|
||||
<option id="34051" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Def. +11% -->
|
||||
<passive_skill id="35382" level="9" /><!-- Artifact - P. Def. -->
|
||||
</option>
|
||||
<option id="34052" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Def. +13% -->
|
||||
<passive_skill id="35382" level="10" /><!-- Artifact - P. Def. -->
|
||||
</option>
|
||||
<option id="34053" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Def. +15% -->
|
||||
<passive_skill id="35382" level="11" /><!-- Artifact - P. Def. -->
|
||||
</option>
|
||||
<option id="34054" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Def. increases when enchanted -->
|
||||
<passive_skill id="35383" level="1" /><!-- Artifact - M. Def. -->
|
||||
</option>
|
||||
<option id="34055" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Def. +1% -->
|
||||
<passive_skill id="35383" level="2" /><!-- Artifact - M. Def. -->
|
||||
</option>
|
||||
<option id="34056" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Def. +2% -->
|
||||
<passive_skill id="35383" level="3" /><!-- Artifact - M. Def. -->
|
||||
</option>
|
||||
<option id="34057" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Def. +3% -->
|
||||
<passive_skill id="35383" level="4" /><!-- Artifact - M. Def. -->
|
||||
</option>
|
||||
<option id="34058" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Def. +5% -->
|
||||
<passive_skill id="35383" level="5" /><!-- Artifact - M. Def. -->
|
||||
</option>
|
||||
<option id="34059" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Def. +6% -->
|
||||
<passive_skill id="35383" level="6" /><!-- Artifact - M. Def. -->
|
||||
</option>
|
||||
<option id="34060" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Def. +7% -->
|
||||
<passive_skill id="35383" level="7" /><!-- Artifact - M. Def. -->
|
||||
</option>
|
||||
<option id="34061" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Def. +9% -->
|
||||
<passive_skill id="35383" level="8" /><!-- Artifact - M. Def. -->
|
||||
</option>
|
||||
<option id="34062" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Def. +11% -->
|
||||
<passive_skill id="35383" level="9" /><!-- Artifact - M. Def. -->
|
||||
</option>
|
||||
<option id="34063" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Def. +13% -->
|
||||
<passive_skill id="35383" level="10" /><!-- Artifact - M. Def. -->
|
||||
</option>
|
||||
<option id="34064" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Def. +15% -->
|
||||
<passive_skill id="35383" level="11" /><!-- Artifact - M. Def. -->
|
||||
</option>
|
||||
<option id="34065" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage increases when enchanted -->
|
||||
<passive_skill id="35384" level="1" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="34066" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +1% -->
|
||||
<passive_skill id="35384" level="2" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="34067" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +1% -->
|
||||
<passive_skill id="35384" level="3" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="34068" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +2% -->
|
||||
<passive_skill id="35384" level="4" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="34069" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +3% -->
|
||||
<passive_skill id="35384" level="5" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="34070" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +4% -->
|
||||
<passive_skill id="35384" level="6" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="34071" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +5% -->
|
||||
<passive_skill id="35384" level="7" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="34072" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +6% -->
|
||||
<passive_skill id="35384" level="8" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="34073" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +7% -->
|
||||
<passive_skill id="35384" level="9" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="34074" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +8% -->
|
||||
<passive_skill id="35384" level="10" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="34075" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Critical Damage +10% -->
|
||||
<passive_skill id="35384" level="11" /><!-- Artifact - P. Critical Damage -->
|
||||
</option>
|
||||
<option id="34076" name="preludeofwar_artifact_opt">
|
||||
<!-- When enchanting, increases P. Skill Critical Damage. -->
|
||||
<passive_skill id="35385" level="1" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34077" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage +1% -->
|
||||
<passive_skill id="35385" level="2" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34078" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage +1% -->
|
||||
<passive_skill id="35385" level="3" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34079" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage +2% -->
|
||||
<passive_skill id="35385" level="4" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34080" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage +3% -->
|
||||
<passive_skill id="35385" level="5" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34081" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage +4% -->
|
||||
<passive_skill id="35385" level="6" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34082" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage +5% -->
|
||||
<passive_skill id="35385" level="7" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34083" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage +6% -->
|
||||
<passive_skill id="35385" level="8" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34084" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage +7% -->
|
||||
<passive_skill id="35385" level="9" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34085" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage +8% -->
|
||||
<passive_skill id="35385" level="10" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34086" name="preludeofwar_artifact_opt">
|
||||
<!-- P. Skill Critical Damage +10% -->
|
||||
<passive_skill id="35385" level="11" /><!-- Artifact - P. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34087" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage increases when enchanted -->
|
||||
<passive_skill id="35386" level="1" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34088" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage +1% -->
|
||||
<passive_skill id="35386" level="2" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34089" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage +1% -->
|
||||
<passive_skill id="35386" level="3" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34090" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage +2% -->
|
||||
<passive_skill id="35386" level="4" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34091" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage +3% -->
|
||||
<passive_skill id="35386" level="5" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34092" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage +4% -->
|
||||
<passive_skill id="35386" level="6" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34093" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage +5% -->
|
||||
<passive_skill id="35386" level="7" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34094" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage +6% -->
|
||||
<passive_skill id="35386" level="8" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34095" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage +7% -->
|
||||
<passive_skill id="35386" level="9" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34096" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage +8% -->
|
||||
<passive_skill id="35386" level="10" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34097" name="preludeofwar_artifact_opt">
|
||||
<!-- M. Skill Critical Damage +10% -->
|
||||
<passive_skill id="35386" level="11" /><!-- Artifact - M. Skill Critical Damage -->
|
||||
</option>
|
||||
<option id="34098" name="preludeofwar_artifact_opt">
|
||||
<!-- Atk. Spd. increases when enchanted -->
|
||||
<passive_skill id="35387" level="1" /><!-- Artifact - Atk. Spd. -->
|
||||
</option>
|
||||
<option id="34099" name="preludeofwar_artifact_opt">
|
||||
<!-- Atk. Spd. +1% -->
|
||||
<passive_skill id="35387" level="2" /><!-- Artifact - Atk. Spd. -->
|
||||
</option>
|
||||
</list>
|
296
L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/augmentation/options/34100-34199.xml
vendored
Normal file
296
L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/augmentation/options/34100-34199.xml
vendored
Normal file
@@ -0,0 +1,296 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../xsd/optionsData.xsd">
|
||||
<option id="34100" name="preludeofwar_artifact_opt">
|
||||
<!-- Atk. Spd. +1% -->
|
||||
<passive_skill id="35387" level="3" /><!-- Artifact - Atk. Spd. -->
|
||||
</option>
|
||||
<option id="34101" name="preludeofwar_artifact_opt">
|
||||
<!-- Atk. Spd. +2% -->
|
||||
<passive_skill id="35387" level="4" /><!-- Artifact - Atk. Spd. -->
|
||||
</option>
|
||||
<option id="34102" name="preludeofwar_artifact_opt">
|
||||
<!-- Atk. Spd. +3% -->
|
||||
<passive_skill id="35387" level="5" /><!-- Artifact - Atk. Spd. -->
|
||||
</option>
|
||||
<option id="34103" name="preludeofwar_artifact_opt">
|
||||
<!-- Atk. Spd. +4% -->
|
||||
<passive_skill id="35387" level="6" /><!-- Artifact - Atk. Spd. -->
|
||||
</option>
|
||||
<option id="34104" name="preludeofwar_artifact_opt">
|
||||
<!-- Atk. Spd. +5% -->
|
||||
<passive_skill id="35387" level="7" /><!-- Artifact - Atk. Spd. -->
|
||||
</option>
|
||||
<option id="34105" name="preludeofwar_artifact_opt">
|
||||
<!-- Atk. Spd. +6% -->
|
||||
<passive_skill id="35387" level="8" /><!-- Artifact - Atk. Spd. -->
|
||||
</option>
|
||||
<option id="34106" name="preludeofwar_artifact_opt">
|
||||
<!-- Atk. Spd. +7% -->
|
||||
<passive_skill id="35387" level="9" /><!-- Artifact - Atk. Spd. -->
|
||||
</option>
|
||||
<option id="34107" name="preludeofwar_artifact_opt">
|
||||
<!-- Atk. Spd. +8% -->
|
||||
<passive_skill id="35387" level="10" /><!-- Artifact - Atk. Spd. -->
|
||||
</option>
|
||||
<option id="34108" name="preludeofwar_artifact_opt">
|
||||
<!-- Atk. Spd. +10% -->
|
||||
<passive_skill id="35387" level="11" /><!-- Artifact - Atk. Spd. -->
|
||||
</option>
|
||||
<option id="34109" name="preludeofwar_artifact_opt">
|
||||
<!-- Casting Spd. increases when enchanted -->
|
||||
<passive_skill id="35388" level="1" /><!-- Artifact - Casting Spd. -->
|
||||
</option>
|
||||
<option id="34110" name="preludeofwar_artifact_opt">
|
||||
<!-- Casting Spd. + 1% -->
|
||||
<passive_skill id="35388" level="2" /><!-- Artifact - Casting Spd. -->
|
||||
</option>
|
||||
<option id="34111" name="preludeofwar_artifact_opt">
|
||||
<!-- Casting Spd. + 1% -->
|
||||
<passive_skill id="35388" level="3" /><!-- Artifact - Casting Spd. -->
|
||||
</option>
|
||||
<option id="34112" name="preludeofwar_artifact_opt">
|
||||
<!-- Casting Spd. + 2% -->
|
||||
<passive_skill id="35388" level="4" /><!-- Artifact - Casting Spd. -->
|
||||
</option>
|
||||
<option id="34113" name="preludeofwar_artifact_opt">
|
||||
<!-- Casting Spd. + 3% -->
|
||||
<passive_skill id="35388" level="5" /><!-- Artifact - Casting Spd. -->
|
||||
</option>
|
||||
<option id="34114" name="preludeofwar_artifact_opt">
|
||||
<!-- Casting Spd. + 4% -->
|
||||
<passive_skill id="35388" level="6" /><!-- Artifact - Casting Spd. -->
|
||||
</option>
|
||||
<option id="34115" name="preludeofwar_artifact_opt">
|
||||
<!-- Casting Spd. + 5% -->
|
||||
<passive_skill id="35388" level="7" /><!-- Artifact - Casting Spd. -->
|
||||
</option>
|
||||
<option id="34116" name="preludeofwar_artifact_opt">
|
||||
<!-- Casting Spd. + 6% -->
|
||||
<passive_skill id="35388" level="8" /><!-- Artifact - Casting Spd. -->
|
||||
</option>
|
||||
<option id="34117" name="preludeofwar_artifact_opt">
|
||||
<!-- Casting Spd. + 7% -->
|
||||
<passive_skill id="35388" level="9" /><!-- Artifact - Casting Spd. -->
|
||||
</option>
|
||||
<option id="34118" name="preludeofwar_artifact_opt">
|
||||
<!-- Casting Spd. + 8% -->
|
||||
<passive_skill id="35388" level="10" /><!-- Artifact - Casting Spd. -->
|
||||
</option>
|
||||
<option id="34119" name="preludeofwar_artifact_opt">
|
||||
<!-- Casting Spd. + 10% -->
|
||||
<passive_skill id="35388" level="11" /><!-- Artifact - Casting Spd. -->
|
||||
</option>
|
||||
<option id="34120" name="preludeofwar_kaliel_bracelet_opt">
|
||||
<!-- CON&MEN +1 -->
|
||||
<passive_skill id="35524" level="1" /><!-- Kaliel's Bracelet -->
|
||||
</option>
|
||||
<option id="34121" name="preludeofwar_kaliel_bracelet_opt">
|
||||
<!-- CON&MEN&DEX&WIT +1 / Max HP +100 -->
|
||||
<passive_skill id="35524" level="2" /><!-- Kaliel's Bracelet -->
|
||||
</option>
|
||||
<option id="34122" name="preludeofwar_kaliel_bracelet_opt">
|
||||
<!-- CON&MEN&DEX&WIT&STR&INT +1 / Max HP +200 -->
|
||||
<passive_skill id="35524" level="3" /><!-- Kaliel's Bracelet -->
|
||||
</option>
|
||||
<option id="34123" name="preludeofwar_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +300 -->
|
||||
<passive_skill id="35524" level="4" /><!-- Kaliel's Bracelet -->
|
||||
</option>
|
||||
<option id="34124" name="preludeofwar_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +400 -->
|
||||
<passive_skill id="35524" level="5" /><!-- Kaliel's Bracelet -->
|
||||
</option>
|
||||
<option id="34125" name="preludeofwar_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +500 -->
|
||||
<passive_skill id="35524" level="6" /><!-- Kaliel's Bracelet -->
|
||||
</option>
|
||||
<option id="34126" name="preludeofwar_greater_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +500 -->
|
||||
<passive_skill id="35525" level="1" /><!-- Kaliel's Greater Bracelet -->
|
||||
</option>
|
||||
<option id="34127" name="preludeofwar_greater_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +500 / P./M. Def. +1% -->
|
||||
<passive_skill id="35525" level="2" /><!-- Kaliel's Greater Bracelet -->
|
||||
</option>
|
||||
<option id="34128" name="preludeofwar_greater_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +500 / P./M. Def. +1% / P./M. Atk. +1% -->
|
||||
<passive_skill id="35525" level="3" /><!-- Kaliel's Greater Bracelet -->
|
||||
</option>
|
||||
<option id="34129" name="preludeofwar_greater_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +500 / P./M. Def. +2% / P./M. Atk. +1% -->
|
||||
<passive_skill id="35525" level="4" /><!-- Kaliel's Greater Bracelet -->
|
||||
</option>
|
||||
<option id="34130" name="preludeofwar_greater_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +500 / P./M. Def. +2% / P./M. Atk. +2% -->
|
||||
<passive_skill id="35525" level="5" /><!-- Kaliel's Greater Bracelet -->
|
||||
</option>
|
||||
<option id="34131" name="preludeofwar_greater_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +500 / P./M. Def. +3% / P./M. Atk. +3% -->
|
||||
<passive_skill id="35525" level="6" /><!-- Kaliel's Greater Bracelet -->
|
||||
</option>
|
||||
<option id="34132" name="preludeofwar_top_grade_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +1000 / P./M. Def. +3% / P./M. Atk. +3 -->
|
||||
<passive_skill id="35526" level="1" /><!-- Kaliel's Top Grade Bracelet -->
|
||||
</option>
|
||||
<option id="34133" name="preludeofwar_top_grade_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +1000 / P./M. Def. +4% / P./M. Atk. +3% -->
|
||||
<passive_skill id="35526" level="2" /><!-- Kaliel's Top Grade Bracelet -->
|
||||
</option>
|
||||
<option id="34134" name="preludeofwar_top_grade_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +1000 / P./M. Def. +4% / P./M. Atk. +4% -->
|
||||
<passive_skill id="35526" level="3" /><!-- Kaliel's Top Grade Bracelet -->
|
||||
</option>
|
||||
<option id="34135" name="preludeofwar_top_grade_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +1000 / P./M. Def. +5% / P./M. Atk. +5% -->
|
||||
<passive_skill id="35526" level="4" /><!-- Kaliel's Top Grade Bracelet -->
|
||||
</option>
|
||||
<option id="34136" name="preludeofwar_top_grade_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +1000 / P./M. Def. +6% / P./M. Atk. +6% -->
|
||||
<passive_skill id="35526" level="5" /><!-- Kaliel's Top Grade Bracelet -->
|
||||
</option>
|
||||
<option id="34137" name="preludeofwar_top_grade_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +1000 / P./M. Def. +7% / P./M. Atk. +7%\nActive Skill: Kaliel's Protection / Cooldown: 40 minutes / Creates a barrier that absorbs 75000 damage for 15 seconds -->
|
||||
<active_skill id="30818" level="1" /> <!-- Kaliel's Protection -->
|
||||
<passive_skill id="35526" level="6" /><!-- Kaliel's Top Grade Bracelet -->
|
||||
</option>
|
||||
<option id="34138" name="preludeofwar_top_grade_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +1000 / P./M. Def. +8% / P./M. Atk. +7%\nActive Skill: Kaliel's Protection / Cooldown: 35 minutes / Creates a barrier that absorbs 75000 damage for 15 seconds -->
|
||||
<active_skill id="30818" level="2" /> <!-- Kaliel's Protection -->
|
||||
<passive_skill id="35526" level="7" /><!-- Kaliel's Top Grade Bracelet -->
|
||||
</option>
|
||||
<option id="34139" name="preludeofwar_top_grade_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +1000 / P./M. Def. +8% / P./M. Atk. +8%\nActive Skill: Kaliel's Protection / Cooldown: 30 minutes / Creates a barrier that absorbs 75000 damage for 15 seconds -->
|
||||
<active_skill id="30818" level="3" /> <!-- Kaliel's Protection -->
|
||||
<passive_skill id="35526" level="8" /><!-- Kaliel's Top Grade Bracelet -->
|
||||
</option>
|
||||
<option id="34140" name="preludeofwar_top_grade_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +1000 / P./M. Def. +9% / P./M. Atk. +8%\nActive Skill: Kaliel's Protection / Cooldown: 20 minutes / Creates a barrier that absorbs 75000 damage for 15 seconds -->
|
||||
<active_skill id="30818" level="4" /> <!-- Kaliel's Protection -->
|
||||
<passive_skill id="35526" level="9" /><!-- Kaliel's Top Grade Bracelet -->
|
||||
</option>
|
||||
<option id="34141" name="preludeofwar_top_grade_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +1000 / P./M. Def. +9% / P./M. Atk. +9%\nActive Skill: Kaliel's Protection / Cooldown: 15 minutes / Creates a barrier that absorbs 75000 damage for 15 seconds -->
|
||||
<active_skill id="30818" level="5" /> <!-- Kaliel's Protection -->
|
||||
<passive_skill id="35526" level="10" /><!-- Kaliel's Top Grade Bracelet -->
|
||||
</option>
|
||||
<option id="34142" name="preludeofwar_top_grade_kaliel_bracelet_opt">
|
||||
<!-- All Stats +1 / Max HP +1000 / P./M. Def. +10% / P./M. Atk. +10%\nActive Skill: Kaliel's Protection / Cooldown: 5 minutes / Creates a barrier that absorbs 75000 damage for 15 seconds -->
|
||||
<active_skill id="30818" level="6" /> <!-- Kaliel's Protection -->
|
||||
<passive_skill id="35526" level="11" /><!-- Kaliel's Top Grade Bracelet -->
|
||||
</option>
|
||||
<option id="34143" name="preludeofwar_unk_opt">
|
||||
<!-- Reach the highest enchantment level and become a master! -->
|
||||
</option>
|
||||
<option id="34144" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34145" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34146" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34147" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34148" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34149" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34150" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34151" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34152" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34153" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34154" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34155" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34156" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34157" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34158" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34159" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34160" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34161" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34162" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34163" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34164" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34165" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34166" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34167" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34168" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34169" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34170" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34171" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34172" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34173" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34174" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34175" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34176" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34177" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34178" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34179" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34180" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34181" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34182" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34183" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34184" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34185" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34186" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34187" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34188" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34189" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34190" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34191" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34192" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34193" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34194" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34195" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34196" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34197" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34198" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
<option id="34199" name="preludeofwar_unk_opt">
|
||||
</option>
|
||||
</list>
|
83
L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/items/80600-80699.xml
vendored
Normal file
83
L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/items/80600-80699.xml
vendored
Normal file
@@ -0,0 +1,83 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../xsd/items.xsd">
|
||||
<item id="80647" name="Artifact - Normal Attack Critical Damage" additionalName="Fighting Spirit" type="Armor">
|
||||
<set name="default_action" val="EQUIP" />
|
||||
<set name="bodypart" val="artifact" />
|
||||
<set name="is_sellable" val="false" />
|
||||
</item>
|
||||
<item id="80648" name="Artifact - P. Skill Critical Damage" additionalName="Fighting Spirit" type="Armor">
|
||||
<set name="default_action" val="EQUIP" />
|
||||
<set name="bodypart" val="artifact" />
|
||||
<set name="is_sellable" val="false" />
|
||||
</item>
|
||||
<item id="80649" name="Artifact - M. Skill Critical Damage" additionalName="Fighting Spirit" type="Armor">
|
||||
<set name="default_action" val="EQUIP" />
|
||||
<set name="bodypart" val="artifact" />
|
||||
<set name="is_sellable" val="false" />
|
||||
</item>
|
||||
<item id="80650" name="Artifact - Bow Resistance" additionalName="Protection" type="Armor">
|
||||
<set name="default_action" val="EQUIP" />
|
||||
<set name="bodypart" val="artifact" />
|
||||
<set name="is_sellable" val="false" />
|
||||
</item>
|
||||
<item id="80651" name="Artifact - Dagger Resistance" additionalName="Protection" type="Armor">
|
||||
<set name="default_action" val="EQUIP" />
|
||||
<set name="bodypart" val="artifact" />
|
||||
<set name="is_sellable" val="false" />
|
||||
</item>
|
||||
<item id="80652" name="Artifact - Sword Resistance" additionalName="Protection" type="Armor">
|
||||
<set name="default_action" val="EQUIP" />
|
||||
<set name="bodypart" val="artifact" />
|
||||
<set name="is_sellable" val="false" />
|
||||
</item>
|
||||
<item id="80653" name="Artifact - Vitality Bonus" additionalName="Support" type="Armor">
|
||||
<set name="default_action" val="EQUIP" />
|
||||
<set name="bodypart" val="artifact" />
|
||||
<set name="is_sellable" val="false" />
|
||||
</item>
|
||||
<item id="80654" name="Artifact - Vitality Consumption Rate Reduction" additionalName="Support" type="Armor">
|
||||
<set name="default_action" val="EQUIP" />
|
||||
<set name="bodypart" val="artifact" />
|
||||
<set name="is_sellable" val="false" />
|
||||
</item>
|
||||
<item id="80655" name="Artifact - Skill MP Consumption Reduction" additionalName="Support" type="Armor">
|
||||
<set name="default_action" val="EQUIP" />
|
||||
<set name="bodypart" val="artifact" />
|
||||
<set name="is_sellable" val="false" />
|
||||
</item>
|
||||
<item id="80656" name="Artifact - P. Def." additionalName="Balance" type="Armor">
|
||||
<set name="default_action" val="EQUIP" />
|
||||
<set name="bodypart" val="artifact" />
|
||||
<set name="is_sellable" val="false" />
|
||||
</item>
|
||||
<item id="80657" name="Artifact - M. Def." additionalName="Balance" type="Armor">
|
||||
<set name="default_action" val="EQUIP" />
|
||||
<set name="bodypart" val="artifact" />
|
||||
<set name="is_sellable" val="false" />
|
||||
</item>
|
||||
<item id="80658" name="Artifact - Normal Attack Critical Damage" additionalName="Balance" type="Armor">
|
||||
<set name="default_action" val="EQUIP" />
|
||||
<set name="bodypart" val="artifact" />
|
||||
<set name="is_sellable" val="false" />
|
||||
</item>
|
||||
<item id="80659" name="Artifact - P. Skill Critical Damage" additionalName="Balance" type="Armor">
|
||||
<set name="default_action" val="EQUIP" />
|
||||
<set name="bodypart" val="artifact" />
|
||||
<set name="is_sellable" val="false" />
|
||||
</item>
|
||||
<item id="80660" name="Artifact - M. Skill Critical Damage" additionalName="Balance" type="Armor">
|
||||
<set name="default_action" val="EQUIP" />
|
||||
<set name="bodypart" val="artifact" />
|
||||
<set name="is_sellable" val="false" />
|
||||
</item>
|
||||
<item id="80661" name="Artifact - Atk. Spd." additionalName="Balance" type="Armor">
|
||||
<set name="default_action" val="EQUIP" />
|
||||
<set name="bodypart" val="artifact" />
|
||||
<set name="is_sellable" val="false" />
|
||||
</item>
|
||||
<item id="80662" name="Artifact - Casting Spd." additionalName="Balance" type="Armor">
|
||||
<set name="default_action" val="EQUIP" />
|
||||
<set name="bodypart" val="artifact" />
|
||||
<set name="is_sellable" val="false" />
|
||||
</item>
|
||||
</list>
|
60
L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/items/80800-80899.xml
vendored
Normal file
60
L2J_Mobius_7.0_PreludeOfWar/dist/game/data/stats/items/80800-80899.xml
vendored
Normal file
@@ -0,0 +1,60 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../xsd/items.xsd">
|
||||
<item id="80835" name="Kaliel's Bracelet" type="Armor">
|
||||
<!-- Kaliel's Bracelet\nActivates 5 talisman slots when equipped\n\n<Upgrade Condition>\nCan be upgraded to Kaliel's Greater Bracelet when enchanted to +5. -->
|
||||
<set name="default_action" val="EQUIP" />
|
||||
<set name="crystal_type" val="R" />
|
||||
<set name="weight" val="150" />
|
||||
<set name="is_sellable" val="false" />
|
||||
<set name="bodypart" val="rbracelet" />
|
||||
<set name="immediate_effect" val="true" />
|
||||
<set name="commissionItemType" val="BRACELET" />
|
||||
<skills>
|
||||
<skill id="35524" level="1" /> <!-- Kaliel's Bracelet -->
|
||||
</skills>
|
||||
</item>
|
||||
<item id="80836" name="Kaliel's Greater Bracelet" type="Armor">
|
||||
<!-- Kaliel's Greater Bracelet\nActivates 6 talisman slots when equipped.\n\n<Upgrade Condition>\nCan be upgraded to Kaliel's Top-grade Bracelet when enchanted to +5. -->
|
||||
<set name="default_action" val="EQUIP" />
|
||||
<set name="crystal_type" val="R" />
|
||||
<set name="weight" val="150" />
|
||||
<set name="is_sellable" val="false" />
|
||||
<set name="bodypart" val="rbracelet" />
|
||||
<set name="immediate_effect" val="true" />
|
||||
<set name="commissionItemType" val="BRACELET" />
|
||||
<skills>
|
||||
<skill id="35525" level="1" /> <!-- Kaliel's Greater Bracelet -->
|
||||
</skills>
|
||||
</item>
|
||||
<item id="80837" name="Kaliel's Top-grade Bracelet" type="Armor">
|
||||
<!-- Kaliel's Top-grade Bracelet\nActivates 6 talisman slots when equipped. -->
|
||||
<set name="default_action" val="EQUIP" />
|
||||
<set name="crystal_type" val="R" />
|
||||
<set name="weight" val="150" />
|
||||
<set name="is_sellable" val="false" />
|
||||
<set name="bodypart" val="rbracelet" />
|
||||
<set name="immediate_effect" val="true" />
|
||||
<set name="commissionItemType" val="BRACELET" />
|
||||
<skills>
|
||||
<skill id="35526" level="1" /> <!-- Kaliel's Top Grade Bracelet -->
|
||||
</skills>
|
||||
</item>
|
||||
<item id="80838" name="Enchant Scroll: Blessed Bracelet" type="EtcItem">
|
||||
<!-- Enchant scroll to enchant Kaliel's Bracelet. If it fails, the enchantment level of the bracelet will be reset. -->
|
||||
<set name="default_action" val="SKILL_REDUCE" />
|
||||
<set name="etcitem_type" val="ENCHT_ATTR_ANCIENT_CRYSTAL_ENCHANT_AM" />
|
||||
<set name="immediate_effect" val="true" />
|
||||
<set name="material" val="PAPER" />
|
||||
<set name="is_tradable" val="false" />
|
||||
<set name="is_dropable" val="false" />
|
||||
<set name="is_stackable" val="true" />
|
||||
<set name="is_premium" val="true" />
|
||||
<set name="is_oly_restricted" val="true" />
|
||||
<set name="handler" val="EnchantScrolls" />
|
||||
<set name="is_commissionable" val="false" />
|
||||
<set name="is_private_storeable" val="false" />
|
||||
<skills>
|
||||
<skill id="39527" level="1" /> <!-- Enchant Scroll: Blessed Bracelet -->
|
||||
</skills>
|
||||
</item>
|
||||
</list>
|
@@ -2449,23 +2449,6 @@
|
||||
</magicLvl>
|
||||
<operateType>P</operateType>
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<effects>
|
||||
<effect name="RemoveEquipPenalty">
|
||||
<grade>
|
||||
<value level="1">D</value>
|
||||
<value level="2">C</value>
|
||||
<value level="3">B</value>
|
||||
<value level="4">A</value>
|
||||
<value level="5">S</value>
|
||||
<value level="6">S80</value>
|
||||
<value level="7">S84</value>
|
||||
<value level="8">R</value>
|
||||
<value level="9">R95</value>
|
||||
<value level="10">R99</value>
|
||||
<value level="11">R110</value>
|
||||
</grade>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="244" toLevel="3" name="Armor Mastery">
|
||||
<!-- Increases P. Def. by $s1. -->
|
||||
|
@@ -1910,11 +1910,6 @@
|
||||
<passiveConditions>
|
||||
<condition name="OpNotOlympiad" />
|
||||
</passiveConditions>
|
||||
<effects>
|
||||
<effect name="CrystalGradeModify">
|
||||
<grade>1</grade>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="17570" toLevel="1" name="Expertise Rune (C-grade)">
|
||||
<!-- When stored in the inventory, it enables you to equip C-grade items without any penalty. -->
|
||||
@@ -1925,11 +1920,6 @@
|
||||
<passiveConditions>
|
||||
<condition name="OpNotOlympiad" />
|
||||
</passiveConditions>
|
||||
<effects>
|
||||
<effect name="CrystalGradeModify">
|
||||
<grade>2</grade>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="17571" toLevel="1" name="Expertise Rune (B-grade)">
|
||||
<!-- When stored in the inventory, it enables you to equip B-grade items without any penalty. -->
|
||||
@@ -1940,11 +1930,6 @@
|
||||
<passiveConditions>
|
||||
<condition name="OpNotOlympiad" />
|
||||
</passiveConditions>
|
||||
<effects>
|
||||
<effect name="CrystalGradeModify">
|
||||
<grade>3</grade>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="17572" toLevel="1" name="Expertise Rune (A-grade)">
|
||||
<!-- When stored in the inventory, it enables you to equip A-grade items without any penalty. -->
|
||||
@@ -1955,11 +1940,6 @@
|
||||
<passiveConditions>
|
||||
<condition name="OpNotOlympiad" />
|
||||
</passiveConditions>
|
||||
<effects>
|
||||
<effect name="CrystalGradeModify">
|
||||
<grade>4</grade>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="17573" toLevel="1" name="Expertise Rune (S-grade)">
|
||||
<!-- When stored in the inventory, it enables you to equip S-grade items without any penalty. -->
|
||||
@@ -1970,11 +1950,6 @@
|
||||
<passiveConditions>
|
||||
<condition name="OpNotOlympiad" />
|
||||
</passiveConditions>
|
||||
<effects>
|
||||
<effect name="CrystalGradeModify">
|
||||
<grade>5</grade>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="17574" toLevel="1" name="Expertise Rune (S80-grade)">
|
||||
<!-- When stored in the inventory, it enables you to equip S80-grade items without any penalty. -->
|
||||
@@ -1985,11 +1960,6 @@
|
||||
<passiveConditions>
|
||||
<condition name="OpNotOlympiad" />
|
||||
</passiveConditions>
|
||||
<effects>
|
||||
<effect name="CrystalGradeModify">
|
||||
<grade>6</grade>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="17575" toLevel="1" name="Expertise Rune (R-grade)">
|
||||
<!-- When stored in the inventory, it enables you to equip R-grade items without any penalty. -->
|
||||
@@ -2000,11 +1970,6 @@
|
||||
<passiveConditions>
|
||||
<condition name="OpNotOlympiad" />
|
||||
</passiveConditions>
|
||||
<effects>
|
||||
<effect name="CrystalGradeModify">
|
||||
<grade>8</grade>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="17576" toLevel="1" name="Expertise Rune (R95-grade)">
|
||||
<!-- When stored in the inventory, it enables you to equip R95-grade items without any penalty. -->
|
||||
@@ -2015,11 +1980,6 @@
|
||||
<passiveConditions>
|
||||
<condition name="OpNotOlympiad" />
|
||||
</passiveConditions>
|
||||
<effects>
|
||||
<effect name="CrystalGradeModify">
|
||||
<grade>9</grade>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="17577" toLevel="1" name="Expertise Rune (R99-grade)">
|
||||
<!-- When stored in the inventory, it enables you to equip R99-grade items without any penalty. -->
|
||||
@@ -2030,11 +1990,6 @@
|
||||
<passiveConditions>
|
||||
<condition name="OpNotOlympiad" />
|
||||
</passiveConditions>
|
||||
<effects>
|
||||
<effect name="CrystalGradeModify">
|
||||
<grade>10</grade>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="17578" toLevel="1" name="Blue Mackerel Appearance Stone: One-handed Sword (30-day)">
|
||||
<operateType>A1</operateType>
|
||||
|
@@ -1241,14 +1241,6 @@
|
||||
<passiveConditions>
|
||||
<condition name="OpNotOlympiad" />
|
||||
</passiveConditions>
|
||||
<effects>
|
||||
<effect name="CrystalGradeModify">
|
||||
<amount>
|
||||
<value level="1">3</value>
|
||||
<value level="2">5</value>
|
||||
</amount>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="22042" toLevel="1" name="Greater CP Potion">
|
||||
<blockedInOlympiad>true</blockedInOlympiad>
|
||||
|
@@ -1290,17 +1290,6 @@
|
||||
<passiveConditions>
|
||||
<condition name="OpNotOlympiad" />
|
||||
</passiveConditions>
|
||||
<effects>
|
||||
<effect name="CrystalGradeModify">
|
||||
<amount>
|
||||
<value level="1">1</value>
|
||||
<value level="2">2</value>
|
||||
<value level="3">3</value>
|
||||
<value level="4">4</value>
|
||||
<value level="5">5</value>
|
||||
</amount>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="26049" toLevel="1" name="Rune of Feather">
|
||||
<!-- Increases your Weight Limit by 20%. -->
|
||||
|
@@ -461,10 +461,5 @@
|
||||
<passiveConditions>
|
||||
<condition name="OpNotOlympiad" />
|
||||
</passiveConditions>
|
||||
<effects>
|
||||
<effect name="CrystalGradeModify">
|
||||
<amount>11</amount>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
</list>
|
||||
|
@@ -28,6 +28,13 @@
|
||||
<amount>2</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
<effect name="HitNumber">
|
||||
<amount>15</amount>
|
||||
<mode>DIFF</mode>
|
||||
<weaponType>
|
||||
<item>POLE</item>
|
||||
</weaponType>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="35302" toLevel="1" name="Special Ability Krishna Dual Sword">
|
||||
@@ -75,6 +82,10 @@
|
||||
<amount>2</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
<effect name="VampiricAttack">
|
||||
<amount>2</amount>
|
||||
<chance>80</chance>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="35305" toLevel="1" name="Special Ability Krishna Thrower">
|
||||
@@ -172,12 +183,9 @@
|
||||
<effect name="PAtk">
|
||||
<amount>
|
||||
<value level="1">1</value>
|
||||
<value level="1">2</value>
|
||||
<value level="1">3</value>
|
||||
<value level="1">4</value>
|
||||
<value level="2">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="3">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="4">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="2">2</value>
|
||||
<value level="3">3</value>
|
||||
<value level="4">4</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
@@ -193,12 +201,9 @@
|
||||
<effect name="PhysicalDefence">
|
||||
<amount>
|
||||
<value level="1">1</value>
|
||||
<value level="1">2</value>
|
||||
<value level="1">3</value>
|
||||
<value level="1">4</value>
|
||||
<value level="2">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="3">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="4">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="2">2</value>
|
||||
<value level="3">3</value>
|
||||
<value level="4">4</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
@@ -214,12 +219,9 @@
|
||||
<effect name="CriticalRate">
|
||||
<amount>
|
||||
<value level="1">1</value>
|
||||
<value level="1">2</value>
|
||||
<value level="1">3</value>
|
||||
<value level="1">4</value>
|
||||
<value level="2">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="3">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="4">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="2">2</value>
|
||||
<value level="3">3</value>
|
||||
<value level="4">4</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
@@ -235,12 +237,9 @@
|
||||
<effect name="PhysicalAttackSpeed">
|
||||
<amount>
|
||||
<value level="1">1</value>
|
||||
<value level="1">2</value>
|
||||
<value level="1">3</value>
|
||||
<value level="1">4</value>
|
||||
<value level="2">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="3">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="4">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="2">2</value>
|
||||
<value level="3">3</value>
|
||||
<value level="4">4</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
@@ -256,12 +255,9 @@
|
||||
<effect name="Speed">
|
||||
<amount>
|
||||
<value level="1">2</value>
|
||||
<value level="1">3</value>
|
||||
<value level="1">4</value>
|
||||
<value level="1">5</value>
|
||||
<value level="2">5</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="3">5</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="4">5</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="2">3</value>
|
||||
<value level="3">4</value>
|
||||
<value level="4">5</value>
|
||||
</amount>
|
||||
<mode>DIFF</mode>
|
||||
</effect>
|
||||
@@ -277,12 +273,9 @@
|
||||
<effect name="MAtk">
|
||||
<amount>
|
||||
<value level="1">1</value>
|
||||
<value level="1">2</value>
|
||||
<value level="1">3</value>
|
||||
<value level="1">4</value>
|
||||
<value level="2">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="3">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="4">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="2">2</value>
|
||||
<value level="3">3</value>
|
||||
<value level="4">4</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
@@ -298,12 +291,9 @@
|
||||
<effect name="MagicalDefence">
|
||||
<amount>
|
||||
<value level="1">1</value>
|
||||
<value level="1">2</value>
|
||||
<value level="1">3</value>
|
||||
<value level="1">4</value>
|
||||
<value level="2">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="3">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="4">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="2">2</value>
|
||||
<value level="3">3</value>
|
||||
<value level="4">4</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
@@ -319,12 +309,9 @@
|
||||
<effect name="MagicCriticalRate">
|
||||
<amount>
|
||||
<value level="1">1</value>
|
||||
<value level="1">2</value>
|
||||
<value level="1">3</value>
|
||||
<value level="1">4</value>
|
||||
<value level="2">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="3">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="4">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="2">2</value>
|
||||
<value level="3">3</value>
|
||||
<value level="4">4</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
@@ -340,12 +327,9 @@
|
||||
<effect name="MagicalAttackSpeed">
|
||||
<amount>
|
||||
<value level="1">1</value>
|
||||
<value level="1">2</value>
|
||||
<value level="1">3</value>
|
||||
<value level="1">4</value>
|
||||
<value level="2">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="3">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="4">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="2">2</value>
|
||||
<value level="3">3</value>
|
||||
<value level="4">4</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
@@ -361,12 +345,9 @@
|
||||
<effect name="MaxHp">
|
||||
<amount>
|
||||
<value level="1">1</value>
|
||||
<value level="1">2</value>
|
||||
<value level="1">3</value>
|
||||
<value level="1">4</value>
|
||||
<value level="2">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="3">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="4">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="2">2</value>
|
||||
<value level="3">3</value>
|
||||
<value level="4">4</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
@@ -382,12 +363,9 @@
|
||||
<effect name="MaxMp">
|
||||
<amount>
|
||||
<value level="1">1</value>
|
||||
<value level="1">2</value>
|
||||
<value level="1">3</value>
|
||||
<value level="1">4</value>
|
||||
<value level="2">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="3">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="4">4</value> <!-- FIXME: AUTO GENERATED LEVEL -->
|
||||
<value level="2">2</value>
|
||||
<value level="3">3</value>
|
||||
<value level="4">4</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
@@ -2266,9 +2244,477 @@
|
||||
<!-- Momentarily immobile due to the Stun effect. -->
|
||||
<icon>icon.skill0100</icon>
|
||||
<operateType>A1</operateType>
|
||||
<isDebuff>true</isDebuff>
|
||||
<castRange>40</castRange>
|
||||
<reuseDelay>15000</reuseDelay>
|
||||
<effectPoint>-100</effectPoint>
|
||||
</skill>
|
||||
<skill id="35363" toLevel="1" name="Anakim's Protection Rune">
|
||||
<operateType>A1</operateType>
|
||||
</skill>
|
||||
<skill id="35364" toLevel="11" name="Artifact - P. Critical Damage">
|
||||
<!-- Enchanting increases Normal Attack Critical Damage -->
|
||||
<operateType>P</operateType>
|
||||
<effects>
|
||||
<effect name="CriticalDamage">
|
||||
<amount>
|
||||
<value level="1">0</value>
|
||||
<value level="2">1</value>
|
||||
<value level="3">2</value>
|
||||
<value level="4">3</value>
|
||||
<value level="5">5</value>
|
||||
<value level="6">6</value>
|
||||
<value level="7">7</value>
|
||||
<value level="8">9</value>
|
||||
<value level="9">11</value>
|
||||
<value level="10">13</value>
|
||||
<value level="11">15</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="35365" toLevel="11" name="Artifact - P. Skill Critical Damage">
|
||||
<!-- When enchanting, increases P. Skill Critical Damage. -->
|
||||
<operateType>P</operateType>
|
||||
<effects>
|
||||
<effect name="SkillCriticalDamage">
|
||||
<amount>
|
||||
<value level="1">0</value>
|
||||
<value level="2">1</value>
|
||||
<value level="3">2</value>
|
||||
<value level="4">3</value>
|
||||
<value level="5">5</value>
|
||||
<value level="6">6</value>
|
||||
<value level="7">7</value>
|
||||
<value level="8">9</value>
|
||||
<value level="9">11</value>
|
||||
<value level="10">13</value>
|
||||
<value level="11">15</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="35366" toLevel="11" name="Artifact - M. Skill Critical Damage">
|
||||
<!-- Enchanting increases M. Skill Critical Damage -->
|
||||
<operateType>P</operateType>
|
||||
<effects>
|
||||
<effect name="MagicCriticalDamage">
|
||||
<amount>
|
||||
<value level="1">0</value>
|
||||
<value level="2">1</value>
|
||||
<value level="3">2</value>
|
||||
<value level="4">3</value>
|
||||
<value level="5">5</value>
|
||||
<value level="6">6</value>
|
||||
<value level="7">7</value>
|
||||
<value level="8">9</value>
|
||||
<value level="9">11</value>
|
||||
<value level="10">13</value>
|
||||
<value level="11">15</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="35367" toLevel="11" name="Artifact - Attribute Attack Power">
|
||||
<operateType>P</operateType>
|
||||
</skill>
|
||||
<skill id="35368" toLevel="11" name="Artifact - P. Skill Power">
|
||||
<operateType>P</operateType>
|
||||
</skill>
|
||||
<skill id="35369" toLevel="11" name="Artifact - M. Skill Power">
|
||||
<operateType>P</operateType>
|
||||
</skill>
|
||||
<skill id="35370" toLevel="11" name="Artifact - Bow Resistance">
|
||||
<operateType>P</operateType>
|
||||
<effects>
|
||||
<effect name="DefenceTrait">
|
||||
<BOW>
|
||||
<value level="1">0</value>
|
||||
<value level="2">1</value>
|
||||
<value level="3">2</value>
|
||||
<value level="4">3</value>
|
||||
<value level="5">5</value>
|
||||
<value level="6">6</value>
|
||||
<value level="7">7</value>
|
||||
<value level="8">9</value>
|
||||
<value level="9">11</value>
|
||||
<value level="10">13</value>
|
||||
<value level="11">15</value>
|
||||
</BOW>
|
||||
<CROSSBOW>
|
||||
<value level="1">0</value>
|
||||
<value level="2">1</value>
|
||||
<value level="3">2</value>
|
||||
<value level="4">3</value>
|
||||
<value level="5">5</value>
|
||||
<value level="6">6</value>
|
||||
<value level="7">7</value>
|
||||
<value level="8">9</value>
|
||||
<value level="9">11</value>
|
||||
<value level="10">13</value>
|
||||
<value level="11">15</value>
|
||||
</CROSSBOW>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="35371" toLevel="11" name="Artifact - Dagger Resistance">
|
||||
<!-- Enchanting increases Dagger/Dual Dagger Resistance -->
|
||||
<operateType>P</operateType>
|
||||
<effects>
|
||||
<effect name="DefenceTrait">
|
||||
<DAGGER>
|
||||
<value level="1">0</value>
|
||||
<value level="2">1</value>
|
||||
<value level="3">2</value>
|
||||
<value level="4">3</value>
|
||||
<value level="5">5</value>
|
||||
<value level="6">6</value>
|
||||
<value level="7">7</value>
|
||||
<value level="8">9</value>
|
||||
<value level="9">11</value>
|
||||
<value level="10">13</value>
|
||||
<value level="11">15</value>
|
||||
</DAGGER>
|
||||
</effect>
|
||||
<effect name="DefenceTrait">
|
||||
<DUALDAGGER>
|
||||
<value level="1">0</value>
|
||||
<value level="2">1</value>
|
||||
<value level="3">2</value>
|
||||
<value level="4">3</value>
|
||||
<value level="5">5</value>
|
||||
<value level="6">6</value>
|
||||
<value level="7">7</value>
|
||||
<value level="8">9</value>
|
||||
<value level="9">11</value>
|
||||
<value level="10">13</value>
|
||||
<value level="11">15</value>
|
||||
</DUALDAGGER>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="35372" toLevel="11" name="Artifact - Sword Resistance">
|
||||
<!-- Increases one-handed/ two-handed/ dual/ magic sword resistance when enchanted. -->
|
||||
<operateType>P</operateType>
|
||||
<effects>
|
||||
<effect name="DefenceTrait">
|
||||
<DUAL>
|
||||
<value level="1">0</value>
|
||||
<value level="2">1</value>
|
||||
<value level="3">2</value>
|
||||
<value level="4">3</value>
|
||||
<value level="5">5</value>
|
||||
<value level="6">6</value>
|
||||
<value level="7">7</value>
|
||||
<value level="8">9</value>
|
||||
<value level="9">11</value>
|
||||
<value level="10">13</value>
|
||||
<value level="11">15</value>
|
||||
</DUAL>
|
||||
</effect>
|
||||
<effect name="DefenceTrait">
|
||||
<SWORD>
|
||||
<value level="1">0</value>
|
||||
<value level="2">1</value>
|
||||
<value level="3">2</value>
|
||||
<value level="4">3</value>
|
||||
<value level="5">5</value>
|
||||
<value level="6">6</value>
|
||||
<value level="7">7</value>
|
||||
<value level="8">9</value>
|
||||
<value level="9">11</value>
|
||||
<value level="10">13</value>
|
||||
<value level="11">15</value>
|
||||
</SWORD>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="35373" toLevel="11" name="Artifact - Attribute Resistance">
|
||||
<operateType>P</operateType>
|
||||
</skill>
|
||||
<skill id="35374" toLevel="11" name="Artifact - Received Damage When Immobilized">
|
||||
<operateType>P</operateType>
|
||||
</skill>
|
||||
<skill id="35375" toLevel="11" name="Artifact - Debuff Resistance">
|
||||
<operateType>P</operateType>
|
||||
</skill>
|
||||
<skill id="35376" toLevel="11" name="Artifact - Vitality Bonus">
|
||||
<!-- Enchanting increases Vitality bonus -->
|
||||
<operateType>P</operateType>
|
||||
<effects>
|
||||
<effect name="VitalityExpRate">
|
||||
<amount>
|
||||
<value level="1">0</value>
|
||||
<value level="2">1</value>
|
||||
<value level="3">2</value>
|
||||
<value level="4">3</value>
|
||||
<value level="5">5</value>
|
||||
<value level="6">7</value>
|
||||
<value level="7">9</value>
|
||||
<value level="8">11</value>
|
||||
<value level="9">14</value>
|
||||
<value level="10">17</value>
|
||||
<value level="11">20</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="35377" toLevel="11" name="Artifact - Vitality Consumption">
|
||||
<!-- Enchanting reduces Vitality Consumption Rate -->
|
||||
<operateType>P</operateType>
|
||||
<effects>
|
||||
<effect name="VitalityPointsRate">
|
||||
<amount>
|
||||
<value level="1">0</value>
|
||||
<value level="2">-1</value>
|
||||
<value level="3">-2</value>
|
||||
<value level="4">-3</value>
|
||||
<value level="5">-5</value>
|
||||
<value level="6">-7</value>
|
||||
<value level="7">-9</value>
|
||||
<value level="8">-11</value>
|
||||
<value level="9">-14</value>
|
||||
<value level="10">-17</value>
|
||||
<value level="11">-20</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="35378" toLevel="11" name="Artifact - MP Consumption">
|
||||
<!-- Enchanting reduces Skill MP Consumption -->
|
||||
<operateType>P</operateType>
|
||||
<effects>
|
||||
<effect name="MagicMpCost">
|
||||
<amount>
|
||||
<value level="1">0</value>
|
||||
<value level="2">-1</value>
|
||||
<value level="3">-2</value>
|
||||
<value level="4">-3</value>
|
||||
<value level="5">-5</value>
|
||||
<value level="6">-7</value>
|
||||
<value level="7">-9</value>
|
||||
<value level="8">-11</value>
|
||||
<value level="9">-14</value>
|
||||
<value level="10">-17</value>
|
||||
<value level="11">-20</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
<magicType>0</magicType>
|
||||
</effect>
|
||||
<effect name="MagicMpCost">
|
||||
<amount>
|
||||
<value level="1">0</value>
|
||||
<value level="2">-1</value>
|
||||
<value level="3">-2</value>
|
||||
<value level="4">-3</value>
|
||||
<value level="5">-5</value>
|
||||
<value level="6">-7</value>
|
||||
<value level="7">-9</value>
|
||||
<value level="8">-11</value>
|
||||
<value level="9">-14</value>
|
||||
<value level="10">-17</value>
|
||||
<value level="11">-20</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
<magicType>1</magicType>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="35379" toLevel="11" name="Artifact - Skill Cooldown">
|
||||
<operateType>P</operateType>
|
||||
</skill>
|
||||
<skill id="35380" toLevel="11" name="Artifact - Recovery Potions' Effect">
|
||||
<operateType>P</operateType>
|
||||
</skill>
|
||||
<skill id="35381" toLevel="11" name="Artifact - Fixed Damage Resistance">
|
||||
<operateType>P</operateType>
|
||||
</skill>
|
||||
<skill id="35382" toLevel="11" name="Artifact - P. Def.">
|
||||
<!-- P. Def. increased when upgraded. -->
|
||||
<operateType>P</operateType>
|
||||
<effects>
|
||||
<effect name="PhysicalDefence">
|
||||
<amount>
|
||||
<value level="1">0</value>
|
||||
<value level="2">1</value>
|
||||
<value level="3">2</value>
|
||||
<value level="4">3</value>
|
||||
<value level="5">5</value>
|
||||
<value level="6">6</value>
|
||||
<value level="7">7</value>
|
||||
<value level="8">9</value>
|
||||
<value level="9">11</value>
|
||||
<value level="10">13</value>
|
||||
<value level="11">15</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="35383" toLevel="11" name="Artifact - M. Def.">
|
||||
<!-- M. Def. increased when upgraded. -->
|
||||
<operateType>P</operateType>
|
||||
<effects>
|
||||
<effect name="MagicalDefence">
|
||||
<amount>
|
||||
<value level="1">0</value>
|
||||
<value level="2">1</value>
|
||||
<value level="3">2</value>
|
||||
<value level="4">3</value>
|
||||
<value level="5">5</value>
|
||||
<value level="6">6</value>
|
||||
<value level="7">7</value>
|
||||
<value level="8">9</value>
|
||||
<value level="9">11</value>
|
||||
<value level="10">13</value>
|
||||
<value level="11">15</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="35384" toLevel="11" name="Artifact - P. Critical Damage">
|
||||
<!-- Enchanting increases Normal Attack Critical Damage -->
|
||||
<operateType>P</operateType>
|
||||
<effects>
|
||||
<effect name="CriticalDamage">
|
||||
<amount>
|
||||
<value level="1">0</value>
|
||||
<value level="2">1</value>
|
||||
<value level="3">1</value>
|
||||
<value level="4">2</value>
|
||||
<value level="5">3</value>
|
||||
<value level="6">4</value>
|
||||
<value level="7">5</value>
|
||||
<value level="8">6</value>
|
||||
<value level="9">7</value>
|
||||
<value level="10">8</value>
|
||||
<value level="11">10</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="35385" toLevel="11" name="Artifact - P. Skill Critical Damage">
|
||||
<!-- When enchanting, increases P. Skill Critical Damage. -->
|
||||
<operateType>P</operateType>
|
||||
<effects>
|
||||
<effect name="SkillCriticalDamage">
|
||||
<amount>
|
||||
<value level="1">0</value>
|
||||
<value level="2">1</value>
|
||||
<value level="3">1</value>
|
||||
<value level="4">2</value>
|
||||
<value level="5">3</value>
|
||||
<value level="6">4</value>
|
||||
<value level="7">5</value>
|
||||
<value level="8">6</value>
|
||||
<value level="9">7</value>
|
||||
<value level="10">8</value>
|
||||
<value level="11">10</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="35386" toLevel="11" name="Artifact - M. Skill Critical Damage">
|
||||
<!-- Enchanting increases M. Skill Critical Damage -->
|
||||
<operateType>P</operateType>
|
||||
<effects>
|
||||
<effect name="MagicCriticalDamage">
|
||||
<amount>
|
||||
<value level="1">0</value>
|
||||
<value level="2">1</value>
|
||||
<value level="3">1</value>
|
||||
<value level="4">2</value>
|
||||
<value level="5">3</value>
|
||||
<value level="6">4</value>
|
||||
<value level="7">5</value>
|
||||
<value level="8">6</value>
|
||||
<value level="9">7</value>
|
||||
<value level="10">8</value>
|
||||
<value level="11">10</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="35387" toLevel="11" name="Artifact - Atk. Spd.">
|
||||
<!-- Enchanting increases Atk. Spd. -->
|
||||
<operateType>P</operateType>
|
||||
<effects>
|
||||
<effect name="PhysicalAttackSpeed">
|
||||
<amount>
|
||||
<value level="1">0</value>
|
||||
<value level="2">1</value>
|
||||
<value level="3">1</value>
|
||||
<value level="4">2</value>
|
||||
<value level="5">3</value>
|
||||
<value level="6">4</value>
|
||||
<value level="7">5</value>
|
||||
<value level="8">6</value>
|
||||
<value level="9">7</value>
|
||||
<value level="10">8</value>
|
||||
<value level="11">10</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="35388" toLevel="11" name="Artifact - Casting Spd.">
|
||||
<!-- Casting Spd. increased when upgraded -->
|
||||
<operateType>P</operateType>
|
||||
<effects>
|
||||
<effect name="MagicalAttackSpeed">
|
||||
<amount>
|
||||
<value level="1">0</value>
|
||||
<value level="2">1</value>
|
||||
<value level="3">1</value>
|
||||
<value level="4">2</value>
|
||||
<value level="5">3</value>
|
||||
<value level="6">4</value>
|
||||
<value level="7">5</value>
|
||||
<value level="8">6</value>
|
||||
<value level="9">7</value>
|
||||
<value level="10">8</value>
|
||||
<value level="11">10</value>
|
||||
</amount>
|
||||
<mode>PER</mode>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="35389" toLevel="11" name="Artifact - Speed">
|
||||
<operateType>P</operateType>
|
||||
</skill>
|
||||
<skill id="35390" toLevel="11" name="Artifact - Acquired XP/ SP">
|
||||
<operateType>P</operateType>
|
||||
</skill>
|
||||
<skill id="35391" toLevel="11" name="Artifact - Vitality Bonus">
|
||||
<operateType>P</operateType>
|
||||
</skill>
|
||||
<skill id="35392" toLevel="11" name="Artifact - Vitality Consumption">
|
||||
<operateType>P</operateType>
|
||||
</skill>
|
||||
<skill id="35393" toLevel="11" name="Artifact - Debuff Resistance">
|
||||
<operateType>P</operateType>
|
||||
</skill>
|
||||
<skill id="35394" toLevel="11" name="Artifact - Received Healing">
|
||||
<operateType>P</operateType>
|
||||
</skill>
|
||||
<skill id="35395" toLevel="11" name="Artifact - MP Consumption">
|
||||
<operateType>P</operateType>
|
||||
</skill>
|
||||
<skill id="35396" toLevel="11" name="Artifact - Fishing XP">
|
||||
<operateType>P</operateType>
|
||||
</skill>
|
||||
<skill id="35397" toLevel="10" name="Talisman of Protection">
|
||||
<operateType>A1</operateType>
|
||||
</skill>
|
||||
<skill id="35398" toLevel="1" name="Soul of Sword - Zariche">
|
||||
<operateType>A1</operateType>
|
||||
</skill>
|
||||
<skill id="35399" toLevel="1" name="Soul of Sword - Akamanah">
|
||||
<operateType>A1</operateType>
|
||||
</skill>
|
||||
</list>
|
@@ -73,7 +73,6 @@ CriticalDamage: Critical Damage stat.
|
||||
CriticalDamagePosition: Critical Damage depending on position stat.
|
||||
CriticalRate: Critical Rate stat.
|
||||
CriticalRatePositionBonus: Critical Rate depending on position stat. Ignores the critical rate cap of 500.
|
||||
CrystalGradeModify: Sets your Expertise Grade level. With this effect you can make lv. 40 player (C Grade) to wear S grade.
|
||||
Crystallize: Allows the player to crystallize items up to a certain grade.
|
||||
CubicMastery: Max cubics stat.
|
||||
DamageBlock: Blocks Hp or Mp damage/heal.
|
||||
@@ -255,7 +254,6 @@ ReflectMagic: Deflects magical damage back to the attacker.
|
||||
ReflectSkill: Deflects physical/magical debuffs back to the attacker.
|
||||
RefuelAirship: Increases Airship's fuel.
|
||||
Relax: Sits down and increases HP regeneration until full.
|
||||
RemoveEquipPenalty: Removes equipment grade penalty. Its the base effect for the grade penalty mechanics.
|
||||
ReplaceSkillBySkill: While active replaces a skill with an alternative skill. (l2jmobius)
|
||||
ResetInstanceEntry: Resets instance re-entry time. (l2jmobius)
|
||||
ResistAbnormalByCategory: Buff/debuff resist stat.
|
||||
|
22
L2J_Mobius_7.0_PreludeOfWar/dist/game/data/xsd/TeleportListData.xsd
vendored
Normal file
22
L2J_Mobius_7.0_PreludeOfWar/dist/game/data/xsd/TeleportListData.xsd
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
<xs:element name="list">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element name="teleport" maxOccurs="unbounded" minOccurs="0">
|
||||
<xs:complexType>
|
||||
<xs:simpleContent>
|
||||
<xs:extension base="xs:string">
|
||||
<xs:attribute type="xs:integer" name="id" use="required" />
|
||||
<xs:attribute type="xs:integer" name="x" use="required" />
|
||||
<xs:attribute type="xs:integer" name="y" use="required" />
|
||||
<xs:attribute type="xs:integer" name="z" use="required" />
|
||||
<xs:attribute type="xs:integer" name="price" use="required" />
|
||||
</xs:extension>
|
||||
</xs:simpleContent>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:schema>
|
@@ -300,7 +300,6 @@ public class Config
|
||||
public static int[][] PARTY_XP_CUTOFF_GAPS;
|
||||
public static int[] PARTY_XP_CUTOFF_GAP_PERCENTS;
|
||||
public static boolean DISABLE_TUTORIAL;
|
||||
public static boolean EXPERTISE_PENALTY;
|
||||
public static boolean STORE_RECIPE_SHOPLIST;
|
||||
public static boolean STORE_UI_SETTINGS;
|
||||
public static String[] FORBIDDEN_NAMES;
|
||||
@@ -1905,7 +1904,6 @@ public class Config
|
||||
PARTY_XP_CUTOFF_GAP_PERCENTS[i] = Integer.parseInt(percents[i]);
|
||||
}
|
||||
DISABLE_TUTORIAL = Character.getBoolean("DisableTutorial", false);
|
||||
EXPERTISE_PENALTY = Character.getBoolean("ExpertisePenalty", true);
|
||||
STORE_RECIPE_SHOPLIST = Character.getBoolean("StoreRecipeShopList", false);
|
||||
STORE_UI_SETTINGS = Character.getBoolean("StoreCharUiSettings", true);
|
||||
FORBIDDEN_NAMES = Character.getString("ForbiddenNames", "").split(",");
|
||||
|
@@ -99,6 +99,7 @@ import org.l2jmobius.gameserver.data.xml.impl.SkillData;
|
||||
import org.l2jmobius.gameserver.data.xml.impl.SkillTreesData;
|
||||
import org.l2jmobius.gameserver.data.xml.impl.SpawnsData;
|
||||
import org.l2jmobius.gameserver.data.xml.impl.StaticObjectData;
|
||||
import org.l2jmobius.gameserver.data.xml.impl.TeleportListData;
|
||||
import org.l2jmobius.gameserver.data.xml.impl.TeleportersData;
|
||||
import org.l2jmobius.gameserver.data.xml.impl.TransformData;
|
||||
import org.l2jmobius.gameserver.data.xml.impl.VariationData;
|
||||
@@ -345,6 +346,7 @@ public class GameServer
|
||||
printSection("Cache");
|
||||
HtmCache.getInstance();
|
||||
CrestTable.getInstance();
|
||||
TeleportListData.getInstance();
|
||||
TeleportersData.getInstance();
|
||||
MatchingRoomManager.getInstance();
|
||||
PetitionManager.getInstance();
|
||||
|
@@ -0,0 +1,87 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package org.l2jmobius.gameserver.data.xml.impl;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import org.w3c.dom.Document;
|
||||
|
||||
import org.l2jmobius.commons.util.IXmlReader;
|
||||
import org.l2jmobius.gameserver.model.StatsSet;
|
||||
import org.l2jmobius.gameserver.model.holders.TeleportListHolder;
|
||||
|
||||
/**
|
||||
* @author NviX
|
||||
*/
|
||||
public class TeleportListData implements IXmlReader
|
||||
{
|
||||
private static Logger LOGGER = Logger.getLogger(TeleportListData.class.getName());
|
||||
private final List<TeleportListHolder> _teleports = new ArrayList<>();
|
||||
private int _teleportsCount = 0;
|
||||
|
||||
protected TeleportListData()
|
||||
{
|
||||
load();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void load()
|
||||
{
|
||||
_teleports.clear();
|
||||
parseDatapackFile("data/TeleportListData.xml");
|
||||
_teleportsCount = _teleports.size();
|
||||
LOGGER.info(getClass().getSimpleName() + ": Loaded " + _teleportsCount + " teleports.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void parseDocument(Document doc, File f)
|
||||
{
|
||||
forEach(doc, "list", listNode -> forEach(listNode, "teleport", teleportNode ->
|
||||
{
|
||||
final StatsSet set = new StatsSet(parseAttributes(teleportNode));
|
||||
final int tpId = set.getInt("id");
|
||||
final int x = set.getInt("x");
|
||||
final int y = set.getInt("y");
|
||||
final int z = set.getInt("z");
|
||||
final int tpPrice = set.getInt("price");
|
||||
_teleports.add(new TeleportListHolder(tpId, x, y, z, tpPrice));
|
||||
}));
|
||||
}
|
||||
|
||||
public List<TeleportListHolder> getTeleports()
|
||||
{
|
||||
return _teleports;
|
||||
}
|
||||
|
||||
public int getTeleportsCount()
|
||||
{
|
||||
return _teleportsCount;
|
||||
}
|
||||
|
||||
public static TeleportListData getInstance()
|
||||
{
|
||||
return SingletonHolder.INSTANCE;
|
||||
}
|
||||
|
||||
private static class SingletonHolder
|
||||
{
|
||||
protected static final TeleportListData INSTANCE = new TeleportListData();
|
||||
}
|
||||
}
|
@@ -41,15 +41,17 @@ public enum UserInfoType implements IUpdateTypeComponent
|
||||
ATK_ELEMENTAL(0x0E, 5),
|
||||
CLAN(0x0F, 32),
|
||||
|
||||
SOCIAL(0x10, 22),
|
||||
VITA_FAME(0x11, 15),
|
||||
SLOTS(0x12, 9),
|
||||
SOCIAL(0x10, 30),
|
||||
VITA_FAME(0x11, 19),
|
||||
SLOTS(0x12, 12),
|
||||
MOVEMENTS(0x13, 4),
|
||||
COLOR(0x14, 10),
|
||||
INVENTORY_LIMIT(0x15, 9),
|
||||
INVENTORY_LIMIT(0x15, 13),
|
||||
TRUE_HERO(0x16, 9),
|
||||
|
||||
ATT_SPIRITS(0x17, 26);
|
||||
ATT_SPIRITS(0x17, 26),
|
||||
|
||||
UNKNOWN_196(0x18, 6);
|
||||
|
||||
/** Int mask. */
|
||||
private final int _mask;
|
||||
|
@@ -2700,7 +2700,6 @@ public abstract class Creature extends WorldObject implements ISkillsHolder, IDe
|
||||
{
|
||||
final PlayerInstance player = getActingPlayer();
|
||||
player.refreshOverloaded(true);
|
||||
player.refreshExpertisePenalty();
|
||||
sendPacket(info);
|
||||
|
||||
if (broadcastFull)
|
||||
|
@@ -46,7 +46,6 @@ import java.util.stream.Collectors;
|
||||
import org.l2jmobius.Config;
|
||||
import org.l2jmobius.commons.concurrent.ThreadPool;
|
||||
import org.l2jmobius.commons.database.DatabaseFactory;
|
||||
import org.l2jmobius.commons.util.CommonUtil;
|
||||
import org.l2jmobius.commons.util.Rnd;
|
||||
import org.l2jmobius.gameserver.GameTimeController;
|
||||
import org.l2jmobius.gameserver.ItemsAutoDestroy;
|
||||
@@ -238,7 +237,6 @@ import org.l2jmobius.gameserver.model.items.Weapon;
|
||||
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
|
||||
import org.l2jmobius.gameserver.model.items.type.ActionType;
|
||||
import org.l2jmobius.gameserver.model.items.type.ArmorType;
|
||||
import org.l2jmobius.gameserver.model.items.type.CrystalType;
|
||||
import org.l2jmobius.gameserver.model.items.type.EtcItemType;
|
||||
import org.l2jmobius.gameserver.model.items.type.WeaponType;
|
||||
import org.l2jmobius.gameserver.model.matching.MatchingRoom;
|
||||
@@ -696,10 +694,6 @@ public class PlayerInstance extends Playable
|
||||
private int _createItemLevel;
|
||||
private int _createCommonItemLevel;
|
||||
private ItemGrade _crystallizeGrade = ItemGrade.NONE;
|
||||
private CrystalType _expertiseLevel = CrystalType.NONE;
|
||||
private int _expertiseArmorPenalty = 0;
|
||||
private int _expertiseWeaponPenalty = 0;
|
||||
private int _expertisePenaltyBonus = 0;
|
||||
|
||||
private final Map<Class<? extends AbstractRequest>, AbstractRequest> _requests = new ConcurrentHashMap<>();
|
||||
|
||||
@@ -2029,26 +2023,6 @@ public class PlayerInstance extends Playable
|
||||
broadcastReputation();
|
||||
}
|
||||
|
||||
public int getExpertiseArmorPenalty()
|
||||
{
|
||||
return _expertiseArmorPenalty;
|
||||
}
|
||||
|
||||
public int getExpertiseWeaponPenalty()
|
||||
{
|
||||
return _expertiseWeaponPenalty;
|
||||
}
|
||||
|
||||
public int getExpertisePenaltyBonus()
|
||||
{
|
||||
return _expertisePenaltyBonus;
|
||||
}
|
||||
|
||||
public void setExpertisePenaltyBonus(int bonus)
|
||||
{
|
||||
_expertisePenaltyBonus = bonus;
|
||||
}
|
||||
|
||||
public int getWeightPenalty()
|
||||
{
|
||||
return _dietMode ? 0 : _curWeightPenalty;
|
||||
@@ -2108,69 +2082,6 @@ public class PlayerInstance extends Playable
|
||||
}
|
||||
}
|
||||
|
||||
public void refreshExpertisePenalty()
|
||||
{
|
||||
if (!Config.EXPERTISE_PENALTY)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
final CrystalType expertiseLevel = _expertiseLevel.plusLevel(_expertisePenaltyBonus);
|
||||
|
||||
int armorPenalty = 0;
|
||||
int weaponPenalty = 0;
|
||||
|
||||
for (ItemInstance item : _inventory.getPaperdollItems(item -> (item != null) && ((item.getItemType() != EtcItemType.ARROW) && (item.getItemType() != EtcItemType.BOLT)) && item.getItem().getCrystalType().isGreater(expertiseLevel)))
|
||||
{
|
||||
if (item.isArmor())
|
||||
{
|
||||
// Armor penalty level increases depending on amount of penalty armors equipped, not grade level difference.
|
||||
armorPenalty = CommonUtil.constrain(armorPenalty + 1, 0, 4);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Weapon penalty level increases based on grade difference.
|
||||
weaponPenalty = CommonUtil.constrain(item.getItem().getCrystalType().getLevel() - expertiseLevel.getLevel(), 0, 4);
|
||||
}
|
||||
}
|
||||
|
||||
boolean changed = false;
|
||||
|
||||
if ((_expertiseWeaponPenalty != weaponPenalty) || (getSkillLevel(CommonSkill.WEAPON_GRADE_PENALTY.getId()) != weaponPenalty))
|
||||
{
|
||||
_expertiseWeaponPenalty = weaponPenalty;
|
||||
if (_expertiseWeaponPenalty > 0)
|
||||
{
|
||||
addSkill(SkillData.getInstance().getSkill(CommonSkill.WEAPON_GRADE_PENALTY.getId(), _expertiseWeaponPenalty));
|
||||
}
|
||||
else
|
||||
{
|
||||
removeSkill(CommonSkill.WEAPON_GRADE_PENALTY.getId(), true);
|
||||
}
|
||||
changed = true;
|
||||
}
|
||||
|
||||
if ((_expertiseArmorPenalty != armorPenalty) || (getSkillLevel(CommonSkill.ARMOR_GRADE_PENALTY.getId()) != armorPenalty))
|
||||
{
|
||||
_expertiseArmorPenalty = armorPenalty;
|
||||
if (_expertiseArmorPenalty > 0)
|
||||
{
|
||||
addSkill(SkillData.getInstance().getSkill(CommonSkill.ARMOR_GRADE_PENALTY.getId(), _expertiseArmorPenalty));
|
||||
}
|
||||
else
|
||||
{
|
||||
removeSkill(CommonSkill.ARMOR_GRADE_PENALTY.getId(), true);
|
||||
}
|
||||
changed = true;
|
||||
}
|
||||
|
||||
if (changed)
|
||||
{
|
||||
sendSkillList(); // Update expertise penalty icon in skill list.
|
||||
sendPacket(new EtcStatusUpdate(this));
|
||||
}
|
||||
}
|
||||
|
||||
public void useEquippableItem(ItemInstance item, boolean abortAttack)
|
||||
{
|
||||
// Equip or unEquip
|
||||
@@ -2238,8 +2149,6 @@ public class PlayerInstance extends Playable
|
||||
}
|
||||
}
|
||||
|
||||
refreshExpertisePenalty();
|
||||
|
||||
broadcastUserInfo();
|
||||
|
||||
final InventoryUpdate iu = new InventoryUpdate();
|
||||
@@ -6372,7 +6281,6 @@ public class PlayerInstance extends Playable
|
||||
public void updateAndBroadcastStatus(int broadcastType)
|
||||
{
|
||||
refreshOverloaded(true);
|
||||
refreshExpertisePenalty();
|
||||
// Send a Server->Client packet UserInfo to this PlayerInstance and CharInfo to all PlayerInstance in its _KnownPlayers (broadcast)
|
||||
if (broadcastType == 1)
|
||||
{
|
||||
@@ -6810,9 +6718,6 @@ public class PlayerInstance extends Playable
|
||||
// Update the overloaded status of the PlayerInstance
|
||||
player.refreshOverloaded(false);
|
||||
|
||||
// Update the expertise status of the PlayerInstance
|
||||
player.refreshExpertisePenalty();
|
||||
|
||||
player.restoreFriendList();
|
||||
|
||||
player.loadRecommendations();
|
||||
@@ -9998,7 +9903,6 @@ public class PlayerInstance extends Playable
|
||||
}
|
||||
|
||||
refreshOverloaded(true);
|
||||
refreshExpertisePenalty();
|
||||
broadcastUserInfo();
|
||||
|
||||
// Clear resurrect xp calculation
|
||||
@@ -10368,20 +10272,6 @@ public class PlayerInstance extends Playable
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Expertise of the PlayerInstance (None=0, D=1, C=2, B=3, A=4, S=5, S80=6, S84=7, R=8, R95=9, R99=10)
|
||||
* @return CrystalTyperepresenting expertise level..
|
||||
*/
|
||||
public CrystalType getExpertiseLevel()
|
||||
{
|
||||
return _expertiseLevel;
|
||||
}
|
||||
|
||||
public void setExpertiseLevel(CrystalType crystalType)
|
||||
{
|
||||
_expertiseLevel = crystalType != null ? crystalType : CrystalType.NONE;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void teleToLocation(ILocational loc, boolean allowRandomOffset)
|
||||
{
|
||||
|
@@ -287,8 +287,6 @@ public class PlayerStat extends PlayableStat
|
||||
getActiveChar().broadcastStatusUpdate();
|
||||
// Update the overloaded status of the PlayerInstance
|
||||
getActiveChar().refreshOverloaded(true);
|
||||
// Update the expertise status of the PlayerInstance
|
||||
getActiveChar().refreshExpertisePenalty();
|
||||
// Send a Server->Client packet UserInfo to the PlayerInstance
|
||||
getActiveChar().sendPacket(new UserInfo(getActiveChar()));
|
||||
// Send acquirable skill list
|
||||
|
@@ -0,0 +1,63 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package org.l2jmobius.gameserver.model.holders;
|
||||
|
||||
/**
|
||||
* @author NviX
|
||||
*/
|
||||
public class TeleportListHolder
|
||||
{
|
||||
private final int _locId;
|
||||
private final int _x;
|
||||
private final int _y;
|
||||
private final int _z;
|
||||
private final int _price;
|
||||
|
||||
public TeleportListHolder(int locId, int x, int y, int z, int price)
|
||||
{
|
||||
_locId = locId;
|
||||
_x = x;
|
||||
_y = y;
|
||||
_z = z;
|
||||
_price = price;
|
||||
}
|
||||
|
||||
public int getLocId()
|
||||
{
|
||||
return _locId;
|
||||
}
|
||||
|
||||
public int getX()
|
||||
{
|
||||
return _x;
|
||||
}
|
||||
|
||||
public int getY()
|
||||
{
|
||||
return _y;
|
||||
}
|
||||
|
||||
public int getZ()
|
||||
{
|
||||
return _z;
|
||||
}
|
||||
|
||||
public int getPrice()
|
||||
{
|
||||
return _price;
|
||||
}
|
||||
}
|
@@ -462,13 +462,6 @@ public abstract class Inventory extends ItemContainer
|
||||
}
|
||||
|
||||
final PlayerInstance player = (PlayerInstance) inventory.getOwner();
|
||||
|
||||
// Any items equipped that result in expertise penalty do not give any skills at all.
|
||||
if (item.getItem().getCrystalType().isGreater(player.getExpertiseLevel()))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
final AtomicBoolean update = new AtomicBoolean();
|
||||
final AtomicBoolean updateTimestamp = new AtomicBoolean();
|
||||
|
||||
@@ -1549,10 +1542,6 @@ public abstract class Inventory extends ItemContainer
|
||||
try
|
||||
{
|
||||
unEquipItemInSlot(slot);
|
||||
if (getOwner().isPlayer())
|
||||
{
|
||||
((PlayerInstance) getOwner()).refreshExpertisePenalty();
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
@@ -1682,15 +1671,7 @@ public abstract class Inventory extends ItemContainer
|
||||
}
|
||||
if (pdollSlot >= 0)
|
||||
{
|
||||
final ItemInstance old = setPaperdollItem(pdollSlot, null);
|
||||
if (old != null)
|
||||
{
|
||||
if (getOwner().isPlayer())
|
||||
{
|
||||
((PlayerInstance) getOwner()).refreshExpertisePenalty();
|
||||
}
|
||||
}
|
||||
return old;
|
||||
return setPaperdollItem(pdollSlot, null);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
@@ -2123,7 +2104,7 @@ public abstract class Inventory extends ItemContainer
|
||||
case 1:
|
||||
{
|
||||
// 4 Balance Artifact Equip
|
||||
if ((item.getId() >= 48969) && (item.getId() <= 48985))
|
||||
if (((item.getId() >= 48969) && (item.getId() <= 48985)) || ((item.getId() >= 80656) && (item.getId() <= 80662)))
|
||||
{
|
||||
for (int i = PAPERDOLL_ARTIFACT1; i < (PAPERDOLL_ARTIFACT1 + 4); i++)
|
||||
{
|
||||
@@ -2136,7 +2117,7 @@ public abstract class Inventory extends ItemContainer
|
||||
}
|
||||
|
||||
// 1 Spirit Artifact Equip
|
||||
if ((item.getId() >= 48957) && (item.getId() <= 48960))
|
||||
if (((item.getId() >= 48957) && (item.getId() <= 48960)) || ((item.getId() >= 80647) && (item.getId() <= 80649)))
|
||||
{
|
||||
for (int i = PAPERDOLL_ARTIFACT13; i < (PAPERDOLL_ARTIFACT13 + 1); i++)
|
||||
{
|
||||
@@ -2149,7 +2130,7 @@ public abstract class Inventory extends ItemContainer
|
||||
|
||||
}
|
||||
// 1 Protection Artifact Equip
|
||||
if ((item.getId() >= 48961) && (item.getId() <= 48964))
|
||||
if (((item.getId() >= 48961) && (item.getId() <= 48964)) || ((item.getId() >= 80650) && (item.getId() <= 80652)))
|
||||
{
|
||||
for (int i = PAPERDOLL_ARTIFACT16; i < (PAPERDOLL_ARTIFACT16 + 1); i++)
|
||||
{
|
||||
@@ -2162,7 +2143,7 @@ public abstract class Inventory extends ItemContainer
|
||||
|
||||
}
|
||||
// 1 Support Artifact Equip
|
||||
if ((item.getId() >= 48965) && (item.getId() <= 48968))
|
||||
if (((item.getId() >= 48965) && (item.getId() <= 48968)) || ((item.getId() >= 80653) && (item.getId() <= 80655)))
|
||||
{
|
||||
for (int i = PAPERDOLL_ARTIFACT19; i < (PAPERDOLL_ARTIFACT19 + 1); i++)
|
||||
{
|
||||
@@ -2179,7 +2160,7 @@ public abstract class Inventory extends ItemContainer
|
||||
case 2:
|
||||
{
|
||||
// 8 Balance Artifact Equip
|
||||
if ((item.getId() >= 48969) && (item.getId() <= 48985))
|
||||
if (((item.getId() >= 48969) && (item.getId() <= 48985)) || ((item.getId() >= 80656) && (item.getId() <= 80662)))
|
||||
{
|
||||
for (int i = PAPERDOLL_ARTIFACT1; i < (PAPERDOLL_ARTIFACT1 + 8); i++)
|
||||
{
|
||||
@@ -2192,7 +2173,7 @@ public abstract class Inventory extends ItemContainer
|
||||
}
|
||||
|
||||
// 2 Spirit Artifact Equip
|
||||
if ((item.getId() >= 48957) && (item.getId() <= 48960))
|
||||
if (((item.getId() >= 48957) && (item.getId() <= 48960)) || ((item.getId() >= 80647) && (item.getId() <= 80649)))
|
||||
{
|
||||
for (int i = PAPERDOLL_ARTIFACT13; i < (PAPERDOLL_ARTIFACT13 + 2); i++)
|
||||
{
|
||||
@@ -2205,7 +2186,7 @@ public abstract class Inventory extends ItemContainer
|
||||
|
||||
}
|
||||
// 2 Protection Artifact Equip
|
||||
if ((item.getId() >= 48961) && (item.getId() <= 48964))
|
||||
if (((item.getId() >= 48961) && (item.getId() <= 48964)) || ((item.getId() >= 80650) && (item.getId() <= 80652)))
|
||||
{
|
||||
for (int i = PAPERDOLL_ARTIFACT16; i < (PAPERDOLL_ARTIFACT16 + 2); i++)
|
||||
{
|
||||
@@ -2218,7 +2199,7 @@ public abstract class Inventory extends ItemContainer
|
||||
|
||||
}
|
||||
// 2 Support Artifact Equip
|
||||
if ((item.getId() >= 48965) && (item.getId() <= 48968))
|
||||
if (((item.getId() >= 48965) && (item.getId() <= 48968)) || ((item.getId() >= 80653) && (item.getId() <= 80655)))
|
||||
{
|
||||
for (int i = PAPERDOLL_ARTIFACT19; i < (PAPERDOLL_ARTIFACT19 + 2); i++)
|
||||
{
|
||||
@@ -2235,7 +2216,7 @@ public abstract class Inventory extends ItemContainer
|
||||
case 3:
|
||||
{
|
||||
// 12 Balance Artifact Equip
|
||||
if ((item.getId() >= 48969) && (item.getId() <= 48985))
|
||||
if (((item.getId() >= 48969) && (item.getId() <= 48985)) || ((item.getId() >= 80656) && (item.getId() <= 80662)))
|
||||
{
|
||||
for (int i = PAPERDOLL_ARTIFACT1; i < (PAPERDOLL_ARTIFACT1 + 12); i++)
|
||||
{
|
||||
@@ -2248,7 +2229,7 @@ public abstract class Inventory extends ItemContainer
|
||||
}
|
||||
|
||||
// 3 Spirit Artifact Equip
|
||||
if ((item.getId() >= 48957) && (item.getId() <= 48960))
|
||||
if (((item.getId() >= 48957) && (item.getId() <= 48960)) || ((item.getId() >= 80647) && (item.getId() <= 80649)))
|
||||
{
|
||||
for (int i = PAPERDOLL_ARTIFACT13; i < (PAPERDOLL_ARTIFACT13 + 3); i++)
|
||||
{
|
||||
@@ -2261,7 +2242,7 @@ public abstract class Inventory extends ItemContainer
|
||||
|
||||
}
|
||||
// 3 Protection Artifact Equip
|
||||
if ((item.getId() >= 48961) && (item.getId() <= 48964))
|
||||
if (((item.getId() >= 48961) && (item.getId() <= 48964)) || ((item.getId() >= 80650) && (item.getId() <= 80652)))
|
||||
{
|
||||
for (int i = PAPERDOLL_ARTIFACT16; i < (PAPERDOLL_ARTIFACT16 + 3); i++)
|
||||
{
|
||||
@@ -2274,7 +2255,7 @@ public abstract class Inventory extends ItemContainer
|
||||
|
||||
}
|
||||
// 3 Support Artifact Equip
|
||||
if ((item.getId() >= 48965) && (item.getId() <= 48968))
|
||||
if (((item.getId() >= 48965) && (item.getId() <= 48968)) || ((item.getId() >= 80653) && (item.getId() <= 80655)))
|
||||
{
|
||||
for (int i = PAPERDOLL_ARTIFACT19; i < (PAPERDOLL_ARTIFACT19 + 3); i++)
|
||||
{
|
||||
|
@@ -349,118 +349,134 @@ public enum ExIncomingPackets implements IIncomingPackets<GameClient>
|
||||
REQUEST_STOP_MOVE(0xED, RequestStopMove::new, ConnectionState.IN_GAME),
|
||||
REQUEST_ABILITY_WND_OPEN(0xEE, RequestAbilityWndOpen::new, ConnectionState.IN_GAME),
|
||||
REQUEST_ABILITY_WND_CLOSE(0xEF, RequestAbilityWndClose::new, ConnectionState.IN_GAME),
|
||||
EX_PC_CAFE_REQUEST_OPEN_WINDOW_WITHOUT_NPC(0xF0, ExPCCafeRequestOpenWindowWithoutNPC::new, ConnectionState.IN_GAME),
|
||||
REQUEST_LUCKY_GAME_START_INFO(0xF1, RequestLuckyGameStartInfo::new, ConnectionState.IN_GAME),
|
||||
REQUEST_LUCKY_GAME_PLAY(0xF2, RequestLuckyGamePlay::new, ConnectionState.IN_GAME),
|
||||
NOTIFY_TRAINING_ROOM_END(0xF3, NotifyTrainingRoomEnd::new, ConnectionState.IN_GAME),
|
||||
REQUEST_NEW_ENCHANT_PUSH_ONE(0xF4, RequestNewEnchantPushOne::new, ConnectionState.IN_GAME),
|
||||
REQUEST_NEW_ENCHANT_REMOVE_ONE(0xF5, RequestNewEnchantRemoveOne::new, ConnectionState.IN_GAME),
|
||||
REQUEST_NEW_ENCHANT_PUSH_TWO(0xF6, RequestNewEnchantPushTwo::new, ConnectionState.IN_GAME),
|
||||
REQUEST_NEW_ENCHANT_REMOVE_TWO(0xF7, RequestNewEnchantRemoveTwo::new, ConnectionState.IN_GAME),
|
||||
REQUEST_NEW_ENCHANT_CLOSE(0xF8, RequestNewEnchantClose::new, ConnectionState.IN_GAME),
|
||||
REQUEST_NEW_ENCHANT_TRY(0xF9, RequestNewEnchantTry::new, ConnectionState.IN_GAME),
|
||||
REQUEST_NEW_ENCHANT_RETRY_TO_PUT_ITEMS(0xFA, RequestNewEnchantRetryToPutItems::new, ConnectionState.IN_GAME),
|
||||
REQUEST_TARGET_ACTION_MENU(0xFE, RequestTargetActionMenu::new, ConnectionState.IN_GAME),
|
||||
EX_SEND_SELECTED_QUEST_ZONE_ID(0xFF, ExSendSelectedQuestZoneID::new, ConnectionState.IN_GAME),
|
||||
REQUEST_ALCHEMY_SKILL_LIST(0x100, RequestAlchemySkillList::new, ConnectionState.IN_GAME),
|
||||
REQUEST_ALCHEMY_TRY_MIX_CUBE(0x101, RequestAlchemyTryMixCube::new, ConnectionState.IN_GAME),
|
||||
REQUEST_ALCHEMY_CONVERSION(0x102, RequestAlchemyConversion::new, ConnectionState.IN_GAME),
|
||||
SEND_EXECUTED_UI_EVENTS_COUNT(0x103, null, ConnectionState.IN_GAME),
|
||||
EX_SEND_CLIENT_INI(0x104, null, ConnectionState.AUTHENTICATED),
|
||||
REQUEST_EX_AUTO_FISH(0x105, ExRequestAutoFish::new, ConnectionState.IN_GAME),
|
||||
REQUEST_VIP_ATTENDANCE_ITEM_LIST(0x106, RequestVipAttendanceItemList::new, ConnectionState.IN_GAME),
|
||||
REQUEST_VIP_ATTENDANCE_CHECK(0x107, RequestVipAttendanceCheck::new, ConnectionState.IN_GAME),
|
||||
REQUEST_ITEM_ENSOUL(0x108, RequestItemEnsoul::new, ConnectionState.IN_GAME),
|
||||
REQUEST_CASTLE_WAR_SEASON_REWARD(0x109, null, ConnectionState.IN_GAME),
|
||||
REQUEST_VIP_PRODUCT_LIST(0x10A, null, ConnectionState.IN_GAME),
|
||||
REQUEST_VIP_LUCKY_GAME_INFO(0x10B, null, ConnectionState.IN_GAME),
|
||||
REQUEST_VIP_LUCKY_GAME_ITEM_LIST(0x10C, null, ConnectionState.IN_GAME),
|
||||
REQUEST_VIP_LUCKY_GAME_BONUS(0x10D, null, ConnectionState.IN_GAME),
|
||||
EX_REQUEST_VIP_INFO(0x10E, null, ConnectionState.IN_GAME),
|
||||
REQUEST_CAPTCHA_ANSWER(0x10F, null, ConnectionState.IN_GAME),
|
||||
REQUEST_REFRESH_CAPTCHA_IMAGE(0x110, null, ConnectionState.IN_GAME),
|
||||
REQUEST_PLEDGE_SIGN_IN_FOR_OPEN_JOINING_METHOD(0x111, RequestPledgeSignInForOpenJoiningMethod::new, ConnectionState.IN_GAME),
|
||||
EX_REQUEST_MATCH_ARENA(0x112, null, ConnectionState.IN_GAME),
|
||||
EX_CONFIRM_MATCH_ARENA(0x113, null, ConnectionState.IN_GAME),
|
||||
EX_CANCEL_MATCH_ARENA(0x114, null, ConnectionState.IN_GAME),
|
||||
EX_CHANGE_CLASS_ARENA(0x115, null, ConnectionState.IN_GAME),
|
||||
EX_CONFIRM_CLASS_ARENA(0x116, null, ConnectionState.IN_GAME),
|
||||
REQUEST_OPEN_DECO_NPCUI(0x117, null, ConnectionState.IN_GAME),
|
||||
REQUEST_CHECK_AGIT_DECO_AVAILABILITY(0x118, null, ConnectionState.IN_GAME),
|
||||
REQUEST_USER_FACTION_INFO(0x119, RequestUserFactionInfo::new, ConnectionState.IN_GAME),
|
||||
EX_EXIT_ARENA(0x11A, null, ConnectionState.IN_GAME),
|
||||
REQUEST_EVENT_BALTHUS_TOKEN(0x11B, null, ConnectionState.IN_GAME),
|
||||
REQUEST_PARTY_MATCHING_HISTORY(0x11C, null, ConnectionState.IN_GAME),
|
||||
EX_ARENA_CUSTOM_NOTIFICATION(0x11D, null, ConnectionState.IN_GAME),
|
||||
REQUEST_TODO_LIST(0x11E, null, ConnectionState.IN_GAME),
|
||||
REQUEST_TODO_LIST_HTML(0x11F, null, ConnectionState.IN_GAME),
|
||||
REQUEST_ONE_DAY_REWARD_RECEIVE(0x120, null, ConnectionState.IN_GAME),
|
||||
REQUEST_QUEUE_TICKET(0x121, null, ConnectionState.IN_GAME),
|
||||
REQUEST_PLEDGE_BONUS_OPEN(0x122, RequestPledgeBonusOpen::new, ConnectionState.IN_GAME),
|
||||
REQUEST_PLEDGE_BONUS_REWARD_LIST(0x123, RequestPledgeBonusRewardList::new, ConnectionState.IN_GAME),
|
||||
REQUEST_PLEDGE_BONUS_REWARD(0x124, RequestPledgeBonusReward::new, ConnectionState.IN_GAME),
|
||||
REQUEST_SSO_AUTHN_TOKEN(0x125, null, ConnectionState.IN_GAME),
|
||||
REQUEST_QUEUE_TICKET_LOGIN(0x126, null, ConnectionState.IN_GAME),
|
||||
REQUEST_BLOCK_MEMO_INFO(0x127, null, ConnectionState.IN_GAME),
|
||||
REQUEST_TRY_EN_SOUL_EXTRACTION(0x128, RequestTryEnSoulExtraction::new, ConnectionState.IN_GAME),
|
||||
REQUEST_RAIDBOSS_SPAWN_INFO(0x129, RequestRaidBossSpawnInfo::new, ConnectionState.IN_GAME),
|
||||
REQUEST_RAID_SERVER_INFO(0x12A, RequestRaidServerInfo::new, ConnectionState.IN_GAME),
|
||||
REQUEST_SHOW_AGIT_SIEGE_INFO(0x12B, null, ConnectionState.IN_GAME),
|
||||
REQUEST_ITEM_AUCTION_STATUS(0x12C, null, ConnectionState.IN_GAME),
|
||||
REQUEST_MONSTER_BOOK_OPEN(0x12D, RequestMonsterBookOpen::new, ConnectionState.IN_GAME),
|
||||
REQUEST_MONSTER_BOOK_CLOSE(0x12E, RequestMonsterBookClose::new, ConnectionState.IN_GAME),
|
||||
REQUEST_MONSTER_BOOK_REWARD(0x12F, RequestMonsterBookReward::new, ConnectionState.IN_GAME),
|
||||
EXREQUEST_MATCH_GROUP(0x130, null, ConnectionState.IN_GAME),
|
||||
EXREQUEST_MATCH_GROUP_ASK(0x131, null, ConnectionState.IN_GAME),
|
||||
EXREQUEST_MATCH_GROUP_ANSWER(0x132, null, ConnectionState.IN_GAME),
|
||||
EXREQUEST_MATCH_GROUP_WITHDRAW(0x133, null, ConnectionState.IN_GAME),
|
||||
EXREQUEST_MATCH_GROUP_OUST(0x134, null, ConnectionState.IN_GAME),
|
||||
EXREQUEST_MATCH_GROUP_CHANGE_MASTER(0x135, null, ConnectionState.IN_GAME),
|
||||
REQUEST_UPGRADE_SYSTEM_RESULT(0x136, RequestUpgradeSystemResult::new, ConnectionState.IN_GAME),
|
||||
EX_CARD_UPDOWN_PICK_NUMB(0x137, null, ConnectionState.IN_GAME),
|
||||
EX_CARD_UPDOWN_GAME_REWARD_REQUEST(0x138, null, ConnectionState.IN_GAME),
|
||||
EX_CARD_UPDOWN_GAME_RETRY(0x139, null, ConnectionState.IN_GAME),
|
||||
EX_CARD_UPDOWN_GAME_QUIT(0x13A, null, ConnectionState.IN_GAME),
|
||||
EX_ARENA_RANK_ALL(0x13B, null, ConnectionState.IN_GAME),
|
||||
EX_ARENA_MYRANK(0x13C, null, ConnectionState.IN_GAME),
|
||||
EX_SWAP_AGATHION_SLOT_ITEMS(0x13D, null, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_CONTRIBUTION_RANK(0x13E, null, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_CONTRIBUTION_INFO(0x13F, null, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_CONTRIBUTION_REWARD(0x140, null, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_LEVEL_UP(0x141, RequestExPledgeLevelUp::new, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_MISSION_INFO(0x142, null, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_MISSION_REWARD(0x143, null, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_MASTERY_INFO(0x144, RequestExPledgeMasteryInfo::new, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_MASTERY_SET(0x145, RequestExPledgeMasterySet::new, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_MASTERY_RESET(0x146, RequestExPledgeMasteryReset::new, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_SKILL_INFO(0x147, RequestExPledgeSkillInfo::new, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_SKILL_ACTIVATE(0x148, RequestExPledgeSkillActivate::new, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_ITEM_LIST(0x149, RequestExPledgeItemList::new, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_ITEM_ACTIVATE(0x14A, null, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_ANNOUNCE(0x14B, RequestExPledgeAnnounce::new, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_ANNOUNCE_SET(0x14C, null, ConnectionState.IN_GAME),
|
||||
EX_CREATE_PLEDGE(0x14D, null, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_ITEM_INFO(0x14E, null, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_ITEM_BUY(0x14F, RequestExPledgeItemBuy::new, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_INFO(0x150, null, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_EXTRACT_INFO(0x151, null, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_EXTRACT(0x152, null, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_EVOLUTION_INFO(0x153, null, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_EVOLUTION(0x154, null, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_SET_TALENT(0x155, null, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_INIT_TALENT(0x156, null, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_ABSORB_INFO(0x157, null, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_ABSORB(0x158, null, ConnectionState.IN_GAME),
|
||||
EX_REQUEST_LOCKED_ITEM(0x159, null, ConnectionState.IN_GAME),
|
||||
EX_REQUEST_UNLOCKED_ITEM(0x15A, null, ConnectionState.IN_GAME),
|
||||
EX_LOCKED_ITEM_CANCEL(0x15B, null, ConnectionState.IN_GAME),
|
||||
EX_UNLOCKED_ITEM_CANCEL(0x15C, null, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_CHANGE_TYPE(0x15D, null, ConnectionState.IN_GAME), // 152
|
||||
REQUEST_BLOCK_LIST_FOR_AD(0x15E, null, ConnectionState.IN_GAME),
|
||||
REQUEST_USER_BAN_INFO(0x15F, null, ConnectionState.IN_GAME),
|
||||
EX_INTERACT_MODIFY(0x160, null, ConnectionState.IN_GAME), // 152
|
||||
EX_TRY_ENCHANT_ARTIFACT(0x161, null, ConnectionState.IN_GAME), // 152
|
||||
EX_XIGN_CODE(0x162, null, ConnectionState.IN_GAME); // 152
|
||||
REQUEST_LUCKY_GAME_START_INFO(0xF0, RequestLuckyGameStartInfo::new, ConnectionState.IN_GAME),
|
||||
REQUEST_LUCKY_GAME_PLAY(0xF1, RequestLuckyGamePlay::new, ConnectionState.IN_GAME),
|
||||
NOTIFY_TRAINING_ROOM_END(0xF2, NotifyTrainingRoomEnd::new, ConnectionState.IN_GAME),
|
||||
REQUEST_NEW_ENCHANT_PUSH_ONE(0xF3, RequestNewEnchantPushOne::new, ConnectionState.IN_GAME),
|
||||
REQUEST_NEW_ENCHANT_REMOVE_ONE(0xF4, RequestNewEnchantRemoveOne::new, ConnectionState.IN_GAME),
|
||||
REQUEST_NEW_ENCHANT_PUSH_TWO(0xF5, RequestNewEnchantPushTwo::new, ConnectionState.IN_GAME),
|
||||
REQUEST_NEW_ENCHANT_REMOVE_TWO(0xF6, RequestNewEnchantRemoveTwo::new, ConnectionState.IN_GAME),
|
||||
REQUEST_NEW_ENCHANT_CLOSE(0xF7, RequestNewEnchantClose::new, ConnectionState.IN_GAME),
|
||||
REQUEST_NEW_ENCHANT_TRY(0xF8, RequestNewEnchantTry::new, ConnectionState.IN_GAME),
|
||||
REQUEST_NEW_ENCHANT_RETRY_TO_PUT_ITEMS(0xF9, RequestNewEnchantRetryToPutItems::new, ConnectionState.IN_GAME),
|
||||
EX_REQUEST_CARD_REWARD_LIST(0xFA, null, ConnectionState.IN_GAME),
|
||||
EX_REQUEST_ACCOUNT_ATTENDANCE_INFO(0xFB, null, ConnectionState.IN_GAME),
|
||||
EX_REQUEST_ACCOUNT_ATTENDANCE_REWARD(0xFC, null, ConnectionState.IN_GAME),
|
||||
REQUEST_TARGET_ACTION_MENU(0xFD, RequestTargetActionMenu::new, ConnectionState.IN_GAME),
|
||||
EX_SEND_SELECTED_QUEST_ZONE_ID(0xFE, ExSendSelectedQuestZoneID::new, ConnectionState.IN_GAME),
|
||||
REQUEST_ALCHEMY_SKILL_LIST(0xFF, RequestAlchemySkillList::new, ConnectionState.IN_GAME),
|
||||
REQUEST_ALCHEMY_TRY_MIX_CUBE(0x100, RequestAlchemyTryMixCube::new, ConnectionState.IN_GAME),
|
||||
REQUEST_ALCHEMY_CONVERSION(0x101, RequestAlchemyConversion::new, ConnectionState.IN_GAME),
|
||||
SEND_EXECUTED_UI_EVENTS_COUNT(0x102, null, ConnectionState.IN_GAME),
|
||||
EX_SEND_CLIENT_INI(0x103, null, ConnectionState.AUTHENTICATED),
|
||||
REQUEST_EX_AUTO_FISH(0x104, ExRequestAutoFish::new, ConnectionState.IN_GAME),
|
||||
REQUEST_VIP_ATTENDANCE_ITEM_LIST(0x105, RequestVipAttendanceItemList::new, ConnectionState.IN_GAME),
|
||||
REQUEST_VIP_ATTENDANCE_CHECK(0x106, RequestVipAttendanceCheck::new, ConnectionState.IN_GAME),
|
||||
REQUEST_ITEM_ENSOUL(0x107, RequestItemEnsoul::new, ConnectionState.IN_GAME),
|
||||
REQUEST_CASTLE_WAR_SEASON_REWARD(0x108, null, ConnectionState.IN_GAME),
|
||||
REQUEST_VIP_PRODUCT_LIST(0x109, null, ConnectionState.IN_GAME),
|
||||
REQUEST_VIP_LUCKY_GAME_INFO(0x10A, null, ConnectionState.IN_GAME),
|
||||
REQUEST_VIP_LUCKY_GAME_ITEM_LIST(0x10B, null, ConnectionState.IN_GAME),
|
||||
REQUEST_VIP_LUCKY_GAME_BONUS(0x10C, null, ConnectionState.IN_GAME),
|
||||
EX_REQUEST_VIP_INFO(0x10D, null, ConnectionState.IN_GAME),
|
||||
REQUEST_CAPTCHA_ANSWER(0x10E, null, ConnectionState.IN_GAME),
|
||||
REQUEST_REFRESH_CAPTCHA_IMAGE(0x10F, null, ConnectionState.IN_GAME),
|
||||
REQUEST_PLEDGE_SIGN_IN_FOR_OPEN_JOINING_METHOD(0x110, RequestPledgeSignInForOpenJoiningMethod::new, ConnectionState.IN_GAME),
|
||||
EX_REQUEST_MATCH_ARENA(0x111, null, ConnectionState.IN_GAME),
|
||||
EX_CONFIRM_MATCH_ARENA(0x112, null, ConnectionState.IN_GAME),
|
||||
EX_CANCEL_MATCH_ARENA(0x113, null, ConnectionState.IN_GAME),
|
||||
EX_CHANGE_CLASS_ARENA(0x114, null, ConnectionState.IN_GAME),
|
||||
EX_CONFIRM_CLASS_ARENA(0x115, null, ConnectionState.IN_GAME),
|
||||
REQUEST_OPEN_DECO_NPCUI(0x116, null, ConnectionState.IN_GAME),
|
||||
REQUEST_CHECK_AGIT_DECO_AVAILABILITY(0x117, null, ConnectionState.IN_GAME),
|
||||
REQUEST_USER_FACTION_INFO(0x118, RequestUserFactionInfo::new, ConnectionState.IN_GAME),
|
||||
EX_EXIT_ARENA(0x119, null, ConnectionState.IN_GAME),
|
||||
REQUEST_EVENT_BALTHUS_TOKEN(0x11A, null, ConnectionState.IN_GAME),
|
||||
REQUEST_PARTY_MATCHING_HISTORY(0x11B, null, ConnectionState.IN_GAME),
|
||||
EX_ARENA_CUSTOM_NOTIFICATION(0x11C, null, ConnectionState.IN_GAME),
|
||||
REQUEST_TODO_LIST(0x11D, null, ConnectionState.IN_GAME),
|
||||
REQUEST_TODO_LIST_HTML(0x11E, null, ConnectionState.IN_GAME),
|
||||
REQUEST_ONE_DAY_REWARD_RECEIVE(0x11F, null, ConnectionState.IN_GAME),
|
||||
REQUEST_QUEUE_TICKET(0x120, null, ConnectionState.IN_GAME),
|
||||
REQUEST_PLEDGE_BONUS_OPEN(0x121, RequestPledgeBonusOpen::new, ConnectionState.IN_GAME),
|
||||
REQUEST_PLEDGE_BONUS_REWARD_LIST(0x122, RequestPledgeBonusRewardList::new, ConnectionState.IN_GAME),
|
||||
REQUEST_PLEDGE_BONUS_REWARD(0x123, RequestPledgeBonusReward::new, ConnectionState.IN_GAME),
|
||||
REQUEST_SSO_AUTHN_TOKEN(0x124, null, ConnectionState.IN_GAME),
|
||||
REQUEST_QUEUE_TICKET_LOGIN(0x125, null, ConnectionState.IN_GAME),
|
||||
REQUEST_BLOCK_MEMO_INFO(0x126, null, ConnectionState.IN_GAME),
|
||||
REQUEST_TRY_EN_SOUL_EXTRACTION(0x127, RequestTryEnSoulExtraction::new, ConnectionState.IN_GAME),
|
||||
REQUEST_RAIDBOSS_SPAWN_INFO(0x128, RequestRaidBossSpawnInfo::new, ConnectionState.IN_GAME),
|
||||
REQUEST_RAID_SERVER_INFO(0x129, RequestRaidServerInfo::new, ConnectionState.IN_GAME),
|
||||
REQUEST_SHOW_AGIT_SIEGE_INFO(0x12A, null, ConnectionState.IN_GAME),
|
||||
REQUEST_ITEM_AUCTION_STATUS(0x12B, null, ConnectionState.IN_GAME),
|
||||
REQUEST_MONSTER_BOOK_OPEN(0x12C, RequestMonsterBookOpen::new, ConnectionState.IN_GAME),
|
||||
REQUEST_MONSTER_BOOK_CLOSE(0x12D, RequestMonsterBookClose::new, ConnectionState.IN_GAME),
|
||||
REQUEST_MONSTER_BOOK_REWARD(0x12E, RequestMonsterBookReward::new, ConnectionState.IN_GAME),
|
||||
EXREQUEST_MATCH_GROUP(0x12F, null, ConnectionState.IN_GAME),
|
||||
EXREQUEST_MATCH_GROUP_ASK(0x130, null, ConnectionState.IN_GAME),
|
||||
EXREQUEST_MATCH_GROUP_ANSWER(0x131, null, ConnectionState.IN_GAME),
|
||||
EXREQUEST_MATCH_GROUP_WITHDRAW(0x132, null, ConnectionState.IN_GAME),
|
||||
EXREQUEST_MATCH_GROUP_OUST(0x133, null, ConnectionState.IN_GAME),
|
||||
EXREQUEST_MATCH_GROUP_CHANGE_MASTER(0x134, null, ConnectionState.IN_GAME),
|
||||
REQUEST_UPGRADE_SYSTEM_RESULT(0x135, RequestUpgradeSystemResult::new, ConnectionState.IN_GAME),
|
||||
EX_CARD_UPDOWN_PICK_NUMB(0x136, null, ConnectionState.IN_GAME),
|
||||
EX_CARD_UPDOWN_GAME_REWARD_REQUEST(0x137, null, ConnectionState.IN_GAME),
|
||||
EX_CARD_UPDOWN_GAME_RETRY(0x138, null, ConnectionState.IN_GAME),
|
||||
EX_CARD_UPDOWN_GAME_QUIT(0x139, null, ConnectionState.IN_GAME),
|
||||
EX_ARENA_RANK_ALL(0x13A, null, ConnectionState.IN_GAME),
|
||||
EX_ARENA_MYRANK(0x13B, null, ConnectionState.IN_GAME),
|
||||
EX_SWAP_AGATHION_SLOT_ITEMS(0x13C, null, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_CONTRIBUTION_RANK(0x13D, null, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_CONTRIBUTION_INFO(0x13E, null, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_CONTRIBUTION_REWARD(0x13F, null, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_LEVEL_UP(0x140, RequestExPledgeLevelUp::new, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_MISSION_INFO(0x141, null, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_MISSION_REWARD(0x142, null, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_MASTERY_INFO(0x143, RequestExPledgeMasteryInfo::new, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_MASTERY_SET(0x144, RequestExPledgeMasterySet::new, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_MASTERY_RESET(0x145, RequestExPledgeMasteryReset::new, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_SKILL_INFO(0x146, RequestExPledgeSkillInfo::new, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_SKILL_ACTIVATE(0x147, RequestExPledgeSkillActivate::new, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_ITEM_LIST(0x148, RequestExPledgeItemList::new, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_ITEM_ACTIVATE(0x149, null, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_ANNOUNCE(0x14A, RequestExPledgeAnnounce::new, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_ANNOUNCE_SET(0x14B, null, ConnectionState.IN_GAME),
|
||||
EX_CREATE_PLEDGE(0x14C, null, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_ITEM_INFO(0x14D, null, ConnectionState.IN_GAME),
|
||||
EX_PLEDGE_ITEM_BUY(0x14E, RequestExPledgeItemBuy::new, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_INFO(0x14F, null, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_EXTRACT_INFO(0x150, null, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_EXTRACT(0x151, null, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_EVOLUTION_INFO(0x152, null, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_EVOLUTION(0x153, null, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_SET_TALENT(0x154, null, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_INIT_TALENT(0x155, null, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_ABSORB_INFO(0x156, null, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_ABSORB(0x157, null, ConnectionState.IN_GAME),
|
||||
EX_REQUEST_LOCKED_ITEM(0x158, null, ConnectionState.IN_GAME),
|
||||
EX_REQUEST_UNLOCKED_ITEM(0x159, null, ConnectionState.IN_GAME),
|
||||
EX_LOCKED_ITEM_CANCEL(0x15A, null, ConnectionState.IN_GAME),
|
||||
EX_UNLOCKED_ITEM_CANCEL(0x15B, null, ConnectionState.IN_GAME),
|
||||
EX_ELEMENTAL_SPIRIT_CHANGE_TYPE(0x15C, null, ConnectionState.IN_GAME), // 152
|
||||
REQUEST_BLOCK_LIST_FOR_AD(0x15D, null, ConnectionState.IN_GAME),
|
||||
REQUEST_USER_BAN_INFO(0x15E, null, ConnectionState.IN_GAME),
|
||||
EX_INTERACT_MODIFY(0x15F, null, ConnectionState.IN_GAME), // 152
|
||||
EX_TRY_ENCHANT_ARTIFACT(0x160, null, ConnectionState.IN_GAME), // 152
|
||||
EX_XIGN_CODE(0x161, null, ConnectionState.IN_GAME), // 152
|
||||
EX_OPEN_HTML(0x164, null, ConnectionState.IN_GAME), // 228
|
||||
EX_REQUEST_CLASS_CHANGE(0x165, null, ConnectionState.IN_GAME), // 228
|
||||
EX_REQUEST_CLASS_CHANGE_VERIFYING(0x166, null, ConnectionState.IN_GAME), // 228
|
||||
EX_REQUEST_TELEPORT(0x167, ExRequestTeleport::new, ConnectionState.IN_GAME), // 228
|
||||
EX_COSTUME_COLLECTION_SKILL_ACTIVE(0x16B, null, ConnectionState.IN_GAME), // 228
|
||||
REQUEST_AUTO_USE_POTION(0x171, null, ConnectionState.IN_GAME), // 228
|
||||
REQUEST_AUTO_USE(0x177, null, ConnectionState.IN_GAME), // 228
|
||||
EX_TIME_RESTRICT_FIELD_LIST(0x17F, null, ConnectionState.IN_GAME), // 228
|
||||
EX_TIME_RESTRICT_FIELD_USER_ENTER(0x180, null, ConnectionState.IN_GAME), // 228
|
||||
EX_RANKING_CHAR_INFO(0x181, null, ConnectionState.IN_GAME), // 228
|
||||
EX_RANKING_CHAR_HISTORY(0x182, null, ConnectionState.IN_GAME), // 228
|
||||
EX_RANKING_CHAR_RANKERS(0x183, null, ConnectionState.IN_GAME), // 228
|
||||
EX_MERCENARY_CASTLEWAR_CASTLE_SIEGE_ATTACKER_LIST(0x186, null, ConnectionState.IN_GAME), // 228
|
||||
EX_LETTER_COLLECTOR_TAKE_REWARD(0x18D, null, ConnectionState.IN_GAME); // 228
|
||||
|
||||
public static final ExIncomingPackets[] PACKET_ARRAY;
|
||||
|
||||
|
@@ -796,7 +796,13 @@ public enum OutgoingPackets
|
||||
EX_USER_BAN_INFO(0xFE, 0x201),
|
||||
EX_TRY_ENCHANT_ARTIFACT_RESULT(0xFE, 0x202), // 152
|
||||
EX_XIGN_CODE(0xFE, 0x203), // 152
|
||||
EX_MAX(0xFE, 0x204); // 152
|
||||
EX_MAX(0xFE, 0x204), // 152
|
||||
EX_COIN_COUNT(0xFE, 0x209), // 228
|
||||
EX_SEND_COSTUME_LIST(0xFE, 0x20F), // 228
|
||||
EX_COSTUME_SHORTCUT_LIST(0xFE, 0x215), // 228
|
||||
EX_AUTOPLAY_SETTING(0xFE, 0x221), // 228
|
||||
EX_UNK_225(0xFE, 0x225), // 228
|
||||
EX_MERCENARY_CASTLEWAR_CASTLE_SIEGE_HUD_INFO(0xFE, 0x235); // 228
|
||||
|
||||
private final int _id1;
|
||||
private final int _id2;
|
||||
|
@@ -0,0 +1,74 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package org.l2jmobius.gameserver.network.clientpackets;
|
||||
|
||||
import org.l2jmobius.commons.network.PacketReader;
|
||||
import org.l2jmobius.gameserver.data.xml.impl.TeleportListData;
|
||||
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
|
||||
import org.l2jmobius.gameserver.model.holders.TeleportListHolder;
|
||||
import org.l2jmobius.gameserver.network.GameClient;
|
||||
import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
|
||||
/**
|
||||
* @author NviX
|
||||
*/
|
||||
public class ExRequestTeleport implements IClientIncomingPacket
|
||||
{
|
||||
private int _locId;
|
||||
|
||||
@Override
|
||||
public boolean read(GameClient client, PacketReader packet)
|
||||
{
|
||||
_locId = packet.readD();
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run(GameClient client)
|
||||
{
|
||||
final PlayerInstance player = client.getPlayer();
|
||||
if (player == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
boolean success = false;
|
||||
|
||||
for (TeleportListHolder teleport : TeleportListData.getInstance().getTeleports())
|
||||
{
|
||||
if (teleport.getLocId() == _locId)
|
||||
{
|
||||
if (player.getAdena() < teleport.getPrice())
|
||||
{
|
||||
player.sendPacket(SystemMessageId.YOU_DO_NOT_HAVE_ENOUGH_ADENA);
|
||||
return;
|
||||
}
|
||||
|
||||
player.reduceAdena("teleport", teleport.getPrice(), player, true);
|
||||
player.teleToLocation(teleport.getX(), teleport.getY(), teleport.getZ());
|
||||
success = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!success)
|
||||
{
|
||||
LOGGER.info("No registered teleport location for id: " + _locId);
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
@@ -0,0 +1,61 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package org.l2jmobius.gameserver.network.clientpackets;
|
||||
|
||||
import org.l2jmobius.commons.network.PacketReader;
|
||||
import org.l2jmobius.gameserver.network.GameClient;
|
||||
|
||||
/**
|
||||
* @author NviX
|
||||
*/
|
||||
public class RequestAutoUse implements IClientIncomingPacket
|
||||
{
|
||||
@Override
|
||||
public boolean read(GameClient client, PacketReader packet)
|
||||
{
|
||||
int unk1 = packet.readC(); // C - true. This is summary amount of next data received.
|
||||
LOGGER.info("received packet RequestAutoUse with unk1:" + unk1);
|
||||
int unk2 = packet.readC();
|
||||
LOGGER.info("and unk2: " + unk2);
|
||||
int unk3 = packet.readC(); // Can target mobs, that attacked by other players?
|
||||
LOGGER.info("and unk3: " + unk3);
|
||||
int unk4 = packet.readC(); // Auto pickup?
|
||||
LOGGER.info("and unk4: " + unk4);
|
||||
int unk5 = packet.readC();
|
||||
LOGGER.info("and unk5: " + unk5);
|
||||
int unk6 = packet.readC();
|
||||
LOGGER.info("and unk6: " + unk6);
|
||||
int unk7 = packet.readC(); // short range :1; long: 0
|
||||
LOGGER.info("and unk7: " + unk7);
|
||||
int unk8 = packet.readC(); // received 51 when logged in game...
|
||||
LOGGER.info("and unk8: " + unk8);
|
||||
int unk9 = packet.readC();
|
||||
LOGGER.info("and unk9: " + unk9);
|
||||
int unk10 = packet.readC();
|
||||
LOGGER.info("and unk10: " + unk10);
|
||||
int unk11 = packet.readC();
|
||||
LOGGER.info("and unk11: " + unk11);
|
||||
int unk12 = packet.readC(); // enable/ disable?
|
||||
LOGGER.info("and unk12: " + unk12);
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run(GameClient client)
|
||||
{
|
||||
}
|
||||
}
|
@@ -37,6 +37,7 @@ import org.l2jmobius.gameserver.model.skills.Skill;
|
||||
import org.l2jmobius.gameserver.network.GameClient;
|
||||
import org.l2jmobius.gameserver.network.SystemMessageId;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.EnchantResult;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.ExItemAnnounce;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.InventoryUpdate;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.MagicSkillUse;
|
||||
import org.l2jmobius.gameserver.network.serverpackets.SystemMessage;
|
||||
@@ -230,13 +231,14 @@ public class RequestEnchantItem implements IClientIncomingPacket
|
||||
// announce the success
|
||||
final int minEnchantAnnounce = item.isArmor() ? 6 : 7;
|
||||
final int maxEnchantAnnounce = item.isArmor() ? 0 : 15;
|
||||
if ((item.getEnchantLevel() == minEnchantAnnounce) || (item.getEnchantLevel() == maxEnchantAnnounce))
|
||||
if ((item.getEnchantLevel() >= minEnchantAnnounce) || (item.getEnchantLevel() == maxEnchantAnnounce))
|
||||
{
|
||||
final SystemMessage sm = new SystemMessage(SystemMessageId.C1_HAS_SUCCESSFULLY_ENCHANTED_A_S2_S3);
|
||||
sm.addString(player.getName());
|
||||
sm.addInt(item.getEnchantLevel());
|
||||
sm.addItemName(item);
|
||||
player.broadcastPacket(sm);
|
||||
player.broadcastPacket(new ExItemAnnounce(item));
|
||||
|
||||
final Skill skill = CommonSkill.FIREWORK.getSkill();
|
||||
if (skill != null)
|
||||
|
@@ -46,7 +46,7 @@ public class RequestShortCutDel implements IClientIncomingPacket
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_page > 19) || (_page < 0))
|
||||
if ((_page > 23) || (_page < 0))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
@@ -40,6 +40,7 @@ public class RequestShortCutReg implements IClientIncomingPacket
|
||||
final int slot = packet.readD();
|
||||
_slot = slot % 12;
|
||||
_page = slot / 12;
|
||||
packet.readC(); // 228
|
||||
_id = packet.readD();
|
||||
_lvl = packet.readH();
|
||||
_subLvl = packet.readH(); // Sublevel
|
||||
@@ -50,7 +51,7 @@ public class RequestShortCutReg implements IClientIncomingPacket
|
||||
@Override
|
||||
public void run(GameClient client)
|
||||
{
|
||||
if ((client.getPlayer() == null) || (_page > 19) || (_page < 0))
|
||||
if ((client.getPlayer() == null) || (_page > 23) || (_page < 0))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
@@ -16,10 +16,6 @@
|
||||
*/
|
||||
package org.l2jmobius.gameserver.network.serverpackets;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
import org.l2jmobius.commons.network.PacketWriter;
|
||||
import org.l2jmobius.gameserver.instancemanager.CastleManager;
|
||||
import org.l2jmobius.gameserver.instancemanager.FortManager;
|
||||
@@ -31,25 +27,18 @@ import org.l2jmobius.gameserver.model.entity.Fort;
|
||||
import org.l2jmobius.gameserver.network.OutgoingPackets;
|
||||
|
||||
/**
|
||||
* @author UnAfraid, Nos
|
||||
* @author Mobius
|
||||
*/
|
||||
public class Die implements IClientOutgoingPacket
|
||||
{
|
||||
private final int _objectId;
|
||||
private boolean _toVillage;
|
||||
private boolean _toClanHall;
|
||||
private boolean _toCastle;
|
||||
private boolean _toOutpost;
|
||||
private final boolean _isSweepable;
|
||||
private boolean _useFeather;
|
||||
private boolean _toFortress;
|
||||
private boolean _hideAnimation;
|
||||
private List<Integer> _items = null;
|
||||
private boolean _itemsEnabled;
|
||||
private int _flags = 0;
|
||||
|
||||
public Die(Creature creature)
|
||||
{
|
||||
_objectId = creature.getObjectId();
|
||||
_isSweepable = creature.isAttackable() && creature.isSweepActive();
|
||||
if (creature.isPlayer())
|
||||
{
|
||||
final Clan clan = creature.getActingPlayer().getClan();
|
||||
@@ -70,47 +59,32 @@ public class Die implements IClientOutgoingPacket
|
||||
isInFortDefense = (siegeClan == null) && fort.getSiege().checkIsDefender(clan);
|
||||
}
|
||||
|
||||
_toVillage = creature.canRevive() && !creature.isPendingRevive();
|
||||
_toClanHall = (clan != null) && (clan.getHideoutId() > 0);
|
||||
_toCastle = ((clan != null) && (clan.getCastleId() > 0)) || isInCastleDefense;
|
||||
_toOutpost = ((siegeClan != null) && !isInCastleDefense && !isInFortDefense && !siegeClan.getFlag().isEmpty());
|
||||
_useFeather = creature.getAccessLevel().allowFixedRes() || creature.getInventory().haveItemForSelfResurrection();
|
||||
_toFortress = ((clan != null) && (clan.getFortId() > 0)) || isInFortDefense;
|
||||
// ClanHall check.
|
||||
if ((clan != null) && (clan.getHideoutId() > 0))
|
||||
{
|
||||
_flags += 2;
|
||||
}
|
||||
// Castle check.
|
||||
if (((clan != null) && (clan.getCastleId() > 0)) || isInCastleDefense)
|
||||
{
|
||||
_flags += 4;
|
||||
}
|
||||
// Fortress check.
|
||||
if (((clan != null) && (clan.getFortId() > 0)) || isInFortDefense)
|
||||
{
|
||||
_flags += 8;
|
||||
}
|
||||
// Outpost check.
|
||||
if (((siegeClan != null) && !isInCastleDefense && !isInFortDefense && !siegeClan.getFlag().isEmpty()))
|
||||
{
|
||||
_flags += 16;
|
||||
}
|
||||
// Feather check.
|
||||
if (creature.getAccessLevel().allowFixedRes() || creature.getInventory().haveItemForSelfResurrection())
|
||||
{
|
||||
_flags += 32;
|
||||
}
|
||||
}
|
||||
|
||||
_isSweepable = creature.isAttackable() && creature.isSweepActive();
|
||||
}
|
||||
|
||||
public void setHideAnimation(boolean val)
|
||||
{
|
||||
_hideAnimation = val;
|
||||
}
|
||||
|
||||
public void addItem(int itemId)
|
||||
{
|
||||
if (_items == null)
|
||||
{
|
||||
_items = new ArrayList<>(8);
|
||||
}
|
||||
|
||||
if (_items.size() < 8)
|
||||
{
|
||||
_items.add(itemId);
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new IndexOutOfBoundsException("Die packet doesn't support more then 8 items!");
|
||||
}
|
||||
}
|
||||
|
||||
public List<Integer> getItems()
|
||||
{
|
||||
return _items != null ? _items : Collections.emptyList();
|
||||
}
|
||||
|
||||
public void setItemsEnabled(boolean val)
|
||||
{
|
||||
_itemsEnabled = val;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -119,20 +93,10 @@ public class Die implements IClientOutgoingPacket
|
||||
OutgoingPackets.DIE.writeId(packet);
|
||||
|
||||
packet.writeD(_objectId);
|
||||
packet.writeD(_toVillage ? 0x01 : 0x00);
|
||||
packet.writeD(_toClanHall ? 0x01 : 0x00);
|
||||
packet.writeD(_toCastle ? 0x01 : 0x00);
|
||||
packet.writeD(_toOutpost ? 0x01 : 0x00);
|
||||
packet.writeD(_isSweepable ? 0x01 : 0x00);
|
||||
packet.writeD(_useFeather ? 0x01 : 0x00);
|
||||
packet.writeD(_toFortress ? 0x01 : 0x00);
|
||||
packet.writeD(0x00); // Disables use Feather button for X seconds
|
||||
packet.writeD(0x00); // Adventure's Song
|
||||
packet.writeC(_hideAnimation ? 0x01 : 0x00);
|
||||
|
||||
packet.writeD(_itemsEnabled ? 0x01 : 0x00);
|
||||
packet.writeD(getItems().size());
|
||||
getItems().forEach(packet::writeD);
|
||||
packet.writeC(_flags);
|
||||
packet.writeC(0);
|
||||
packet.writeC(_isSweepable ? 1 : 0);
|
||||
packet.writeC(0); // 1: Resurrection during siege.
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@@ -44,8 +44,8 @@ public class EtcStatusUpdate implements IClientOutgoingPacket
|
||||
|
||||
packet.writeC(_player.getCharges()); // 1-7 increase force, lvl
|
||||
packet.writeD(_player.getWeightPenalty()); // 1-4 weight penalty, lvl (1=50%, 2=66.6%, 3=80%, 4=100%)
|
||||
packet.writeC(_player.getExpertiseWeaponPenalty()); // Weapon Grade Penalty [1-4]
|
||||
packet.writeC(_player.getExpertiseArmorPenalty()); // Armor Grade Penalty [1-4]
|
||||
packet.writeC(0); // Weapon Grade Penalty [1-4]
|
||||
packet.writeC(0); // Armor Grade Penalty [1-4]
|
||||
packet.writeC(0); // Death Penalty [1-15, 0 = disabled)], not used anymore in Ertheia
|
||||
packet.writeC(_player.getChargedSouls());
|
||||
packet.writeC(_mask);
|
||||
|
@@ -0,0 +1,46 @@
|
||||
/*
|
||||
* This file is part of the L2J Mobius project.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package org.l2jmobius.gameserver.network.serverpackets;
|
||||
|
||||
import org.l2jmobius.commons.network.PacketWriter;
|
||||
import org.l2jmobius.gameserver.model.items.instance.ItemInstance;
|
||||
import org.l2jmobius.gameserver.network.OutgoingPackets;
|
||||
|
||||
/**
|
||||
* @author NviX
|
||||
*/
|
||||
public class ExItemAnnounce implements IClientOutgoingPacket
|
||||
{
|
||||
private final ItemInstance _item;
|
||||
|
||||
public ExItemAnnounce(ItemInstance item)
|
||||
{
|
||||
_item = item;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean write(PacketWriter packet)
|
||||
{
|
||||
OutgoingPackets.EX_ITEM_ANNOUNCE.writeId(packet);
|
||||
packet.writeC(0x00);
|
||||
packet.writeString(_item.getName()); // name of item
|
||||
packet.writeD(_item.getId()); // item id
|
||||
packet.writeD(_item.getEnchantLevel()); // enchant level
|
||||
packet.writeC(0x00);
|
||||
return true;
|
||||
}
|
||||
}
|
@@ -23,7 +23,6 @@ import org.l2jmobius.commons.network.PacketWriter;
|
||||
import org.l2jmobius.gameserver.model.buylist.Product;
|
||||
import org.l2jmobius.gameserver.model.buylist.ProductList;
|
||||
import org.l2jmobius.gameserver.model.items.Item;
|
||||
import org.l2jmobius.gameserver.model.items.type.CrystalType;
|
||||
import org.l2jmobius.gameserver.network.OutgoingPackets;
|
||||
|
||||
public class ShopPreviewList implements IClientOutgoingPacket
|
||||
@@ -31,14 +30,12 @@ public class ShopPreviewList implements IClientOutgoingPacket
|
||||
private final int _listId;
|
||||
private final Collection<Product> _list;
|
||||
private final long _money;
|
||||
private CrystalType _expertise;
|
||||
|
||||
public ShopPreviewList(ProductList list, long currentMoney, CrystalType expertise)
|
||||
public ShopPreviewList(ProductList list, long currentMoney)
|
||||
{
|
||||
_listId = list.getListId();
|
||||
_list = list.getProducts();
|
||||
_money = currentMoney;
|
||||
_expertise = expertise;
|
||||
}
|
||||
|
||||
public ShopPreviewList(Collection<Product> lst, int listId, long currentMoney)
|
||||
@@ -60,7 +57,7 @@ public class ShopPreviewList implements IClientOutgoingPacket
|
||||
int newlength = 0;
|
||||
for (Product product : _list)
|
||||
{
|
||||
if (!product.getItem().getCrystalType().isGreater(_expertise) && product.getItem().isEquipable())
|
||||
if (product.getItem().isEquipable())
|
||||
{
|
||||
newlength++;
|
||||
}
|
||||
@@ -69,7 +66,7 @@ public class ShopPreviewList implements IClientOutgoingPacket
|
||||
|
||||
for (Product product : _list)
|
||||
{
|
||||
if (!product.getItem().getCrystalType().isGreater(_expertise) && product.getItem().isEquipable())
|
||||
if (product.getItem().isEquipable())
|
||||
{
|
||||
packet.writeD(product.getItemId());
|
||||
packet.writeH(product.getItem().getType2()); // item type2
|
||||
|
@@ -46,6 +46,8 @@ public class ShortCutInit implements IClientOutgoingPacket
|
||||
packet.writeD(sc.getType().ordinal());
|
||||
packet.writeD(sc.getSlot() + (sc.getPage() * 12));
|
||||
|
||||
packet.writeC(0x00); // 228
|
||||
|
||||
switch (sc.getType())
|
||||
{
|
||||
case ITEM:
|
||||
|
@@ -40,6 +40,9 @@ public class ShortCutRegister implements IClientOutgoingPacket
|
||||
|
||||
packet.writeD(_shortcut.getType().ordinal());
|
||||
packet.writeD(_shortcut.getSlot() + (_shortcut.getPage() * 12)); // C4 Client
|
||||
|
||||
packet.writeC(0x00); // 228
|
||||
|
||||
switch (_shortcut.getType())
|
||||
{
|
||||
case ITEM:
|
||||
@@ -72,6 +75,7 @@ public class ShortCutRegister implements IClientOutgoingPacket
|
||||
{
|
||||
packet.writeD(_shortcut.getId());
|
||||
packet.writeD(_shortcut.getCharacterType());
|
||||
break;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
|
@@ -53,6 +53,7 @@ public class UserInfo extends AbstractMaskPacket<UserInfoType>
|
||||
|
||||
private final byte[] _masks = new byte[]
|
||||
{
|
||||
(byte) 0x00,
|
||||
(byte) 0x00,
|
||||
(byte) 0x00,
|
||||
(byte) 0x00
|
||||
@@ -133,7 +134,7 @@ public class UserInfo extends AbstractMaskPacket<UserInfoType>
|
||||
|
||||
packet.writeD(_player.getObjectId());
|
||||
packet.writeD(_initSize);
|
||||
packet.writeH(24);
|
||||
packet.writeH(25); // 196
|
||||
packet.writeB(_masks);
|
||||
|
||||
if (containsMask(UserInfoType.RELATION))
|
||||
@@ -301,7 +302,7 @@ public class UserInfo extends AbstractMaskPacket<UserInfoType>
|
||||
|
||||
if (containsMask(UserInfoType.SOCIAL))
|
||||
{
|
||||
packet.writeH(22);
|
||||
packet.writeH(30); // 228
|
||||
packet.writeC(_player.getPvpFlag());
|
||||
packet.writeD(_player.getReputation()); // Reputation
|
||||
packet.writeC(_player.getNobleLevel());
|
||||
@@ -311,15 +312,21 @@ public class UserInfo extends AbstractMaskPacket<UserInfoType>
|
||||
packet.writeD(_player.getPvpKills());
|
||||
packet.writeH(_player.getRecomLeft());
|
||||
packet.writeH(_player.getRecomHave());
|
||||
packet.writeD(0x00); // 196
|
||||
packet.writeD(0x00); // 228
|
||||
}
|
||||
|
||||
if (containsMask(UserInfoType.VITA_FAME))
|
||||
{
|
||||
packet.writeH(15);
|
||||
packet.writeH(19); // 196
|
||||
packet.writeD(_player.getVitalityPoints());
|
||||
packet.writeC(0x00); // Vita Bonus
|
||||
packet.writeD(_player.getFame());
|
||||
packet.writeD(_player.getRaidbossPoints());
|
||||
packet.writeC(0x00); // 196
|
||||
packet.writeC(0x00); // 196
|
||||
packet.writeC(0x00); // 196
|
||||
packet.writeC(0x00); // 196
|
||||
}
|
||||
|
||||
if (containsMask(UserInfoType.SLOTS))
|
||||
@@ -360,11 +367,17 @@ public class UserInfo extends AbstractMaskPacket<UserInfoType>
|
||||
|
||||
if (containsMask(UserInfoType.INVENTORY_LIMIT))
|
||||
{
|
||||
packet.writeH(9);
|
||||
packet.writeH(13);
|
||||
packet.writeH(0x00);
|
||||
packet.writeH(0x00);
|
||||
packet.writeH(_player.getInventoryLimit());
|
||||
|
||||
packet.writeC(_player.isCursedWeaponEquipped() ? CursedWeaponsManager.getInstance().getLevel(_player.getCursedWeaponEquippedId()) : 0);
|
||||
|
||||
packet.writeC(0x00); // 196
|
||||
packet.writeC(0x00); // 196
|
||||
packet.writeC(0x00); // 196
|
||||
packet.writeC(0x00); // 196
|
||||
}
|
||||
|
||||
if (containsMask(UserInfoType.TRUE_HERO))
|
||||
@@ -386,6 +399,12 @@ public class UserInfo extends AbstractMaskPacket<UserInfoType>
|
||||
packet.writeD(0x00);
|
||||
}
|
||||
|
||||
if (containsMask(UserInfoType.UNKNOWN_196)) // 196
|
||||
{
|
||||
packet.writeH(6); // 196
|
||||
packet.writeD(0x00); // 196
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication">
|
||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
|
||||
<listEntry value="/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/gameserver/GameServer.java"/>
|
||||
<listEntry value="/L2J_Mobius_7.0_PreludeOfWar/java/com/l2jmobius/gameserver/GameServer.java"/>
|
||||
</listAttribute>
|
||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
|
||||
<listEntry value="1"/>
|
||||
@@ -11,7 +11,7 @@
|
||||
</listAttribute>
|
||||
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_START_ON_FIRST_THREAD" value="true"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.l2jmobius.gameserver.GameServer"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="L2J_Mobius_6.0_Fafurion"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="L2J_Mobius_7.0_PreludeOfWar"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Dorg.slf4j.simpleLogger.log.com.zaxxer.hikari=error"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.WORKING_DIRECTORY" value="${workspace_loc:L2J_Mobius_6.0_Fafurion}/dist/game/"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.WORKING_DIRECTORY" value="${workspace_loc:L2J_Mobius_7.0_PreludeOfWar}/dist/game/"/>
|
||||
</launchConfiguration>
|
||||
|
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication">
|
||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
|
||||
<listEntry value="/L2J_Mobius_6.0_Fafurion/java/com/l2jmobius/loginserver/LoginServer.java"/>
|
||||
<listEntry value="/L2J_Mobius_7.0_PreludeOfWar/java/com/l2jmobius/loginserver/LoginServer.java"/>
|
||||
</listAttribute>
|
||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
|
||||
<listEntry value="1"/>
|
||||
@@ -12,7 +12,7 @@
|
||||
<booleanAttribute key="org.eclipse.jdt.debug.ui.INCLUDE_EXTERNAL_JARS" value="true"/>
|
||||
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_START_ON_FIRST_THREAD" value="true"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.l2jmobius.loginserver.LoginServer"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="L2J_Mobius_6.0_Fafurion"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="L2J_Mobius_7.0_PreludeOfWar"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Dorg.slf4j.simpleLogger.log.com.zaxxer.hikari=error"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.WORKING_DIRECTORY" value="${workspace_loc:L2J_Mobius_6.0_Fafurion}/dist/login/"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.WORKING_DIRECTORY" value="${workspace_loc:L2J_Mobius_7.0_PreludeOfWar}/dist/login/"/>
|
||||
</launchConfiguration>
|
||||
|
@@ -1,9 +1,6 @@
|
||||
L2J-Mobius Fafurion
|
||||
L2J-Mobius Prelude of War
|
||||
|
||||
Client mirror 1: https://mega.nz/#!AHA1EQgQ!cjt1DxvIh4CIFkuyqEGMLLmfOcZslfWfH-vWjCYhYrc
|
||||
Use mega downloader to download https://megadownloader.en.softonic.com/
|
||||
|
||||
Client mirror 2: https://drive.google.com/uc?id=1yeYwrQEIcmAz5Ha1R05c3QgntRPy9y0V&export=download
|
||||
Client:
|
||||
|
||||
Geodata: https://www.mediafire.com/file/17gbt8jt1tyo5gi/L2J_Mobius_6.0_Fafurion_Geodata.zip
|
||||
JDK: https://www.mediafire.com/file/k25pt0umuf16uoh/openjdk-12.0.2_windows-x64_bin.zip
|
||||
@@ -96,12 +93,16 @@ Etina's Fate:
|
||||
-Parsed new items from client
|
||||
-Artifact item support
|
||||
|
||||
Fafurion:
|
||||
Fafurion: https://eu.4game.com/patchnotes/lineage2/132/
|
||||
-Support for R110 items
|
||||
-Spawned new areas
|
||||
-Retail gatekeeper teleports
|
||||
-Equipment upgrade system
|
||||
|
||||
Prelude of War: https://eu.4game.com/patchnotes/lineage2/176/
|
||||
-Teleport list system.
|
||||
-Removed item grade penalty.
|
||||
|
||||
Events:
|
||||
-Birth of Draco
|
||||
-Character Birthday
|
||||
|
Reference in New Issue
Block a user