Noticias:

Debes de estar registrado para poder ver el contenido indicado. Registrate o Conectate

Menú Principal

Nevit System

Iniciado por Swarlog, Sep 01, 2022, 12:12 AM

Tema anterior - Siguiente tema

Swarlog

### Eclipse Workspace Patch 1.0
#P L2J_Server_BETA
Index: java/com/l2jserver/gameserver/network/serverpackets/ExNevitAdventTimeChange.java
===================================================================
--- java/com/l2jserver/gameserver/network/serverpackets/ExNevitAdventTimeChange.java (revision 6625)
+++ java/com/l2jserver/gameserver/network/serverpackets/ExNevitAdventTimeChange.java (working copy)
@@ -26,10 +26,10 @@
  private final boolean _paused;
  private final int _time;
 
- public ExNevitAdventTimeChange(int time)
+ public ExNevitAdventTimeChange(int time, boolean paused)
  {
- _time = time > 240000 ? 240000 : time;
- _paused = _time < 1;
+ _time = (time > 14400) ? 14400 : time;
+ _paused = paused;
  }
 
  @Override
Index: java/com/l2jserver/gameserver/network/SystemMessageId.java
===================================================================
--- java/com/l2jserver/gameserver/network/SystemMessageId.java (revision 6625)
+++ java/com/l2jserver/gameserver/network/SystemMessageId.java (working copy)
@@ -15189,6 +15189,30 @@
  public static final SystemMessageId YOU_HAVE_S1_MATCHES_REMAINING_THAT_YOU_CAN_PARTECIPATE_IN_THIS_WEEK_S2_CLASSED_S3_NON_CLASSED_S4_TEAM;
 
  /**
+ * The angel Nevit has blessed you from above. You are imbued with full Vitality as well as a Vitality Replenishing effect. And should you die, you will not lose Exp! Nevit's Advent Blessing is Upon You!
+ */
+ public static final SystemMessageId THE_ANGEL_NEVIT_HAS_BLESSED_YOU_FROM_ABOVE;
+ /**
+ * You are starting to feel the effects of Nevit's Advent Blessing.
+ */
+ public static final SystemMessageId YOU_ARE_STARTING_TO_FEEL_THE_EFFECTS_OF_NEVITS_ADVENT_BLESSING;
+
+ /**
+ * You are further infused with the blessings of Nevit! Continue to battle evil wherever it may lurk.
+ */
+ public static final SystemMessageId YOU_ARE_FURTHER_INFUSED_WITH_THE_BLESSINGS_OF_NEVIT;
+
+ /**
+ * Nevit's Advent Blessing shines strongly from above. You can almost see his divine aura.
+ */
+ public static final SystemMessageId NEVITS_ADVENT_BLESSING_SHINES_STRONGLY_FROM_ABOVE;
+
+ /**
+ * Nevit's Advent Blessing has ended. Continue your journey and you will surely meet his favor again sometime soon.
+ */
+ public static final SystemMessageId NEVITS_ADVENT_BLESSING_HAS_ENDED;
+
+ /**
  * ID: 6004<br>
  * Message: Enchant failed. The enchant level for the corresponding item will be exactly retained.
  */
@@ -17738,6 +17762,11 @@
  MP_BECAME_0_ARCANE_SHIELD_DISAPPEARING = new SystemMessageId(3256);
  CANNOT_USE_SKILL_WITHOUT_SERVITOR = new SystemMessageId(3260);
  YOU_HAVE_S1_MATCHES_REMAINING_THAT_YOU_CAN_PARTECIPATE_IN_THIS_WEEK_S2_CLASSED_S3_NON_CLASSED_S4_TEAM = new SystemMessageId(3261);
+ THE_ANGEL_NEVIT_HAS_BLESSED_YOU_FROM_ABOVE = new SystemMessageId(3266);
+ YOU_ARE_STARTING_TO_FEEL_THE_EFFECTS_OF_NEVITS_ADVENT_BLESSING = new SystemMessageId(3267);
+ YOU_ARE_FURTHER_INFUSED_WITH_THE_BLESSINGS_OF_NEVIT = new SystemMessageId(3268);
+ NEVITS_ADVENT_BLESSING_SHINES_STRONGLY_FROM_ABOVE = new SystemMessageId(3269);
+ NEVITS_ADVENT_BLESSING_HAS_ENDED = new SystemMessageId(3275);
  SAFE_ENCHANT_FAILED = new SystemMessageId(6004);
  YOU_CANNOT_BOOKMARK_THIS_LOCATION_BECAUSE_YOU_DO_NOT_HAVE_A_MY_TELEPORT_FLAG = new SystemMessageId(6501);
  THOMAS_D_TURKEY_APPEARED = new SystemMessageId(6503);
Index: java/com/l2jserver/gameserver/model/entity/NevitSystem.java
===================================================================
--- java/com/l2jserver/gameserver/model/entity/NevitSystem.java (revision 0)
+++ java/com/l2jserver/gameserver/model/entity/NevitSystem.java (working copy)
@@ -0,0 +1,301 @@
+/*
+ * Copyright (C) 2004-2014 L2J Server
+ *
+ * This file is part of L2J Server.
+ *
+ * L2J Server is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * L2J Server is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.l2jserver.gameserver.model.entity;
+
+import java.util.Calendar;
+import java.util.concurrent.ScheduledFuture;
+import java.util.concurrent.TimeUnit;
+
+import com.l2jserver.gameserver.ThreadPoolManager;
+import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
+import com.l2jserver.gameserver.model.events.EventType;
+import com.l2jserver.gameserver.model.events.annotations.RegisterEvent;
+import com.l2jserver.gameserver.model.events.impl.character.player.OnPlayerLogin;
+import com.l2jserver.gameserver.model.events.impl.character.player.OnPlayerLogout;
+import com.l2jserver.gameserver.model.events.listeners.ConsumerEventListener;
+import com.l2jserver.gameserver.model.interfaces.IUniqueId;
+import com.l2jserver.gameserver.model.skills.AbnormalVisualEffect;
+import com.l2jserver.gameserver.network.SystemMessageId;
+import com.l2jserver.gameserver.network.serverpackets.ExNevitAdventEffect;
+import com.l2jserver.gameserver.network.serverpackets.ExNevitAdventPointInfoPacket;
+import com.l2jserver.gameserver.network.serverpackets.ExNevitAdventTimeChange;
+
+/**
+ * Nevit's Blessing handler.
+ * @author Janiko
+ */
+public class NevitSystem implements IUniqueId
+{
+ // Timers
+ private static final int MAX_POINTS = 7200;
+ private static final int BONUS_EFFECT_TIME = 180;
+
+ // Nevit Hour
+ private static final int ADVENT_TIME = 14400;
+ public final L2PcInstance _player;
+
+ private volatile ScheduledFuture<?> _adventTask;
+ private volatile ScheduledFuture<?> _nevitEffectTask;
+
+ public NevitSystem(L2PcInstance player)
+ {
+ _player = player;
+
+ player.addListener(new ConsumerEventListener(player, EventType.ON_PLAYER_LOGIN, (OnPlayerLogin event) -> onPlayerLogin(event), this));
+ player.addListener(new ConsumerEventListener(player, EventType.ON_PLAYER_LOGOUT, (OnPlayerLogout event) -> OnPlayerLogout(event), this));
+ }
+
+ @RegisterEvent(EventType.ON_PLAYER_LOGIN)
+ private void onPlayerLogin(OnPlayerLogin event)
+ {
+ final Calendar cal = Calendar.getInstance();
+ cal.set(Calendar.HOUR_OF_DAY, 6);
+ cal.set(Calendar.MINUTE, 30);
+ cal.set(Calendar.SECOND, 0);
+ cal.set(Calendar.MILLISECOND, 0);
+
+ // Reset Nevit's Blessing
+ if ((_player.getLastAccess() < (cal.getTimeInMillis() / 1000L)) && (System.currentTimeMillis() > cal.getTimeInMillis()))
+ {
+ _player.getVariables().set("hunting_time", 0);
+ }
+
+ // Send Packets
+ _player.sendPacket(new ExNevitAdventPointInfoPacket(getAdventPoints()));
+ _player.sendPacket(new ExNevitAdventTimeChange(getAdventTime(), true));
+
+ startNevitEffect(_player.getVariables().getInt("nevit_b", 0));
+
+ // Set percent
+ int percent = calcPercent(_player.getVariables().getInt("hunting_points", 0));
+
+ if ((percent >= 45) && (percent < 50))
+ {
+ _player.sendPacket(SystemMessageId.YOU_ARE_STARTING_TO_FEEL_THE_EFFECTS_OF_NEVITS_ADVENT_BLESSING);
+ }
+ else if ((percent >= 50) && (percent < 75))
+ {
+ _player.sendPacket(SystemMessageId.YOU_ARE_FURTHER_INFUSED_WITH_THE_BLESSINGS_OF_NEVIT);
+ }
+ else if (percent >= 75)
+ {
+ _player.sendPacket(SystemMessageId.NEVITS_ADVENT_BLESSING_SHINES_STRONGLY_FROM_ABOVE);
+ }
+ }
+
+ @RegisterEvent(EventType.ON_PLAYER_LOGOUT)
+ private void OnPlayerLogout(OnPlayerLogout event)
+ {
+ stopNevitEffectTask(true);
+ stopAdventTask(false);
+ }
+
+ public void addPoints(int val)
+ {
+ if (getEffectTime() > 0)
+ {
+ setAdventPoints(0);
+ }
+ else
+ {
+ setAdventPoints(getAdventPoints() + val);
+ }
+
+ if (getAdventPoints() > MAX_POINTS)
+ {
+ setAdventPoints(0);
+ startNevitEffect(BONUS_EFFECT_TIME);
+ }
+
+ int percent = calcPercent(getAdventPoints());
+ switch (percent)
+ {
+ case 45:
+ {
+ getPlayer().sendPacket(SystemMessageId.YOU_ARE_STARTING_TO_FEEL_THE_EFFECTS_OF_NEVITS_ADVENT_BLESSING);
+ break;
+ }
+ case 50:
+ {
+ getPlayer().sendPacket(SystemMessageId.YOU_ARE_FURTHER_INFUSED_WITH_THE_BLESSINGS_OF_NEVIT);
+ break;
+ }
+ case 75:
+ {
+ getPlayer().sendPacket(SystemMessageId.NEVITS_ADVENT_BLESSING_SHINES_STRONGLY_FROM_ABOVE);
+ break;
+ }
+ }
+
+ getPlayer().sendPacket(new ExNevitAdventPointInfoPacket(getAdventPoints()));
+ }
+
+ public void startAdventTask()
+ {
+ if (_adventTask == null)
+ {
+ synchronized (this)
+ {
+ if ((_adventTask == null) && (getAdventTime() < ADVENT_TIME))
+ {
+ _adventTask = ThreadPoolManager.getInstance().scheduleGeneral(new AdventTask(), 30000);
+ getPlayer().sendPacket(new ExNevitAdventTimeChange(getAdventTime(), false));
+ }
+ }
+ }
+ }
+
+ public class AdventTask implements Runnable
+ {
+ @Override
+ public void run()
+ {
+ setAdventTime(getAdventTime() + 30);
+ if (getAdventTime() >= ADVENT_TIME)
+ {
+ setAdventTime(ADVENT_TIME);
+ stopAdventTask(true);
+ }
+ else
+ {
+ addPoints(72);
+ if ((getAdventTime() % 60) == 0)
+ {
+ getPlayer().sendPacket(new ExNevitAdventTimeChange(getAdventTime(), false));
+ }
+ }
+ stopAdventTask(false);
+ }
+ }
+
+ public synchronized void stopAdventTask(boolean sendPacket)
+ {
+ if (_adventTask != null)
+ {
+ _adventTask.cancel(true);
+ _adventTask = null;
+ }
+ if (sendPacket)
+ {
+ getPlayer().sendPacket(new ExNevitAdventTimeChange(getAdventTime(), true));
+ }
+ }
+
+ public synchronized void startNevitEffect(int time)
+ {
+ if (getEffectTime() > 0)
+ {
+ stopNevitEffectTask(false);
+ time += getEffectTime();
+ }
+ if ((getAdventTime() < ADVENT_TIME) && (time > 0))
+ {
+ getPlayer().getVariables().set("nevit_b", time);
+ getPlayer().sendPacket(new ExNevitAdventEffect(time));
+ getPlayer().sendPacket(SystemMessageId.THE_ANGEL_NEVIT_HAS_BLESSED_YOU_FROM_ABOVE);
+ getPlayer().startAbnormalVisualEffect(true, AbnormalVisualEffect.NAVIT_ADVENT);
+ _nevitEffectTask = ThreadPoolManager.getInstance().scheduleGeneral(new NevitEffectEnd(), time * 1000L);
+ }
+ }
+
+ public class NevitEffectEnd implements Runnable
+ {
+ @Override
+ public void run()
+ {
+ getPlayer().getVariables().remove("nevit_b");
+ getPlayer().sendPacket(new ExNevitAdventEffect(0));
+ getPlayer().sendPacket(new ExNevitAdventPointInfoPacket(getAdventPoints()));
+ getPlayer().sendPacket(SystemMessageId.NEVITS_ADVENT_BLESSING_HAS_ENDED);
+ getPlayer().stopAbnormalVisualEffect(true, AbnormalVisualEffect.NAVIT_ADVENT);
+ stopNevitEffectTask(false);
+ }
+ }
+
+ public synchronized void stopNevitEffectTask(boolean saveTime)
+ {
+ if (_nevitEffectTask != null)
+ {
+ if (saveTime)
+ {
+ int time = getEffectTime();
+ if (time > 0)
+ {
+ getPlayer().getVariables().set("nevit_b", time);
+ }
+ else
+ {
+ getPlayer().getVariables().remove("nevit_b");
+ }
+ }
+ _nevitEffectTask.cancel(true);
+ _nevitEffectTask = null;
+ }
+ }
+
+ public L2PcInstance getPlayer()
+ {
+ return _player;
+ }
+
+ @Override
+ public int getObjectId()
+ {
+ return _player.getObjectId();
+ }
+
+ private int getEffectTime()
+ {
+ if (_nevitEffectTask == null)
+ {
+ return 0;
+ }
+ return (int) Math.max(0, _nevitEffectTask.getDelay(TimeUnit.SECONDS));
+ }
+
+ public boolean isAdventBlessingActive()
+ {
+ return ((_nevitEffectTask != null) && (_nevitEffectTask.getDelay(TimeUnit.MILLISECONDS) > 0));
+ }
+
+ public static int calcPercent(int points)
+ {
+ return (int) ((100.0D / MAX_POINTS) * points);
+ }
+
+ public void setAdventPoints(int points)
+ {
+ getPlayer().getVariables().set("hunting_points", points);
+ }
+
+ public void setAdventTime(int time)
+ {
+ getPlayer().getVariables().set("hunting_time", time);
+ }
+
+ public int getAdventPoints()
+ {
+ return getPlayer().getVariables().getInt("hunting_points", 0);
+ }
+
+ public int getAdventTime()
+ {
+ return getPlayer().getVariables().getInt("hunting_time", 0);
+ }
+}
\ No newline at end of file
Index: java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java
===================================================================
--- java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java (revision 6625)
+++ java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java (working copy)
@@ -198,6 +198,7 @@
 import com.l2jserver.gameserver.model.entity.Hero;
 import com.l2jserver.gameserver.model.entity.Instance;
 import com.l2jserver.gameserver.model.entity.L2Event;
+import com.l2jserver.gameserver.model.entity.NevitSystem;
 import com.l2jserver.gameserver.model.entity.Siege;
 import com.l2jserver.gameserver.model.entity.TvTEvent;
 import com.l2jserver.gameserver.model.events.EventDispatcher;
@@ -5380,7 +5381,7 @@
  if (Config.ALT_GAME_DELEVEL)
  {
  // If player is Lucky shouldn't get penalized.
- if (!isLucky())
+ if (!isLucky() && !getNevitSystem().isAdventBlessingActive())
  {
  // Reduce the Experience of the L2PcInstance in function of the calculated Death Penalty
  // NOTE: deathPenalty +- Exp will update karma
@@ -5820,6 +5821,11 @@
  }
  }
 
+ if (getNevitSystem().isAdventBlessingActive())
+ {
+ lostExp = 0;
+ }
+
  // Set the new Experience value of the L2PcInstance
  getStat().addExp(-lostExp);
  }
@@ -14485,4 +14491,12 @@
  {
  return (_actionMask & act.getMask()) == act.getMask();
  }
+
+ // High Five: Nevit's Bonus System
+ private final NevitSystem _nevitSystem = new NevitSystem(this);
+
+ public NevitSystem getNevitSystem()
+ {
+ return _nevitSystem;
+ }
 }
\ No newline at end of file
Index: java/com/l2jserver/gameserver/taskmanager/tasks/TaskNevit.java
===================================================================
--- java/com/l2jserver/gameserver/taskmanager/tasks/TaskNevit.java (revision 0)
+++ java/com/l2jserver/gameserver/taskmanager/tasks/TaskNevit.java (working copy)
@@ -0,0 +1,64 @@
+/*
+ * Copyright (C) 2004-2014 L2J Server
+ *
+ * This file is part of L2J Server.
+ *
+ * L2J Server is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * L2J Server is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.l2jserver.gameserver.taskmanager.tasks;
+
+import com.l2jserver.gameserver.model.L2World;
+import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
+import com.l2jserver.gameserver.network.serverpackets.ExNevitAdventTimeChange;
+import com.l2jserver.gameserver.taskmanager.Task;
+import com.l2jserver.gameserver.taskmanager.TaskManager;
+import com.l2jserver.gameserver.taskmanager.TaskManager.ExecutedTask;
+import com.l2jserver.gameserver.taskmanager.TaskTypes;
+
+/**
+ * @author Janiko
+ */
+public class TaskNevit extends Task
+{
+ private static final String NAME = "nevit_system";
+
+ @Override
+ public String getName()
+ {
+ return NAME;
+ }
+
+ @Override
+ public void onTimeElapsed(ExecutedTask task)
+ {
+ for (L2PcInstance player : L2World.getInstance().getPlayers())
+ {
+ if ((player == null) || !player.isOnline())
+ {
+ continue;
+ }
+
+ player.getVariables().set("hunting_time", 0);
+ player.sendPacket(new ExNevitAdventTimeChange(0, true));
+ }
+ _log.info("Nevit system reseted.");
+ }
+
+ @Override
+ public void initializate()
+ {
+ super.initializate();
+ TaskManager.addUniqueTask(NAME, TaskTypes.TYPE_GLOBAL_TASK, "1", "06:30:00", "");
+ }
+}
Index: java/com/l2jserver/gameserver/model/actor/stat/PcStat.java
===================================================================
--- java/com/l2jserver/gameserver/model/actor/stat/PcStat.java (revision 6625)
+++ java/com/l2jserver/gameserver/model/actor/stat/PcStat.java (working copy)
@@ -136,6 +136,11 @@
  bonusSp = getSpBonusMultiplier();
  }
 
+ if ((addToExp > 0) && !activeChar.isInsideZone(ZoneId.PEACE))
+ {
+ activeChar.getNevitSystem().startAdventTask();
+ }
+
  addToExp *= bonusExp;
  addToSp *= bonusSp;
 
@@ -320,6 +325,8 @@
  getActiveChar().sendPacket(new UserInfo(getActiveChar()));
  getActiveChar().sendPacket(new ExBrExtraUserInfo(getActiveChar()));
  getActiveChar().sendPacket(new ExVoteSystemInfo(getActiveChar()));
+ // Nevit Points For Level
+ getActiveChar().getNevitSystem().addPoints(2000);
 
  return levelIncreased;
  }
@@ -742,6 +749,11 @@
  {
  int stat = (int) calcStat(Stats.VITALITY_CONSUME_RATE, 1, getActiveChar(), null);
 
+ if (getActiveChar().getNevitSystem().isAdventBlessingActive())
+ {
+ stat = -10; // increase Vitality During Blessing
+ }
+
  if (stat == 0)
  {
  return;
@@ -813,6 +825,10 @@
  */
  public byte getVitalityLevel()
  {
+ if (getActiveChar().getNevitSystem().isAdventBlessingActive())
+ {
+ return 4;
+ }
  return _vitalityLevel;
  }
 
Index: java/com/l2jserver/gameserver/taskmanager/TaskManager.java
===================================================================
--- java/com/l2jserver/gameserver/taskmanager/TaskManager.java (revision 6625)
+++ java/com/l2jserver/gameserver/taskmanager/TaskManager.java (working copy)
@@ -46,6 +46,7 @@
 import com.l2jserver.gameserver.taskmanager.tasks.TaskDailySkillReuseClean;
 import com.l2jserver.gameserver.taskmanager.tasks.TaskGlobalVariablesSave;
 import com.l2jserver.gameserver.taskmanager.tasks.TaskJython;
+import com.l2jserver.gameserver.taskmanager.tasks.TaskNevit;
 import com.l2jserver.gameserver.taskmanager.tasks.TaskOlympiadSave;
 import com.l2jserver.gameserver.taskmanager.tasks.TaskRaidPointsReset;
 import com.l2jserver.gameserver.taskmanager.tasks.TaskRecom;
@@ -192,6 +193,7 @@
  registerTask(new TaskDailySkillReuseClean());
  registerTask(new TaskGlobalVariablesSave());
  registerTask(new TaskJython());
+ registerTask(new TaskNevit());
  registerTask(new TaskOlympiadSave());
  registerTask(new TaskRaidPointsReset());
  registerTask(new TaskRecom());
Index: java/com/l2jserver/gameserver/network/clientpackets/EnterWorld.java
===================================================================
--- java/com/l2jserver/gameserver/network/clientpackets/EnterWorld.java (revision 6625)
+++ java/com/l2jserver/gameserver/network/clientpackets/EnterWorld.java (working copy)
@@ -68,8 +68,6 @@
 import com.l2jserver.gameserver.network.serverpackets.EtcStatusUpdate;
 import com.l2jserver.gameserver.network.serverpackets.ExBasicActionList;
 import com.l2jserver.gameserver.network.serverpackets.ExGetBookMarkInfoPacket;
-import com.l2jserver.gameserver.network.serverpackets.ExNevitAdventPointInfoPacket;
-import com.l2jserver.gameserver.network.serverpackets.ExNevitAdventTimeChange;
 import com.l2jserver.gameserver.network.serverpackets.ExNoticePostArrived;
 import com.l2jserver.gameserver.network.serverpackets.ExNotifyPremiumItem;
 import com.l2jserver.gameserver.network.serverpackets.ExShowContactList;
@@ -488,8 +486,6 @@
 
  sendPacket(new SkillCoolTime(activeChar));
  sendPacket(new ExVoteSystemInfo(activeChar));
- sendPacket(new ExNevitAdventPointInfoPacket(0));
- sendPacket(new ExNevitAdventTimeChange(-1)); // only set pause state...
  sendPacket(new ExShowContactList(activeChar));
 
  for (L2ItemInstance i : activeChar.getInventory().getItems())
Index: java/com/l2jserver/gameserver/model/zone/type/L2PeaceZone.java
===================================================================
--- java/com/l2jserver/gameserver/model/zone/type/L2PeaceZone.java (revision 6625)
+++ java/com/l2jserver/gameserver/model/zone/type/L2PeaceZone.java (working copy)
@@ -53,6 +53,9 @@
  {
  return;
  }
+
+ /* Nevit Turn Off on Peace Zone */
+ player.getNevitSystem().stopAdventTask(true);
  }
 
  if (Config.PEACE_ZONE_MODE != 2)