From 2c6ca7591c40cc4f1047b70239bedd0128c43ddd Mon Sep 17 00:00:00 2001 From: MobiusDev <8391001+MobiusDevelopment@users.noreply.github.com> Date: Mon, 4 Dec 2017 20:56:06 +0000 Subject: [PATCH] Tempfix for saving item reward on exit effect. --- .../scripts/handlers/effecthandlers/RewardItemOnExit.java | 8 ++++++-- .../scripts/handlers/effecthandlers/RewardItemOnExit.java | 8 ++++++-- .../scripts/handlers/effecthandlers/RewardItemOnExit.java | 8 ++++++-- .../scripts/handlers/effecthandlers/RewardItemOnExit.java | 8 ++++++-- .../scripts/handlers/effecthandlers/RewardItemOnExit.java | 8 ++++++-- 5 files changed, 30 insertions(+), 10 deletions(-) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java index d49dbae496..b32762f485 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java @@ -16,6 +16,7 @@ */ package handlers.effecthandlers; +import com.l2jmobius.gameserver.ThreadPoolManager; import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.skills.BuffInfo; @@ -38,9 +39,12 @@ public final class RewardItemOnExit extends AbstractEffect @Override public void onExit(BuffInfo info) { - if (!info.isRemoved() && info.getEffected().isPlayer() && !info.getEffected().getActingPlayer().isDead()) + if (!info.isRemoved() && (info.getEffected() != null) && info.getEffected().isPlayer() && !info.getEffected().isDead()) { - info.getEffected().getActingPlayer().addItem("RewardItemOnExitEffect", _itemId, _itemCount, info.getEffected().getActingPlayer(), true); + ThreadPoolManager.execute(() -> // Make sure item is saved. + { + info.getEffected().getActingPlayer().addItem("RewardItemOnExitEffect", _itemId, _itemCount, info.getEffected(), true); + }); } } } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java index d49dbae496..b32762f485 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java @@ -16,6 +16,7 @@ */ package handlers.effecthandlers; +import com.l2jmobius.gameserver.ThreadPoolManager; import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.skills.BuffInfo; @@ -38,9 +39,12 @@ public final class RewardItemOnExit extends AbstractEffect @Override public void onExit(BuffInfo info) { - if (!info.isRemoved() && info.getEffected().isPlayer() && !info.getEffected().getActingPlayer().isDead()) + if (!info.isRemoved() && (info.getEffected() != null) && info.getEffected().isPlayer() && !info.getEffected().isDead()) { - info.getEffected().getActingPlayer().addItem("RewardItemOnExitEffect", _itemId, _itemCount, info.getEffected().getActingPlayer(), true); + ThreadPoolManager.execute(() -> // Make sure item is saved. + { + info.getEffected().getActingPlayer().addItem("RewardItemOnExitEffect", _itemId, _itemCount, info.getEffected(), true); + }); } } } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java index d49dbae496..b32762f485 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java @@ -16,6 +16,7 @@ */ package handlers.effecthandlers; +import com.l2jmobius.gameserver.ThreadPoolManager; import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.skills.BuffInfo; @@ -38,9 +39,12 @@ public final class RewardItemOnExit extends AbstractEffect @Override public void onExit(BuffInfo info) { - if (!info.isRemoved() && info.getEffected().isPlayer() && !info.getEffected().getActingPlayer().isDead()) + if (!info.isRemoved() && (info.getEffected() != null) && info.getEffected().isPlayer() && !info.getEffected().isDead()) { - info.getEffected().getActingPlayer().addItem("RewardItemOnExitEffect", _itemId, _itemCount, info.getEffected().getActingPlayer(), true); + ThreadPoolManager.execute(() -> // Make sure item is saved. + { + info.getEffected().getActingPlayer().addItem("RewardItemOnExitEffect", _itemId, _itemCount, info.getEffected(), true); + }); } } } diff --git a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java index d49dbae496..b32762f485 100644 --- a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java +++ b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java @@ -16,6 +16,7 @@ */ package handlers.effecthandlers; +import com.l2jmobius.gameserver.ThreadPoolManager; import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.skills.BuffInfo; @@ -38,9 +39,12 @@ public final class RewardItemOnExit extends AbstractEffect @Override public void onExit(BuffInfo info) { - if (!info.isRemoved() && info.getEffected().isPlayer() && !info.getEffected().getActingPlayer().isDead()) + if (!info.isRemoved() && (info.getEffected() != null) && info.getEffected().isPlayer() && !info.getEffected().isDead()) { - info.getEffected().getActingPlayer().addItem("RewardItemOnExitEffect", _itemId, _itemCount, info.getEffected().getActingPlayer(), true); + ThreadPoolManager.execute(() -> // Make sure item is saved. + { + info.getEffected().getActingPlayer().addItem("RewardItemOnExitEffect", _itemId, _itemCount, info.getEffected(), true); + }); } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java index d49dbae496..b32762f485 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/RewardItemOnExit.java @@ -16,6 +16,7 @@ */ package handlers.effecthandlers; +import com.l2jmobius.gameserver.ThreadPoolManager; import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.effects.AbstractEffect; import com.l2jmobius.gameserver.model.skills.BuffInfo; @@ -38,9 +39,12 @@ public final class RewardItemOnExit extends AbstractEffect @Override public void onExit(BuffInfo info) { - if (!info.isRemoved() && info.getEffected().isPlayer() && !info.getEffected().getActingPlayer().isDead()) + if (!info.isRemoved() && (info.getEffected() != null) && info.getEffected().isPlayer() && !info.getEffected().isDead()) { - info.getEffected().getActingPlayer().addItem("RewardItemOnExitEffect", _itemId, _itemCount, info.getEffected().getActingPlayer(), true); + ThreadPoolManager.execute(() -> // Make sure item is saved. + { + info.getEffected().getActingPlayer().addItem("RewardItemOnExitEffect", _itemId, _itemCount, info.getEffected(), true); + }); } } }