Fortune Pocket items.

This commit is contained in:
MobiusDev
2016-07-08 11:56:11 +00:00
parent 75251f7c00
commit a77c8fe253
4 changed files with 241 additions and 19 deletions

View File

@@ -140,6 +140,7 @@ public final class EffectMasterHandler
EffectHandler.getInstance().registerHandler("GetMomentum", GetMomentum::new);
EffectHandler.getInstance().registerHandler("GiveRecommendation", GiveRecommendation::new);
EffectHandler.getInstance().registerHandler("GiveSp", GiveSp::new);
EffectHandler.getInstance().registerHandler("GiveXp", GiveXp::new);
EffectHandler.getInstance().registerHandler("Grow", Grow::new);
EffectHandler.getInstance().registerHandler("HairAccessorySet", HairAccessorySet::new);
EffectHandler.getInstance().registerHandler("Harvesting", Harvesting::new);

View File

@@ -0,0 +1,54 @@
/*
* 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 com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.effects.AbstractEffect;
import com.l2jmobius.gameserver.model.items.instance.L2ItemInstance;
import com.l2jmobius.gameserver.model.skills.Skill;
/**
* Give XP effect implementation.
* @author Mobius
*/
public final class GiveXp extends AbstractEffect
{
private final int _xp;
public GiveXp(StatsSet params)
{
_xp = params.getInt("xp", 0);
}
@Override
public boolean isInstant()
{
return true;
}
@Override
public void instant(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{
if (!effector.isPlayer() || !effected.isPlayer() || effected.isAlikeDead())
{
return;
}
effector.getActingPlayer().addExpAndSp(_xp, 0);
}
}

View File

@@ -646,6 +646,13 @@
<set name="is_sellable" val="false" />
<set name="etcitem_type" val="SCROLL" />
<set name="commissionItemType" val="OTHER_ITEM" />
<set name="handler" val="ItemSkills" />
<cond msgId="1902">
<player levelRange="1;84" />
</cond>
<skills>
<skill id="18017" level="1" /> <!-- Maphr's Pouch -->
</skills>
</item>
<item id="39630" name="Fortune Pocket - Stage 2" type="EtcItem">
<!-- Use to obtain 1600000 XP. Go to Pelu the Grocer in Faeron Village to combine to 2 Stage 2 Pockets. Under Lv. 85 only. -->
@@ -655,6 +662,13 @@
<set name="is_sellable" val="false" />
<set name="etcitem_type" val="SCROLL" />
<set name="commissionItemType" val="OTHER_ITEM" />
<set name="handler" val="ItemSkills" />
<cond msgId="1902">
<player levelRange="1;84" />
</cond>
<skills>
<skill id="18018" level="1" /> <!-- Maphr's Pouch -->
</skills>
</item>
<item id="39631" name="Fortune Pocket - Stage 3" type="EtcItem">
<!-- Use to obtain 6400000 XP, plus a little something else. Go to Pelu the Grocer in Faeron Village to combine to 2 Stage 3 Pockets. Under Lv. 85 only. -->
@@ -664,6 +678,14 @@
<set name="is_sellable" val="false" />
<set name="etcitem_type" val="SCROLL" />
<set name="commissionItemType" val="OTHER_ITEM" />
<set name="handler" val="ItemSkills" />
<cond msgId="1902">
<player levelRange="1;84" />
</cond>
<skills>
<skill id="18019" level="1" /> <!-- Maphr's Pouch -->
<skill id="18020" level="1" /> <!-- Maphr's Pouch -->
</skills>
</item>
<item id="39632" name="Fortune Pocket - Stage 4" type="EtcItem">
<!-- Use to obtain 80000 SP. Go to Pelu the Grocer in Faeron Village to combine to 2 Stage 4 Pockets. Lv. 85 or above. -->
@@ -673,6 +695,13 @@
<set name="is_sellable" val="false" />
<set name="etcitem_type" val="SCROLL" />
<set name="commissionItemType" val="OTHER_ITEM" />
<set name="handler" val="ItemSkills" />
<cond msgId="1902">
<player levelRange="85;107" />
</cond>
<skills>
<skill id="18021" level="1" /> <!-- Maphr's Pouch -->
</skills>
</item>
<item id="39633" name="Fortune Pocket - Stage 5" type="EtcItem">
<!-- Use to obtain 256000 SP, plus a little something else. Lv. 85 or above. -->
@@ -681,6 +710,14 @@
<set name="is_sellable" val="false" />
<set name="etcitem_type" val="SCROLL" />
<set name="is_stackable" val="true" />
<set name="handler" val="ItemSkills" />
<cond msgId="1902">
<player levelRange="85;107" />
</cond>
<skills>
<skill id="18022" level="1" /> <!-- Maphr's Pouch -->
<skill id="18023" level="1" /> <!-- Maphr's Pouch -->
</skills>
</item>
<item id="39634" name="Venir's Talisman" additionalName="Stage 1" type="Armor">
<!-- MEN + 1. Equipping 2 or more Venir's Talismans gives the effect of the highest-level talisman. -->

View File

@@ -223,55 +223,185 @@
<reuseDelay>600000</reuseDelay>
</skill>
<skill id="18017" toLevel="1" name="Maphr's Pouch">
<!-- AUTO GENERATED SKILL -->
<!-- Use to obtain 400,000 XP. Can combine 2 Lv. 1 pouches. Below Lv. 85 only. -->
<icon>icon.skill0000</icon>
<isMagic>2</isMagic> <!-- Static Skill -->
<itemConsumeCount>1</itemConsumeCount>
<itemConsumeId>39629</itemConsumeId> <!-- Fortune Pocket - Stage 1 -->
<magicLvl>1</magicLvl>
<operateType>A1</operateType>
<reuseDelay>1000</reuseDelay>
<rideState>NONE;STRIDER;WYVERN;WOLF</rideState>
<magicCriticalRate>5</magicCriticalRate>
<hitCancelTime>0</hitCancelTime>
<targetType>SELF</targetType>
<affectScope>SINGLE</affectScope>
<effects>
<effect name="GiveXp">
<xp>400000</xp>
</effect>
</effects>
</skill>
<skill id="18018" toLevel="1" name="Maphr's Pouch">
<!-- AUTO GENERATED SKILL -->
<!-- Use to obtain 1,600,000 XP. Can combine 2 Lv. 2 pouches. Below Lv. 85 only. -->
<icon>icon.skill0000</icon>
<isMagic>2</isMagic> <!-- Static Skill -->
<itemConsumeCount>1</itemConsumeCount>
<itemConsumeId>39630</itemConsumeId> <!-- Fortune Pocket - Stage 2 -->
<magicLvl>1</magicLvl>
<operateType>A1</operateType>
<reuseDelay>1000</reuseDelay>
<rideState>NONE;STRIDER;WYVERN;WOLF</rideState>
<magicCriticalRate>5</magicCriticalRate>
<hitCancelTime>0</hitCancelTime>
<targetType>SELF</targetType>
<affectScope>SINGLE</affectScope>
<effects>
<effect name="GiveXp">
<xp>1600000</xp>
</effect>
</effects>
</skill>
<skill id="18019" toLevel="1" name="Maphr's Pouch">
<!-- AUTO GENERATED SKILL -->
<!-- Use to obtain 6,400,000 XP. Below Lv. 85 only. -->
<icon>icon.skill0000</icon>
<isMagic>2</isMagic> <!-- Static Skill -->
<itemConsumeCount>1</itemConsumeCount>
<itemConsumeId>39631</itemConsumeId> <!-- Fortune Pocket - Stage 3 -->
<magicLvl>1</magicLvl>
<operateType>A1</operateType>
<reuseDelay>5000</reuseDelay>
<reuseDelay>1000</reuseDelay>
<rideState>NONE;STRIDER;WYVERN;WOLF</rideState>
<magicCriticalRate>5</magicCriticalRate>
<hitCancelTime>0</hitCancelTime>
<targetType>SELF</targetType>
<affectScope>SINGLE</affectScope>
<effects>
<effect name="GiveXp">
<xp>6400000</xp>
</effect>
</effects>
</skill>
<skill id="18020" toLevel="2" name="Maphr's Pouch">
<!-- AUTO GENERATED SKILL -->
<!-- Random Prize. -->
<icon>icon.skill0000</icon>
<operateType>A1</operateType>
<reuseDelay>1000</reuseDelay>
<rideState>NONE;STRIDER;WYVERN;WOLF</rideState>
<magicCriticalRate>5</magicCriticalRate>
<hitCancelTime>0</hitCancelTime>
<magicLvl>1</magicLvl>
<isMagic>2</isMagic>
<targetType>SELF</targetType>
<affectScope>SINGLE</affectScope>
<effects>
<effect name="RestorationRandom">
<items>
<item chance="1">
<item id="39631" count="10" />
</item>
<item chance="4.5">
<item id="39386" count="1" />
</item>
<item chance="3.5">
<item id="39387" count="1" />
</item>
<item chance="0.5">
<item id="39388" count="1" />
</item>
<item chance="2">
<item id="39720" count="1" />
</item>
<item chance="30">
<item id="57" count="20000" />
</item>
<item chance="30">
<item id="57" count="200000" />
</item>
<item chance="30">
<item id="57" count="2000000" />
</item>
</items>
</effect>
</effects>
</skill>
<skill id="18021" toLevel="1" name="Maphr's Pouch">
<!-- AUTO GENERATED SKILL -->
<!-- Use to obtain 80,000 XP. Can combine 2 Lv. 4 pouches. -->
<icon>icon.skill0000</icon>
<isMagic>2</isMagic> <!-- Static Skill -->
<itemConsumeCount>1</itemConsumeCount>
<itemConsumeId>39632</itemConsumeId> <!-- Fortune Pocket - Stage 4 -->
<magicLvl>1</magicLvl>
<operateType>A1</operateType>
<hitTime>200</hitTime>
<reuseDelay>1000</reuseDelay>
<rideState>NONE;STRIDER;WYVERN;WOLF</rideState>
<magicCriticalRate>5</magicCriticalRate>
<hitCancelTime>0</hitCancelTime>
<targetType>SELF</targetType>
<affectScope>SINGLE</affectScope>
<effects>
<effect name="GiveXp">
<xp>80000</xp>
</effect>
</effects>
</skill>
<skill id="18022" toLevel="1" name="Maphr's Pouch">
<!-- AUTO GENERATED SKILL -->
<!-- Use to obtain 256,000 SP. -->
<icon>icon.skill0000</icon>
<isMagic>2</isMagic> <!-- Static Skill -->
<itemConsumeCount>1</itemConsumeCount>
<itemConsumeId>39633</itemConsumeId> <!-- Fortune Pocket - Stage 5 -->
<magicLvl>1</magicLvl>
<operateType>A1</operateType>
<hitTime>200</hitTime>
<reuseDelay>3000</reuseDelay>
<reuseDelay>1000</reuseDelay>
<rideState>NONE;STRIDER;WYVERN;WOLF</rideState>
<magicCriticalRate>5</magicCriticalRate>
<hitCancelTime>0</hitCancelTime>
<targetType>SELF</targetType>
<affectScope>SINGLE</affectScope>
<effects>
<effect name="GiveSp">
<sp>256000</sp>
</effect>
</effects>
</skill>
<skill id="18023" toLevel="2" name="Maphr's Pouch">
<!-- AUTO GENERATED SKILL -->
<!-- Random Prize. -->
<icon>icon.skill0000</icon>
<operateType>A1</operateType>
<reuseDelay>1000</reuseDelay>
<rideState>NONE;STRIDER;WYVERN;WOLF</rideState>
<magicCriticalRate>5</magicCriticalRate>
<hitCancelTime>0</hitCancelTime>
<magicLvl>1</magicLvl>
<isMagic>2</isMagic>
<targetType>SELF</targetType>
<affectScope>SINGLE</affectScope>
<effects>
<effect name="RestorationRandom">
<items>
<item chance="4.5">
<item id="39633" count="10" />
</item>
<item chance="2">
<item id="39389" count="1" />
</item>
<item chance="0.5">
<item id="39390" count="1" />
</item>
<item chance="15.5">
<item id="39720" count="1" />
</item>
<item chance="3">
<item id="57" count="100000000" />
</item>
<item chance="3">
<item id="57" count="1000000000" />
</item>
<item chance="30">
<item id="57" count="100000" />
</item>
<item chance="30">
<item id="57" count="1000000" />
</item>
<item chance="30">
<item id="57" count="10000000" />
</item>
</items>
</effect>
</effects>
</skill>
<skill id="18024" toLevel="24" name="Venir's Talisman">
<!-- Updated to Infinity Odyssey -->