Advertisement
hitnar

SomeSkills 09.03.2016

Mar 9th, 2016
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Diff 11.22 KB | None | 0 0
  1. Index: dist/game/data/scripts/handlers/EffectMasterHandler.java
  2. ===================================================================
  3. --- dist/game/data/scripts/handlers/EffectMasterHandler.java    (revision 1311)
  4. +++ dist/game/data/scripts/handlers/EffectMasterHandler.java    (working copy)
  5. @@ -109,6 +109,7 @@
  6.         HealOverTime.class,
  7.         HealPercent.class,
  8.         Hide.class,
  9. +       NoTarget.class,
  10.         HpByLevel.class,
  11.         HpCpHeal.class,
  12.         HpDrain.class,
  13. Index: dist/game/data/scripts/handlers/effecthandlers/NoTarget.java
  14. ===================================================================
  15. --- dist/game/data/scripts/handlers/effecthandlers/NoTarget.java    (revision 0)
  16. +++ dist/game/data/scripts/handlers/effecthandlers/NoTarget.java    (revision 0)
  17. @@ -0,0 +1,76 @@
  18. +/*
  19. + * This file is part of the L2J Mobius project.
  20. + *
  21. + * This program is free software: you can redistribute it and/or modify
  22. + * it under the terms of the GNU General Public License as published by
  23. + * the Free Software Foundation, either version 3 of the License, or
  24. + * (at your option) any later version.
  25. + *
  26. + * This program is distributed in the hope that it will be useful,
  27. + * but WITHOUT ANY WARRANTY; without even the implied warranty of
  28. + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  29. + * General Public License for more details.
  30. + *
  31. + * You should have received a copy of the GNU General Public License
  32. + * along with this program. If not, see <http://www.gnu.org/licenses/>.
  33. + */
  34. +package handlers.effecthandlers;
  35. +
  36. +import com.l2jmobius.gameserver.ai.CtrlIntention;
  37. +import com.l2jmobius.gameserver.model.StatsSet;
  38. +import com.l2jmobius.gameserver.model.actor.L2Character;
  39. +import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
  40. +import com.l2jmobius.gameserver.model.conditions.Condition;
  41. +import com.l2jmobius.gameserver.model.effects.AbstractEffect;
  42. +import com.l2jmobius.gameserver.model.skills.BuffInfo;
  43. +
  44. +/**
  45. + * Keep enemies from targeting you.
  46. + * @author hitnar
  47. + */
  48. +public final class NoTarget extends AbstractEffect
  49. +{
  50. +   public NoTarget(Condition attachCond, Condition applyCond, StatsSet set, StatsSet params)
  51. +   {
  52. +       super(attachCond, applyCond, set, params);
  53. +   }
  54. +  
  55. +   @Override
  56. +   public void onExit(BuffInfo info)
  57. +   {
  58. +       if (info.getEffected().isPlayer())
  59. +       {
  60. +           final L2PcInstance activeChar = info.getEffected().getActingPlayer();
  61. +           if (!activeChar.inObserverMode())
  62. +           {
  63. +               activeChar.setTargetable(true);
  64. +           }
  65. +       }
  66. +   }
  67. +  
  68. +   @Override
  69. +   public void onStart(BuffInfo info)
  70. +   {
  71. +       if (info.getEffected().isPlayer())
  72. +       {
  73. +           final L2PcInstance activeChar = info.getEffected().getActingPlayer();
  74. +           activeChar.setTargetable(false);
  75. +          
  76. +           if ((activeChar.getAI().getNextIntention() != null) && (activeChar.getAI().getNextIntention().getCtrlIntention() == CtrlIntention.AI_INTENTION_ATTACK))
  77. +           {
  78. +               activeChar.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
  79. +           }
  80. +          
  81. +           for (L2Character target : activeChar.getKnownList().getKnownCharacters())
  82. +           {
  83. +               if ((target != null) && (target.getTarget() == activeChar))
  84. +               {
  85. +                   target.setTarget(null);
  86. +                   target.abortAttack();
  87. +                   target.abortCast();
  88. +                   target.getAI().setIntention(CtrlIntention.AI_INTENTION_IDLE);
  89. +               }
  90. +           }
  91. +       }
  92. +   }
  93. +}
  94. \ No newline at end of file
  95. Index: dist/game/data/stats/skills/11000-11099.xml
  96. ===================================================================
  97. --- dist/game/data/stats/skills/11000-11099.xml (revision 1311)
  98. +++ dist/game/data/stats/skills/11000-11099.xml (working copy)
  99. @@ -1618,13 +1618,16 @@
  100.         <set name="magicLvl" val="#magicLvl" />
  101.         <set name="power" val="#power" />
  102.         <set name="targetType" val="ONE" />
  103. -       <set name="operateType" val="ACTIVE_CONTINUOUS" />
  104. +       <set name="operateType" val="ACTIVE_INSTANT" />
  105. +       <set name="rideState" val="NONE;STRIDER;WYVERN;WOLF" />
  106.         <set name="effectRange" val="1100" />
  107.         <enchant1 name="mpConsume" val="#ench1MpConsume" />
  108.         <enchant1 name="mpInitialConsume" val="#ench1MpInitialConsume" />
  109.         <enchant2 name="power" val="#ench2Power" />
  110.         <for>
  111. -           <effect name="MagicalAttack" />
  112. +           <effect name="DispelByCategory">
  113. +               <param slot="buff" rate="100" max="2" />
  114. +           </effect>
  115.         </for>
  116.     </skill>
  117.     <skill id="11050" levels="7" name="Hell Binding">
  118. Index: dist/game/data/stats/skills/11200-11299.xml
  119. ===================================================================
  120. --- dist/game/data/stats/skills/11200-11299.xml (revision 1311)
  121. +++ dist/game/data/stats/skills/11200-11299.xml (working copy)
  122. @@ -362,9 +362,10 @@
  123.         <set name="hitTime" val="1200" />
  124.         <set name="coolTime" val="500" />
  125.         <set name="reuseDelay" val="5000" />
  126. +       <set name="abnormalTime" val="10" />
  127.         <set name="isMagic" val="1" />
  128.         <set name="isDebuff" val="true" />
  129. -       <set name="targetType" val="SELF" />
  130. +       <set name="targetType" val="ONE" />
  131.         <for>
  132.             <effect name="Buff">
  133.                 <mul stat="mDef" val="1.3" />
  134. @@ -385,9 +386,10 @@
  135.         <set name="hitTime" val="1490" />
  136.         <set name="coolTime" val="300" />
  137.         <set name="reuseDelay" val="5000" />
  138. +       <set name="abnormalTime" val="10" />
  139.         <set name="isMagic" val="1" />
  140.         <set name="isDebuff" val="true" />
  141. -       <set name="targetType" val="SELF" />
  142. +       <set name="targetType" val="ONE" />
  143.     </skill>
  144.     <skill id="11261" levels="9" name="Mark of Plague">
  145.     <!-- Source: https://l2wiki.com/Mark_of_Plague_-_Wynn_Arcana_Lord -->
  146. @@ -401,9 +403,10 @@
  147.         <set name="hitTime" val="1500" />
  148.         <set name="coolTime" val="500" />
  149.         <set name="reuseDelay" val="5000" />
  150. +       <set name="abnormalTime" val="10" />
  151.         <set name="isMagic" val="1" />
  152.         <set name="isDebuff" val="true" />
  153. -       <set name="targetType" val="SELF" />
  154. +       <set name="targetType" val="ONE" />
  155.     </skill>
  156.     <skill id="11262" levels="9" name="Mark of Trick">
  157.     <!-- Source: https://l2wiki.com/Mark_of_Trick_-_Wynn_Spectral_Master -->
  158. @@ -417,9 +420,10 @@
  159.         <set name="hitTime" val="1500" />
  160.         <set name="coolTime" val="500" />
  161.         <set name="reuseDelay" val="5000" />
  162. +       <set name="abnormalTime" val="10" />
  163.         <set name="isMagic" val="1" />
  164.         <set name="isDebuff" val="true" />
  165. -       <set name="targetType" val="SELF" />
  166. +       <set name="targetType" val="ONE" />
  167.     </skill>
  168.     <skill id="11263" levels="10" name="Invoke">
  169.     <!-- Source: https://l2wiki.com/Invoke_-_Wynn_Elemental_Master -->
  170. @@ -808,13 +812,33 @@
  171.         <table name="#mpConsume"> 78 86 94 97 </table>
  172.         <set name="icon" val="icon.skill11274" />
  173.         <set name="magicLvl" val="#magicLvl" />
  174. +       <set name="abnormalTime" val="60" />       
  175.         <set name="operateType" val="ACTIVE_CONTINUOUS" />
  176.         <set name="mpConsume" val="#mpConsume" />
  177.         <set name="hitTime" val="1500" />
  178.         <set name="coolTime" val="200" />
  179.         <set name="reuseDelay" val="300000" />
  180.         <set name="isMagic" val="1" />
  181. +       <set name="rideState" val="NONE;STRIDER;WYVERN;WOLF" />
  182.         <set name="targetType" val="SELF" />
  183. +       <for>
  184. +           <effect name="DispelByCategory">
  185. +               <param slot="debuff" rate="100" max="10" />
  186. +           </effect>
  187. +           <effect name="BlockDamage">
  188. +               <param block="HP"/>
  189. +           </effect>
  190. +           <effect name="BlockDamage">
  191. +               <param block="MP"/>
  192. +           </effect>
  193. +           <effect name="BlockDebuff" />
  194. +           <effect name="Buff">
  195. +               <sub stat="cancelVuln" val="100" />
  196. +           </effect>
  197. +           <effect name="Buff">
  198. +               <add stat="regHp" val="5" />        <!-- Need Verify -->
  199. +           </effect>
  200. +       </for>
  201.     </skill>
  202.     <skill id="11275" levels="2" name="Mark Flare">
  203.         <!-- AUTO GENERATED SKILL -->
  204. @@ -999,6 +1023,7 @@
  205.         <set name="coolTime" val="#coolTime" />
  206.         <set name="reuseDelay" val="60000" />
  207.         <set name="isMagic" val="1" />
  208. +       <set name="abnormalTime" val="60" />
  209.         <cond msgId="113" addName="1">
  210.             <and>
  211.                 <player hasServitor="true" />
  212. @@ -1178,12 +1203,13 @@
  213.         <set name="icon" val="icon.skill11297" />
  214.         <set name="magicLvl" val="#magicLvl" />
  215.         <set name="operateType" val="ACTIVE_CONTINUOUS" />
  216. +       <set name="abnormalTime" val="1800" />
  217.         <set name="mpConsume" val="#mpConsume" />
  218.         <set name="effectRange" val="900" />
  219.         <set name="hitTime" val="3799" />
  220.         <set name="coolTime" val="200" />
  221.         <set name="reuseDelay" val="60000" />
  222. -       <set name="targetType" val="SELF" />
  223. +       <set name="targetType" val="SERVITOR" />
  224.         <for>
  225.             <effect name="Buff">
  226.                 <mul stat="pAtk" val="1.1" />
  227. Index: dist/game/data/stats/skills/11300-11399.xml
  228. ===================================================================
  229. --- dist/game/data/stats/skills/11300-11399.xml (revision 1311)
  230. +++ dist/game/data/stats/skills/11300-11399.xml (working copy)
  231. @@ -240,14 +240,14 @@
  232.         <enchant1 name="ench1mpConsume" val="#ench1mpConsume" />
  233.         <enchant2 name="abnormalTime" val="#ench2AbnormalTimes" />
  234.         <for>
  235. -           <effect name="ImmobilePetBuff">
  236. +       <effect name="Buff">
  237.                 <add stat="mDef" val="#mDef" />
  238.                 <add stat="pDef" val="#pDef" />
  239.                 <sub stat="cancelVuln" val="80" />
  240.             </effect>
  241.         </for>
  242.         <enchant3for>
  243. -           <effect name="ImmobilePetBuff">
  244. +       <effect name="Buff">
  245.                 <add stat="mDef" val="4212" />
  246.                 <add stat="pDef" val="4680" />
  247.                 <mul stat="runSpd" val="#ench3Spd" />
  248. @@ -951,6 +951,7 @@
  249.         <set name="icon" val="icon.skill11347" />
  250.         <set name="magicLvl" val="#magicLvl" />
  251.         <set name="operateType" val="ACTIVE_CONTINUOUS" />
  252. +       <set name="abnormalTime" val="1800" />
  253.         <set name="mpConsume" val="#mpConsume" />
  254.         <set name="effectRange" val="900" />
  255.         <set name="hitTime" val="3500" />
  256. @@ -1027,7 +1028,7 @@
  257.         <set name="coolTime" val="300" />
  258.         <set name="reuseDelay" val="2400" />
  259.         <set name="isMagic" val="1" />
  260. -       <set name="targetType" val="SELF" />
  261. +       <set name="targetType" val="ONE" />
  262.     </skill>
  263.     <skill id="11351" levels="5" name="Arcane Link">
  264.         <!-- AUTO GENERATED SKILL -->
  265. Index: dist/game/data/stats/skills/11500-11599.xml
  266. ===================================================================
  267. --- dist/game/data/stats/skills/11500-11599.xml (revision 1311)
  268. +++ dist/game/data/stats/skills/11500-11599.xml (working copy)
  269. @@ -1613,6 +1613,7 @@
  270.                 <add stat="pDef" val="4500" />
  271.                 <add stat="mDef" val="4500" />
  272.             </effect>
  273. +           <effect name="NoTarget" />
  274.         </for>
  275.         <enchant3for>
  276.             <effect name="Transformation">
  277. @@ -1621,6 +1622,7 @@
  278.                 <add stat="pDef" val="4500" />
  279.                 <add stat="mDef" val="4500" />
  280.             </effect>
  281. +           <effect name="NoTarget" />
  282.         </enchant3for>
  283.     </skill>
  284.     <skill id="11543" levels="6" name="Disperse" enchantGroup1="10" enchantGroup2="10" enchantGroup3="10" enchantGroup4="10" enchantGroup5="10">
  285. Index: java/com/l2jmobius/gameserver/model/L2Object.java
  286. ===================================================================
  287. --- java/com/l2jmobius/gameserver/model/L2Object.java   (revision 1311)
  288. +++ java/com/l2jmobius/gameserver/model/L2Object.java   (working copy)
  289. @@ -77,6 +77,7 @@
  290.     private final AtomicInteger _instanceId = new AtomicInteger(0);
  291.     private boolean _isVisible;
  292.     private boolean _isInvisible;
  293. +   private boolean _isTargetable = true;
  294.     private ObjectKnownList _knownList;
  295.    
  296.     public L2Object(int objectId)
  297. @@ -473,7 +474,15 @@
  298.      */
  299.     public boolean isTargetable()
  300.     {
  301. -       return true;
  302. +       return _isTargetable;
  303. +   }
  304. +  
  305. +   /**
  306. +    * @set value of Targetable (isTargetable() function)
  307. +    */
  308. +   public void setTargetable(boolean value)
  309. +   {
  310. +       _isTargetable = value;
  311.     }
  312.    
  313.     /**
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement