瀏覽代碼

BETA: Added new effect !VitalityPointUp and removed old skillType.
Reviewed by: Zoey76

Adry_85 12 年之前
父節點
當前提交
a317b6fbaa

+ 1 - 0
L2J_DataPack_BETA/dist/game/data/scripts/handlers/EffectMasterHandler.java

@@ -143,6 +143,7 @@ public final class EffectMasterHandler
 		TransferDamage.class,
 		Transformation.class,
 		UnsummonAgathion.class,
+		VitalityPointUp.class,
 		Warp.class,
 	};
 	

+ 0 - 2
L2J_DataPack_BETA/dist/game/data/scripts/handlers/MasterHandler.java

@@ -216,7 +216,6 @@ import handlers.skillhandlers.Fishing;
 import handlers.skillhandlers.FishingSkill;
 import handlers.skillhandlers.GetPlayer;
 import handlers.skillhandlers.GiveReco;
-import handlers.skillhandlers.GiveVitality;
 import handlers.skillhandlers.InstantJump;
 import handlers.skillhandlers.NornilsPower;
 import handlers.skillhandlers.RefuelAirShip;
@@ -520,7 +519,6 @@ public class MasterHandler
 			FishingSkill.class,
 			GetPlayer.class,
 			GiveReco.class,
-			GiveVitality.class,
 			InstantJump.class,
 			NornilsPower.class,
 			RefuelAirShip.class,

+ 55 - 0
L2J_DataPack_BETA/dist/game/data/scripts/handlers/effecthandlers/VitalityPointUp.java

@@ -0,0 +1,55 @@
+/*
+ * Copyright (C) 2004-2013 L2J DataPack
+ * 
+ * This file is part of L2J DataPack.
+ * 
+ * L2J DataPack 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.
+ * 
+ * L2J DataPack 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.l2jserver.gameserver.model.effects.EffectTemplate;
+import com.l2jserver.gameserver.model.effects.L2Effect;
+import com.l2jserver.gameserver.model.effects.L2EffectType;
+import com.l2jserver.gameserver.model.stats.Env;
+import com.l2jserver.gameserver.network.serverpackets.UserInfo;
+
+/**
+ * Vitality Point Up effect implementation.
+ * @author Adry_85
+ */
+public class VitalityPointUp extends L2Effect
+{
+	public VitalityPointUp(Env env, EffectTemplate template)
+	{
+		super(env, template);
+	}
+	
+	@Override
+	public L2EffectType getEffectType()
+	{
+		return L2EffectType.NONE;
+	}
+	
+	@Override
+	public boolean onStart()
+	{
+		if ((getEffected() != null) && getEffected().isPlayer())
+		{
+			getEffected().getActingPlayer().updateVitalityPoints((float) calc(), false, false);
+			getEffected().getActingPlayer().sendPacket(new UserInfo(getEffected().getActingPlayer()));
+			return true;
+		}
+		return false;
+	}
+}

+ 0 - 63
L2J_DataPack_BETA/dist/game/data/scripts/handlers/skillhandlers/GiveVitality.java

@@ -1,63 +0,0 @@
-/*
- * Copyright (C) 2004-2013 L2J DataPack
- * 
- * This file is part of L2J DataPack.
- * 
- * L2J DataPack 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.
- * 
- * L2J DataPack 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.skillhandlers;
-
-import com.l2jserver.gameserver.handler.ISkillHandler;
-import com.l2jserver.gameserver.model.L2Object;
-import com.l2jserver.gameserver.model.actor.L2Character;
-import com.l2jserver.gameserver.model.skills.L2Skill;
-import com.l2jserver.gameserver.model.skills.L2SkillType;
-import com.l2jserver.gameserver.network.SystemMessageId;
-import com.l2jserver.gameserver.network.serverpackets.SystemMessage;
-import com.l2jserver.gameserver.network.serverpackets.UserInfo;
-
-public class GiveVitality implements ISkillHandler
-{
-	private static final L2SkillType[] SKILL_IDS =
-	{
-		L2SkillType.GIVE_VITALITY
-	};
-	
-	@Override
-	public void useSkill(L2Character activeChar, L2Skill skill, L2Object[] targets)
-	{
-		for (L2Object target : targets)
-		{
-			if (target.isPlayer())
-			{
-				if (skill.hasEffects())
-				{
-					target.getActingPlayer().stopSkillEffects(skill.getId());
-					skill.getEffects(activeChar, target.getActingPlayer());
-					SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.YOU_FEEL_S1_EFFECT);
-					sm.addSkillName(skill);
-					target.sendPacket(sm);
-				}
-				target.getActingPlayer().updateVitalityPoints((float) skill.getPower(), false, false);
-				target.getActingPlayer().sendPacket(new UserInfo(target.getActingPlayer()));
-			}
-		}
-	}
-	
-	@Override
-	public L2SkillType[] getSkillIds()
-	{
-		return SKILL_IDS;
-	}
-}

+ 7 - 4
L2J_DataPack_BETA/dist/game/data/stats/skills/02500-02599.xml

@@ -1452,13 +1452,16 @@
 		<set name="targetType" val="SELF" />
 	</skill>
 	<skill id="2586" levels="2" name="Energy Replenishing Potion">
-		<!-- lvl1 your vitality points x2 -->
-		<!-- lvl2 full recover of your vitality points -->
+		<!-- Confirmed CT2.5 -->
+		<table name="#value"> 10000 20000 </table>
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
+		<set name="magicLvl" val="1" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="3600000" />
-		<set name="skillType" val="NOTDONE" />
-		<set name="targetType" val="NONE" />
+		<set name="targetType" val="SELF" />
+		<for>
+			<effect name="VitalityPointUp" noicon="1" val="#value" />
+		</for>
 	</skill>
 	<skill id="2587" levels="1" name="Increase number of teleport slots.">
 		<set name="isMagic" val="2" /> <!-- Static Skill -->

+ 16 - 4
L2J_DataPack_BETA/dist/game/data/stats/skills/02600-02699.xml

@@ -538,16 +538,28 @@
 		</for>
 	</skill>
 	<skill id="2645" levels="1" name="Multi-Colored Honey Rice Cake">
+		<!-- Confirmed CT2.5 -->
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
+		<set name="itemConsumeCount" val="1" />
+		<set name="itemConsumeId" val="13420" />
+		<set name="magicLvl" val="1" />
 		<set name="operateType" val="A1" />
-		<set name="skillType" val="NOTDONE" />
-		<set name="targetType" val="NONE" />
+		<set name="targetType" val="SELF" />
+		<for>
+			<effect name="VitalityPointUp" noicon="1" val="20000" />
+		</for>
 	</skill>
 	<skill id="2646" levels="1" name="Honey Wheat Cake">
+		<!-- Confirmed CT2.5 -->
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
+		<set name="itemConsumeCount" val="1" />
+		<set name="itemConsumeId" val="13421" />
+		<set name="magicLvl" val="1" />
 		<set name="operateType" val="A1" />
-		<set name="skillType" val="NOTDONE" />
-		<set name="targetType" val="NONE" />
+		<set name="targetType" val="SELF" />
+		<for>
+			<effect name="VitalityPointUp" noicon="1" val="20000" />
+		</for>
 	</skill>
 	<skill id="2647" levels="1" name="Energy Star Stone">
 		<set name="hitTime" val="200" />

+ 8 - 2
L2J_DataPack_BETA/dist/game/data/stats/skills/02800-02899.xml

@@ -1687,11 +1687,17 @@
 		<set name="targetType" val="NONE" />
 	</skill>
 	<skill id="2894" levels="1" name="White Day Candy">
+		<!-- Confirmed CT2.5 -->
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
+		<set name="itemConsumeCount" val="1" />
+		<set name="itemConsumeId" val="14769" />
+		<set name="magicLvl" val="1" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="3600000" />
-		<set name="skillType" val="NOTDONE" />
-		<set name="targetType" val="NONE" />
+		<set name="targetType" val="SELF" />
+		<for>
+			<effect name="VitalityPointUp" noicon="1" val="20000" />
+		</for>
 	</skill>
 	<skill id="2895" levels="1" name="Special White Day Candy Basket">
 		<!-- Confirmed CT2.5 -->

+ 10 - 4
L2J_DataPack_BETA/dist/game/data/stats/skills/05700-05799.xml

@@ -1146,12 +1146,18 @@
 		<set name="targetType" val="NONE" />
 	</skill>
 	<skill id="5774" levels="2" name="Pailaka Reward Energy Replenishing">
-		<!-- lvl1 restore 50%, lvl2 restore 100% of vitality -->
-		<!-- lvl1 used on pailaka 40, lvl2 used on pailaka 60/70 -->
+		<!-- Confirmed CT2.5 -->
+		<table name="#value"> 10000 20000 </table>
+		<set name="aggroPoints" val="100" />
+		<set name="castRange" val="900" />
+		<set name="effectRange" val="1400" />
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
+		<set name="magicLvl" val="1" />
 		<set name="operateType" val="A1" />
-		<set name="skillType" val="NOTDONE" />
-		<set name="targetType" val="NONE" />
+		<set name="targetType" val="ONE" />
+		<for>
+			<effect name="VitalityPointUp" noicon="1" val="#value" />
+		</for>
 	</skill>
 	<skill id="5775" levels="1" name="Great Blessing of Pathfinder">
 		<set name="abnormalLvl" val="1" />

+ 32 - 8
L2J_DataPack_BETA/dist/game/data/stats/skills/09000-09099.xml

@@ -397,18 +397,30 @@
 		</for>
 	</skill>
 	<skill id="9038" levels="1" name="Steamed Rice Cake">
+		<!-- Confirmed CT2.5 -->
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
+		<set name="itemConsumeCount" val="1" />
+		<set name="itemConsumeId" val="15379" />
+		<set name="magicLvl" val="1" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="3600000" />
-		<set name="skillType" val="NOTDONE" />
-		<set name="targetType" val="NONE" />
+		<set name="targetType" val="SELF" />
+		<for>
+			<effect name="VitalityPointUp" noicon="1" val="20000" />
+		</for>
 	</skill>
 	<skill id="9039" levels="1" name="Steamed Rice Cake">
+		<!-- Confirmed CT2.5 -->
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
+		<set name="itemConsumeCount" val="1" />
+		<set name="itemConsumeId" val="15380" />
+		<set name="magicLvl" val="1" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="3600000" />
-		<set name="skillType" val="NOTDONE" />
-		<set name="targetType" val="NONE" />
+		<set name="targetType" val="SELF" />
+		<for>
+			<effect name="VitalityPointUp" noicon="1" val="20000" />
+		</for>
 	</skill>
 	<skill id="9040" levels="1" name="PC Cafe Points">
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
@@ -1035,11 +1047,17 @@
 		</for>
 	</skill>
 	<skill id="9081" levels="1" name="Christmas Cake">
+		<!-- Confirmed CT2.5 -->
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
+		<set name="itemConsumeCount" val="1" />
+		<set name="itemConsumeId" val="16403" />
+		<set name="magicLvl" val="1" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="3600000" />
-		<set name="skillType" val="NOTDONE" />
-		<set name="targetType" val="NONE" />
+		<set name="targetType" val="SELF" />
+		<for>
+			<effect name="VitalityPointUp" noicon="1" val="20000" />
+		</for>
 	</skill>
 	<skill id="9082" levels="1" name="White Christmas Petition">
 		<!-- Energy is maintained for 10 minutes. Petition asking for it to snow on Christmas. -->
@@ -1053,11 +1071,17 @@
 		<set name="targetType" val="NONE" />
 	</skill>
 	<skill id="9083" levels="1" name="Christmas Cake - event">
+		<!-- Confirmed CT2.5 -->
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
+		<set name="itemConsumeCount" val="1" />
+		<set name="itemConsumeId" val="16405" />
+		<set name="magicLvl" val="1" />
 		<set name="operateType" val="A1" />
 		<set name="reuseDelay" val="3600000" />
-		<set name="skillType" val="NOTDONE" />
-		<set name="targetType" val="NONE" />
+		<set name="targetType" val="SELF" />
+		<for>
+			<effect name="VitalityPointUp" noicon="1" val="20000" />
+		</for>
 	</skill>
 	<skill id="9084" levels="1" name="White Christmas Petition - event">
 		<!-- Energy is maintained for 10 minutes. Petition asking for it to snow on Christmas. -->

+ 13 - 3
L2J_DataPack_BETA/dist/game/data/stats/skills/21100-21199.xml

@@ -1377,14 +1377,24 @@
 		<set name="trait" val="ETC" />
 	</skill>
 	<skill id="21199" levels="1" name="Vitality of Courage">
-		<!-- Recovers all energy with the power of courage, and maintains the energy stage for 5 minutes. Reuse delay 30 minutes. When you use the skill, 1 Proof of a Warrior is consumed. -->
+		<!-- Confirmed CT2.5 -->
 		<set name="abnormalLvl" val="26" />
 		<set name="abnormalTime" val="300" />
 		<set name="abnormalType" val="VP_KEEP" />
+		<set name="aggroPoints" val="1" />
+		<set name="hitTime" val="500" />
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
+		<set name="itemConsumeCount" val="1" />
+		<set name="itemConsumeId" val="20976" />
 		<set name="operateType" val="A2" />
 		<set name="reuseDelay" val="1800000" />
-		<set name="skillType" val="NOTDONE" />
-		<set name="targetType" val="NONE" />
+		<set name="skillType" val="BUFF" />
+		<set name="targetType" val="SELF" />
+		<for>
+			<effect name="VitalityPointUp" noicon="1" val="20000" />
+			<effect name="Buff" val="0">
+				<sub order="0x40" stat="vitalityConsumeRate" val="0" />
+			</effect>
+		</for>
 	</skill>
 </list>

+ 17 - 12
L2J_DataPack_BETA/dist/game/data/stats/skills/22000-22099.xml

@@ -62,20 +62,23 @@
 		<!-- Confirmed CT2.5 -->
 		<set name="hitTime" val="100" />
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
+		<set name="magicLvl" val="1" />
 		<set name="operateType" val="A1" />
-		<set name="power" val="600" />
 		<set name="reuseDelay" val="2000" />
-		<set name="skillType" val="GIVE_VITALITY" />
 		<set name="targetType" val="SELF" />
+		<for>
+			<effect name="VitalityPointUp" noicon="1" val="600" />
+		</for>
 	</skill>
 	<skill id="22006" levels="1" name="Halloween Candy">
 		<!-- Confirmed CT2.5 -->
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
-		<set name="itemConsumeCount" val="1" />
+		<set name="magicLvl" val="1" />
 		<set name="operateType" val="A1" />
-		<set name="power" val="20000" />
-		<set name="skillType" val="GIVE_VITALITY" />
 		<set name="targetType" val="SELF" />
+		<for>
+			<effect name="VitalityPointUp" noicon="1" val="20000" />
+		</for>
 	</skill>
 	<skill id="22007" levels="1" name="Good Luck Lucky Bag">
 		<!-- Confirmed CT2.5 -->
@@ -489,11 +492,12 @@
 	<skill id="22028" levels="1" name="Chocolate Cookie">
 		<!-- Confirmed CT2.5 -->
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
-		<set name="itemConsumeCount" val="1" />
+		<set name="magicLvl" val="1" />
 		<set name="operateType" val="A1" />
-		<set name="power" val="20000" />
-		<set name="skillType" val="GIVE_VITALITY" />
 		<set name="targetType" val="SELF" />
+		<for>
+			<effect name="VitalityPointUp" noicon="1" val="20000" />
+		</for>
 	</skill>
 	<skill id="22029" levels="1" name="Baguette Herb">
 		<set name="abnormalLvl" val="1" />
@@ -877,13 +881,14 @@
 		</for>
 	</skill>
 	<skill id="22055" levels="1" name="Potion of Energy Replenishing">
+		<!-- Confirmed CT2.5 -->
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
-		<set name="itemConsumeCount" val="1" />
+		<set name="magicLvl" val="1" />
 		<set name="operateType" val="A1" />
-		<set name="power" val="5000" />
-		<set name="reuseDelay" val="1800000" />
-		<set name="skillType" val="GIVE_VITALITY" />
 		<set name="targetType" val="SELF" />
+		<for>
+			<effect name="VitalityPointUp" noicon="1" val="5000" />
+		</for>
 	</skill>
 	<skill id="22056" levels="1" name="Wind Walk">
 		<set name="abnormalLvl" val="26" />

+ 7 - 4
L2J_DataPack_BETA/dist/game/data/stats/skills/22100-22199.xml

@@ -653,19 +653,22 @@
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
 		<set name="magicLvl" val="1" />
 		<set name="operateType" val="A1" />
-		<set name="power" val="20000" />
-		<set name="skillType" val="GIVE_VITALITY" />
 		<set name="targetType" val="SELF" />
+		<for>
+			<effect name="VitalityPointUp" noicon="1" val="20000" />
+		</for>
 	</skill>
 	<skill id="22138" levels="1" name="Mango Dessert">
 		<!-- Confirmed CT2.5 -->
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
 		<set name="itemConsumeCount" val="1" />
+		<set name="itemConsumeId" val="20899" />
 		<set name="magicLvl" val="1" />
 		<set name="operateType" val="A1" />
-		<set name="power" val="20000" />
-		<set name="skillType" val="GIVE_VITALITY" />
 		<set name="targetType" val="SELF" />
+		<for>
+			<effect name="VitalityPointUp" noicon="1" val="20000" />
+		</for>
 	</skill>
 	<skill id="22139" levels="1" name="Branding Wind Walk">
 		<!-- Confirmed CT2.5 -->

+ 29 - 8
L2J_DataPack_BETA/dist/game/data/stats/skills/23100-23199.xml

@@ -562,10 +562,17 @@
 		<set name="targetType" val="NONE" />
 	</skill>
 	<skill id="23162" levels="1" name="Rudolphina's Blessing - Replenish Vitality">
+		<!-- Confirmed CT2.5 -->
+		<!-- <set name="castRange" val="600" /> -->
+		<!-- <set name="effectRange" val="600" /> -->
+		<set name="hitTime" val="500" />
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
+		<set name="magicLvl" val="1" />
 		<set name="operateType" val="A1" />
-		<set name="skillType" val="NOTDONE" />
-		<set name="targetType" val="NONE" />
+		<set name="targetType" val="SELF" />
+		<for>
+			<effect name="VitalityPointUp" noicon="1" val="20000" />
+		</for>
 	</skill>
 	<skill id="23163" levels="1" name="Turkey's Big Mistake">
 		<!-- For 1 hour, increases Max HP, MP, and CP by 50%. Increases physical P. Atk., magic M. Atk., physical P. Def., and magic M. Def. by 20%. Increases moving speed by 30%. -->
@@ -600,10 +607,19 @@
 		<set name="trait" val="ETC" />
 	</skill>
 	<skill id="23166" levels="1" name="Energized Rose Spirit">
+		<!-- Confirmed CT2.5 -->
+		<set name="aggroPoints" val="1" />
+		<set name="castRange" val="900" />
+		<set name="effectRange" val="1400" />
+		<set name="hitTime" val="6000" />
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
+		<set name="magicLvl" val="1" />
 		<set name="operateType" val="A1" />
-		<set name="skillType" val="NOTDONE" />
-		<set name="targetType" val="NONE" />
+		<set name="targetType" val="ONE" />
+		<for>
+			<!-- TODO: Need new effect i_dispel_by_name. -->
+			<effect name="VitalityPointUp" noicon="1" val="5000" />
+		</for>
 	</skill>
 	<skill id="23167" levels="1" name="Rosy Seduction">
 		<!-- Increases Max HP by 20%, Max MP by 20%, and the moving speed by 20% for 5 minutes. Increases the resistance to de-buffs by 10%. Reuse delay 10 minutes. Consumes 3 Rose Essence during skill use. -->
@@ -760,8 +776,7 @@
 		<set name="abnormalType" val="VP_KEEP" />
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
 		<set name="operateType" val="A2" />
-		<set name="power" val="20000" />
-		<set name="skillType" val="GIVE_VITALITY" />
+		<set name="skillType" val="BUFF" />
 		<set name="targetType" val="ONE" />
 		<for>
 			<effect name="Buff" val="0" abnormalVisualEffect="vitality">
@@ -770,10 +785,16 @@
 		</for>
 	</skill>
 	<skill id="23180" levels="1" name="Joy of Vitality">
+		<!-- Confirmed CT2.5 -->
+		<set name="castRange" val="600" />
+		<set name="effectRange" val="600" />
 		<set name="isMagic" val="2" /> <!-- Static Skill -->
+		<set name="magicLvl" val="1" />
 		<set name="operateType" val="A1" />
-		<set name="skillType" val="NOTDONE" />
-		<set name="targetType" val="NONE" />
+		<set name="targetType" val="SELF" />
+		<for>
+			<effect name="VitalityPointUp" noicon="1" val="20000" />
+		</for>
 	</skill>
 	<skill id="23181" levels="1" name="Three-headed Dragon Agathion Cute Trick">
 		<set name="hitTime" val="3000" />