Boa noite galera.
Alguém poderia adaptar esse java mod ?!
tentei adicionar , porém sem sucesso.
é um Buff que aumenta o exp .
uso aCis a mais recente.
### Eclipse Workspace Patch 1.0
#P aCis_gameserver
Index: java/net/sf/l2j/gameserver/model/actor/stat/PcStat.java
===================================================================
--- java/net/sf/l2j/gameserver/model/actor/stat/PcStat.java (revision 2)
+++ java/net/sf/l2j/gameserver/model/actor/stat/PcStat.java (working copy)
@@ -76,12 +76,15 @@
* <li>If the L2PcInstance increases its level, manage the increase level task (Max MP, Max MP, Recommandation, Expertise and beginner skills...)</li>
* <li>If the L2PcInstance increases its level, send UserInfo to the L2PcInstance</li>
* </ul>
- * @param addToExp The Experience value to add
- * @param addToSp The SP value to add
*/
@Override
public boolean addExpAndSp(long addToExp, int addToSp)
{
+ return addExpAndSp(addToExp, addToSp, false);
+ }
+
+ public boolean addExpAndSp(long addToExp, int addToSp, boolean useBonuses)
+ {
float ratioTakenByPet = 0;
// Player is Gm and acces level is below or equal to GM_DONT_TAKE_EXPSP and is in party, don't give Xp/Sp
L2PcInstance activeChar = getActiveChar();
@@ -88,6 +91,18 @@
if (!activeChar.getAccessLevel().canGainExp())
return false;
+ double bonusExp = Config.EXPERIENCE_BLESSING_BONUS;
+ double bonusSp = Config.EXPERIENCE_BLESSING_BONUS;
+
+ if (useBonuses)
+ {
+ bonusExp = getExpBonusMultiplier();
+ bonusSp = getSpBonusMultiplier();
+ }
+
+ addToExp *= bonusExp;
+ addToSp *= bonusSp;
+
// if this player has a pet that takes from the owner's Exp, give the pet Exp now
if (activeChar.hasPet())
{
@@ -381,4 +396,36 @@
return (getRunSpeed() * 70) / 100;
}
+
+ public double getExpBonusMultiplier()
+ {
+ double bonus = 1.0;
+ double bonusExp = 1.0;
+
+ if (bonusExp > 1)
+ {
+ bonus += (bonusExp - 1);
+ }
+
+ bonus = Math.max(bonus, 1);
+ bonus = Math.min(bonus, 3.5);
+
+ return bonus;
+ }
+
+ public double getSpBonusMultiplier()
+ {
+ double bonus = 1.0;
+ double bonusSp = 1.0;
+
+ if (bonusSp > 1)
+ {
+ bonus += (bonusSp - 1);
+ }
+
+ bonus = Math.max(bonus, 1);
+ bonus = Math.min(bonus, 3.5);
+
+ return bonus;
+ }
}
\ No newline at end of file
Index: config/events.properties
===================================================================
--- config/events.properties (revision 2)
+++ config/events.properties (working copy)
@@ -245,4 +245,14 @@
AltFishChampionshipReward2 = 500000
AltFishChampionshipReward3 = 300000
AltFishChampionshipReward4 = 200000
-AltFishChampionshipReward5 = 100000
\ No newline at end of file
+AltFishChampionshipReward5 = 100000
+
+#=============================================================
+# Blessing of Experience
+#=============================================================
+# If the buff 'Blessing of Experience' is active, you can use this
+# configuration to edit the experience multiplier.
+# When you have the effects of 'Blessing of Experience', the experience
+# will be increased 200%.
+# Default: 2.0
+ExperienceBlessingBonus = 2.0
Index: java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java
===================================================================
--- java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java (revision 2)
+++ java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java (working copy)
@@ -9136,12 +9136,19 @@
@Override
public void addExpAndSp(long addToExp, int addToSp)
{
- getStat().addExpAndSp(addToExp, addToSp);
+ if (this.getFirstEffect(7065) != null)
+ {
+ getStat().addExpAndSp(addToExp, addToSp, false);
+ }
+ else
+ {
+ getStat().addExpAndSp(addToExp, addToSp, true);
+ }
}
public void removeExpAndSp(long removeExp, int removeSp)
{
- getStat().removeExpAndSp(removeExp, removeSp);
+ getStat().removeExpAndSp(removeExp, removeSp, true);
}
@Override
Index: java/net/sf/l2j/Config.java
===================================================================
--- java/net/sf/l2j/Config.java (revision 2)
+++ java/net/sf/l2j/Config.java (working copy)
@@ -223,6 +223,9 @@
public static int ALT_FISH_CHAMPIONSHIP_REWARD_4;
public static int ALT_FISH_CHAMPIONSHIP_REWARD_5;
+ /** Blessing of Experience Bonus */
+ public static double EXPERIENCE_BLESSING_BONUS;
+
// --------------------------------------------------
// HexID
// --------------------------------------------------
@@ -875,6 +878,8 @@
ALT_FISH_CHAMPIONSHIP_REWARD_4 = events.getProperty("AltFishChampionshipReward4", 200000);
ALT_FISH_CHAMPIONSHIP_REWARD_5 = events.getProperty("AltFishChampionshipReward5", 100000);
+ EXPERIENCE_BLESSING_BONUS = events.getProperty("ExperienceBlessingBonus", 1.0);
+
// FloodProtector
ExProperties security = load(FLOOD_PROTECTOR_FILE);
loadFloodProtectorConfig(security, FLOOD_PROTECTOR_ROLL_DICE, "RollDice", "42");
Grato.