Advertisement
VANPER

Argumente Shop

Jul 5th, 2020
1,337
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 6.29 KB | None | 0 0
  1. =================================================
  2. Index: net.sf.l2j.gameserver.model.actor.instance
  3. =================================================
  4.  
  5. =================================================
  6. Index: net.sf.l2j.gameserver.model.actor.instance.AugmenterShop.java     ++++Crie a Nova Class
  7. =================================================
  8.  
  9. +   package net.sf.l2j.gameserver.model.actor.instance;
  10. +  
  11. +   import net.sf.l2j.Config;
  12. +   import net.sf.l2j.gameserver.data.SkillTable;
  13. +   import net.sf.l2j.gameserver.data.xml.AugmentationData;
  14. +   import net.sf.l2j.gameserver.model.Augmentation;
  15. +   import net.sf.l2j.gameserver.model.actor.Player;
  16. +   import net.sf.l2j.gameserver.model.actor.template.NpcTemplate;
  17. +   import net.sf.l2j.gameserver.model.item.instance.ItemInstance;
  18. +   import net.sf.l2j.gameserver.model.itemcontainer.Inventory;
  19. +   import net.sf.l2j.gameserver.network.serverpackets.InventoryUpdate;
  20. +   import net.sf.l2j.gameserver.network.serverpackets.StatusUpdate;
  21. +  
  22. +   /**
  23. +    * @author Dev
  24. +    *
  25. +    */
  26. +   public class AugmenterShop extends Folk
  27. +   {
  28. +       public int augmenterCoin = Config.DONATION_COIN_ID;
  29. +      
  30. +       public AugmenterShop(int objectId, NpcTemplate template)
  31. +       {
  32. +           super(objectId, template);
  33. +       }
  34. +      
  35. +       @Override
  36. +       public void onBypassFeedback(Player player, String command)
  37. +       {
  38. +           if (command.startsWith("learn"))
  39. +           {
  40. +               String[] args = command.substring(6).split(" ");
  41. +              
  42. +               int id = Integer.parseInt(args[0]);
  43. +               int count = Config.ARGUMENT_SHOP_COIN_CONT; // we dont care about count from html (just override)
  44. +              
  45. +               if (player.getAugsBought() >= 100)
  46. +               {
  47. +                   showChatWindow(player, 0);
  48. +                   player.sendMessage("You cannot learn more skills.");
  49. +                   return;
  50. +               }
  51. +               if (player.getInventory().getPaperdollItem(Inventory.PAPERDOLL_RHAND) == null)
  52. +               {
  53. +                   showChatWindow(player, 0);
  54. +                   player.sendMessage("You need to equip a weapon to learn a skill.");
  55. +                   return;
  56. +               }
  57. +               if (!player.getInventory().getPaperdollItem(Inventory.PAPERDOLL_RHAND).isWeapon())
  58. +               {
  59. +                   showChatWindow(player, 0);
  60. +                   player.sendMessage("You need to equip a weapon to learn a skill.");
  61. +                   return;
  62. +               }
  63. +               if (player.getInventory().getPaperdollItem(Inventory.PAPERDOLL_RHAND).getAugmentation() != null)
  64. +               {
  65. +                   showChatWindow(player, 0);
  66. +                   player.sendMessage("Your weapon is already augmented.");
  67. +                   return;
  68. +               }
  69. +              
  70. +               if (player.getInventory().getItemByItemId(augmenterCoin) == null || player.getInventory().getItemByItemId(augmenterCoin).getCount() < count)
  71. +               {
  72. +                   player.sendMessage("Incorrect item count.");
  73. +                   return;
  74. +               }
  75. +              
  76. +               player.destroyItemByItemId("donation shop", augmenterCoin, count, this, true);
  77. +              
  78. +               ItemInstance wep = player.getInventory().getPaperdollItem(Inventory.PAPERDOLL_RHAND);
  79. +               player.disarmWeapons();
  80. +               Augmentation aug = AugmentationData.getInstance().generateAugmentationWithSkill(id, SkillTable.getInstance().getMaxLevel(id));
  81. +               if (wep.isAugmented())
  82. +               {
  83. +                   wep.removeAugmentation();
  84. +                   InventoryUpdate iu = new InventoryUpdate();
  85. +                   iu.addModifiedItem(wep);
  86. +                   player.sendPacket(iu);
  87. +               }
  88. +               wep.setAugmentation(aug);
  89. +               InventoryUpdate iuu = new InventoryUpdate();
  90. +               iuu.addModifiedItem(wep);
  91. +               player.sendPacket(iuu);
  92. +               StatusUpdate su = new StatusUpdate(player);
  93. +               su.addAttribute(StatusUpdate.CUR_LOAD, player.getCurrentLoad());
  94. +               player.sendPacket(su);
  95. +               showChatWindow(player, 0);
  96. +               player.setAugsBought(player.getAugsBought() + 1);
  97. +               player.store();
  98. +           }
  99. +           else
  100. +               super.onBypassFeedback(player, command);
  101. +       }
  102. +  
  103. +       @Override
  104. +       public String getHtmlPath(int npcId, int val)
  105. +       {
  106. +           String filename = "";
  107. +           if (val == 0)
  108. +               filename = "" + npcId;
  109. +           else
  110. +               filename = npcId + "-" + val;
  111. +          
  112. +           return "data/html/mods/augmentershop/" + filename + ".htm";
  113. +       }
  114. +   }
  115. +  
  116. +    No Copiar essa Linha
  117.  
  118. =================================================
  119. Index: net.sf.l2j.config.Config.Java
  120. =================================================
  121. Index: Procurar Para Adicionar em Baixo
  122. -   AUTO_LOOT
  123. +   AUTO_LOOT
  124.  
  125.  
  126. Index: Adicionar!
  127. +   /** Donation coin id */
  128. +   public static int DONATION_COIN_ID;
  129. +   public static int ARGUMENT_SHOP_COIN_CONT;
  130.  
  131.  
  132. Index: Procure em Qual Config deve Ficar Sua configuração Pra Id da Moeda e Quantidade
  133.  
  134. +       DONATION_COIN_ID = Dev.getProperty("DonationCoinId", 57);
  135. +       ARGUMENT_SHOP_COIN_CONT = Dev.getProperty("ArgumentShopCount", 57);
  136.  
  137. =================================================
  138. Index: gameserver/data/html/mods/augmentershop/
  139. =================================================
  140.  
  141. Index: Baixei o Arquivo da descrição do tóipico para colocar as HTML do ArgumentShop
  142.  
  143. =================================================
  144. Index: gameserver/data/xml/npcs/ArgumentShop.xml
  145. =================================================
  146. +   <?xml version="1.0" encoding="utf-8"?>
  147. +   <list>
  148. +           <npc id="50016" idTemplate="31324" name="Lister" title="Argument Shop">
  149. +           <set name="usingServerSideName" val="true"/>
  150. +           <set name="usingServerSideTitle" val="true"/>
  151. +           <set name="level" val="70"/>
  152. +           <set name="radius" val="8"/>
  153. +           <set name="height" val="24.5"/>
  154. +           <set name="rHand" val="0"/>
  155. +           <set name="lHand" val="0"/>
  156. +           <set name="type" val="AugmenterShop"/>
  157. +           <set name="exp" val="0"/>
  158. +           <set name="sp" val="0"/>
  159. +           <set name="hp" val="2444.46819"/>
  160. +           <set name="mp" val="1345.8"/>
  161. +           <set name="hpRegen" val="7.5"/>
  162. +           <set name="mpRegen" val="2.7"/>
  163. +           <set name="pAtk" val="688.86373"/>
  164. +           <set name="pDef" val="295.91597"/>
  165. +           <set name="mAtk" val="470.40463"/>
  166. +           <set name="mDef" val="216.53847"/>
  167. +           <set name="crit" val="4"/>
  168. +           <set name="atkSpd" val="253"/>
  169. +           <set name="str" val="40"/>
  170. +           <set name="int" val="21"/>
  171. +           <set name="dex" val="30"/>
  172. +           <set name="wit" val="20"/>
  173. +           <set name="con" val="43"/>
  174. +           <set name="men" val="10"/>
  175. +           <set name="corpseTime" val="7"/>
  176. +           <set name="walkSpd" val="50"/>
  177. +           <set name="runSpd" val="120"/>
  178. +           <set name="dropHerbGroup" val="0"/>
  179. +           <ai type="DEFAULT" ssCount="0" ssRate="0" spsCount="0" spsRate="0" aggro="0" canMove="true" seedable="false"/>
  180. +           <skills>
  181. +               <skill id="4045" level="1"/>
  182. +               <skill id="4416" level="14"/>
  183. +           </skills>
  184. +       </npc>
  185. +   </list>
  186.  
  187. =================================================
  188. + HTML LINK
  189. Index: https://mega.nz/file/oRZBlYpS#PwJTfp34qNebSYAxINsYwN_q47rav8eOhYQuFKzV0xI
  190. =================================================
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement