Advertisement
Sarada-L2

Bloquear Heal Raid/Grand Boss Acis 394+

Feb 28th, 2021
491
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.76 KB | None | 0 0
  1. diff --git a/config/CustomMods/BossSettings.ini b/config/CustomMods/BossSettings.ini
  2. index a3c3f9d..d6ca9f7 100644
  3. --- a/config/CustomMods/BossSettings.ini
  4. +++ b/config/CustomMods/BossSettings.ini
  5. @@ -38,6 +38,14 @@
  6. # Default: False
  7. AllowDirectTeleportToBossRoom = False
  8.  
  9. +#=============================================================
  10. +# Block Heal Raid Boss/Grand Boss
  11. +#=============================================================
  12. +# If True: Player can heal RB
  13. +# If False: Player can't heal RB
  14. +# Default: True
  15. +PlayersCanHealRb = False
  16. +
  17.  
  18.  
  19. #=============================================================
  20. diff --git a/java/net/sf/l2j/Config.java b/java/net/sf/l2j/Config.java
  21. index 180a405..e43ccb4 100644
  22. --- a/java/net/sf/l2j/Config.java
  23. +++ b/java/net/sf/l2j/Config.java
  24. @@ -87,6 +87,7 @@
  25. public static int ALLOWED_BOXES;
  26. public static boolean ALLOW_DUALBOX_OLY;
  27. public static boolean ALT_GAME_SUBCLASS_EVERYWHERE;
  28. + public static boolean PLAYERS_CAN_HEAL_RB;
  29. /** Raid info*/
  30. public static int RAID_BOSS_INFO_PAGE_LIMIT;
  31. public static int RAID_BOSS_DROP_PAGE_LIMIT;
  32. @@ -1110,6 +1111,7 @@
  33. private static final void loadBoss()
  34. {
  35. final ExProperties Boss = initProperties(BOSSESETTIGNS);
  36. + PLAYERS_CAN_HEAL_RB = Boolean.parseBoolean(Boss.getProperty("PlayersCanHealRb", "false"));
  37. RAID_BOSS_INFO_PAGE_LIMIT = Integer.parseInt(Boss.getProperty("RaidBossInfoPageLimit", "15"));
  38. RAID_BOSS_DROP_PAGE_LIMIT = Integer.parseInt(Boss.getProperty("RaidBossDropPageLimit", "15"));
  39. RAID_BOSS_DATE_FORMAT = Boss.getProperty("RaidBossDateFormat", "MMM dd, HH:mm");
  40. diff --git a/java/net/sf/l2j/gameserver/handler/skillhandlers/Heal.java b/java/net/sf/l2j/gameserver/handler/skillhandlers/Heal.java
  41. index a66fb80..43f7687 100644
  42. --- a/java/net/sf/l2j/gameserver/handler/skillhandlers/Heal.java
  43. +++ b/java/net/sf/l2j/gameserver/handler/skillhandlers/Heal.java
  44. @@ -1,5 +1,6 @@
  45. package net.sf.l2j.gameserver.handler.skillhandlers;
  46.  
  47. +import net.sf.l2j.Config;
  48. import net.sf.l2j.gameserver.enums.items.ShotType;
  49. import net.sf.l2j.gameserver.enums.skills.SkillType;
  50. import net.sf.l2j.gameserver.enums.skills.Stats;
  51. @@ -11,6 +12,8 @@
  52. import net.sf.l2j.gameserver.model.actor.Player;
  53. import net.sf.l2j.gameserver.model.actor.Summon;
  54. import net.sf.l2j.gameserver.model.actor.instance.Door;
  55. +import net.sf.l2j.gameserver.model.actor.instance.GrandBoss;
  56. +import net.sf.l2j.gameserver.model.actor.instance.RaidBoss;
  57. import net.sf.l2j.gameserver.model.actor.instance.SiegeFlag;
  58. import net.sf.l2j.gameserver.network.SystemMessageId;
  59. import net.sf.l2j.gameserver.network.serverpackets.SystemMessage;
  60. @@ -81,7 +84,11 @@
  61. final Creature target = ((Creature) obj);
  62. if (target.isDead() || target.isInvul())
  63. continue;
  64. -
  65. + // Player can't heal rb config
  66. + if (!Config.PLAYERS_CAN_HEAL_RB && activeChar instanceof Player && !((Player) activeChar).isGM() && (target instanceof RaidBoss || target instanceof GrandBoss) && (skill.getSkillType() == SkillType.HEAL || skill.getSkillType() == SkillType.HEAL_PERCENT))
  67. + {
  68. + return;
  69. + }
  70. if (target instanceof Door || target instanceof SiegeFlag)
  71. continue;
  72.  
  73. diff --git a/java/net/sf/l2j/gameserver/handler/skillhandlers/HealPercent.java b/java/net/sf/l2j/gameserver/handler/skillhandlers/HealPercent.java
  74. index d8cdf85..1763eac 100644
  75. --- a/java/net/sf/l2j/gameserver/handler/skillhandlers/HealPercent.java
  76. +++ b/java/net/sf/l2j/gameserver/handler/skillhandlers/HealPercent.java
  77. @@ -1,5 +1,6 @@
  78. package net.sf.l2j.gameserver.handler.skillhandlers;
  79.  
  80. +import net.sf.l2j.Config;
  81. import net.sf.l2j.gameserver.enums.skills.SkillType;
  82. import net.sf.l2j.gameserver.handler.ISkillHandler;
  83. import net.sf.l2j.gameserver.handler.SkillHandler;
  84. @@ -7,6 +8,8 @@
  85. import net.sf.l2j.gameserver.model.actor.Creature;
  86. import net.sf.l2j.gameserver.model.actor.Player;
  87. import net.sf.l2j.gameserver.model.actor.instance.Door;
  88. +import net.sf.l2j.gameserver.model.actor.instance.GrandBoss;
  89. +import net.sf.l2j.gameserver.model.actor.instance.RaidBoss;
  90. import net.sf.l2j.gameserver.model.actor.instance.SiegeFlag;
  91. import net.sf.l2j.gameserver.network.SystemMessageId;
  92. import net.sf.l2j.gameserver.network.serverpackets.SystemMessage;
  93. @@ -37,7 +40,10 @@
  94. final Creature target = ((Creature) obj);
  95. if (target.isDead() || target.isInvul())
  96. continue;
  97. -
  98. + if (!Config.PLAYERS_CAN_HEAL_RB && activeChar instanceof Player && !((Player) activeChar).isGM() && (target instanceof RaidBoss || target instanceof GrandBoss) && (skill.getSkillType() == SkillType.HEAL || skill.getSkillType() == SkillType.HEAL_PERCENT))
  99. + {
  100. + return;
  101. + }
  102. // Doors and flags can't be healed in any way
  103. if (target instanceof Door || target instanceof SiegeFlag)
  104. continue;
  105.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement