U3Games

Games | Desarrollo & Soporte => L2 | Sección de Servidores => Lineage => L2 | Apartado de Soporte => Mensaje iniciado por: heladito en Nov 04, 2025, 11:24 PM

Título: Error evento LastMan (Jfrozen Rev 1132)
Publicado por: heladito en Nov 04, 2025, 11:24 PM
Hola, como estan? agregue el evento LastMan a Jfrozen rev 1132 pero me tira error en 2 lineas y queria consultar si alguno me puede guiar para una solucion.

Les dejo el codigo que agregue

(Publico el link de donde esta el code porque no sino excedo el maximo de caracteres)
https://www.l2jbrasil.com/index.php?/topic/92086-interludelastman/ (https://www.l2jbrasil.com/index.php?/topic/92086-interludelastman/)


El error lo tengo en el LastMan.java
Las lineas exactas del error son estas


if (p.isInArenaEvent())

if (EvtArenaManager.getInstance().isRegistered(p))
Título: Re:Error evento LastMan (Jfrozen Rev 1132)
Publicado por: Sacrifice en Nov 05, 2025, 11:57 PM
diff --git a/dist/game/data/scripts/custom/ServicesManager/ServicesManager.java b/dist/game/data/scripts/custom/ServicesManager/ServicesManager.java
index bd25b76..ed2c1c0 100644
--- a/dist/game/data/scripts/custom/ServicesManager/ServicesManager.java
+++ b/dist/game/data/scripts/custom/ServicesManager/ServicesManager.java
@@ -22,23 +22,25 @@
 import java.sql.PreparedStatement;
 import java.util.logging.Logger;
 
+import com.l2jserver.Config;
 import com.l2jserver.commons.database.pool.impl.ConnectionFactory;
 import com.l2jserver.gameserver.data.sql.impl.CharNameTable;
 import com.l2jserver.gameserver.data.sql.impl.ClanTable;
 import com.l2jserver.gameserver.model.actor.L2Npc;
 import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
 import com.l2jserver.gameserver.model.olympiad.OlympiadManager;
-import com.l2jserver.gameserver.model.quest.Quest;
 import com.l2jserver.gameserver.model.quest.QuestState;
 import com.l2jserver.gameserver.network.serverpackets.MagicSkillUse;
+
+import ai.npc.AbstractNpcAI;
 
 /**
  * NPC Services Manager AI.
  * @author Sacrifice
  */
-public final class ServicesManager extends Quest
+public final class ServicesManager extends AbstractNpcAI
 {
- public static final Logger _log = Logger.getLogger(ServicesManager.class.getName());
+ public static final Logger LOG = Logger.getLogger(ServicesManager.class.getName());
 
  // NPC Id
  private static final int NPC_ID = 10001;
@@ -93,7 +95,8 @@
 
  private ServicesManager()
  {
- super(-1, ServicesManager.class.getSimpleName(), "custom");
+ super(ServicesManager.class.getSimpleName(), "custom");
+
  addStartNpc(NPC_ID);
  addFirstTalkId(NPC_ID);
  addTalkId(NPC_ID);
@@ -161,7 +164,8 @@
  }
  if (((player.getClan().getLevel() <= 1) || (player.getClan().getLevel() == 2) || (player.getClan().getLevel() == 3) || (player.getClan().getLevel() == 4)))
  {
- player.getClan().setLevel(player.getClan().getLevel() + 1);
+ player.getClan().changeLevel(player.getClan().getLevel() + 1);
+ player.getClan().setLevel(player.getClan().getLevel());
  player.getClan().broadcastClanStatus();
  player.sendMessage("Your clan is now level " + player.getClan().getLevel() + ".");
  player.setTarget(player);
@@ -173,7 +177,8 @@
  if (st.getQuestItemsCount(CLAN_LEVEL_ITEMS_ID[0]) >= CLAN_LEVEL_ITEMS_COUNT[0])
  {
  st.takeItems(CLAN_LEVEL_ITEMS_ID[0], CLAN_LEVEL_ITEMS_COUNT[0]);
- player.getClan().setLevel(player.getClan().getLevel() + 1);
+ player.getClan().changeLevel(player.getClan().getLevel() + 1);
+ player.getClan().setLevel(player.getClan().getLevel());
  player.getClan().broadcastClanStatus();
  player.sendMessage("Your clan is now level " + player.getClan().getLevel() + ".");
  player.setTarget(player);
@@ -187,7 +192,8 @@
  if (st.getQuestItemsCount(CLAN_LEVEL_ITEMS_ID[1]) >= CLAN_LEVEL_ITEMS_COUNT[1])
  {
  st.takeItems(CLAN_LEVEL_ITEMS_ID[1], CLAN_LEVEL_ITEMS_COUNT[1]);
- player.getClan().setLevel(player.getClan().getLevel() + 1);
+ player.getClan().changeLevel(player.getClan().getLevel() + 1);
+ player.getClan().setLevel(player.getClan().getLevel());
  player.getClan().broadcastClanStatus();
  player.sendMessage("Your clan is now level " + player.getClan().getLevel() + ".");
  player.setTarget(player);
@@ -201,7 +207,8 @@
  if (st.getQuestItemsCount(CLAN_LEVEL_ITEMS_ID[2]) >= CLAN_LEVEL_ITEMS_COUNT[2])
  {
  st.takeItems(CLAN_LEVEL_ITEMS_ID[2], CLAN_LEVEL_ITEMS_COUNT[2]);
- player.getClan().setLevel(player.getClan().getLevel() + 1);
+ player.getClan().changeLevel(player.getClan().getLevel() + 1);
+ player.getClan().setLevel(player.getClan().getLevel());
  player.getClan().broadcastClanStatus();
  player.sendMessage("Your clan is now level " + player.getClan().getLevel() + ".");
  player.setTarget(player);
@@ -215,7 +222,8 @@
  if (st.getQuestItemsCount(CLAN_LEVEL_ITEMS_ID[3]) >= CLAN_LEVEL_ITEMS_COUNT[3])
  {
  st.takeItems(CLAN_LEVEL_ITEMS_ID[3], CLAN_LEVEL_ITEMS_COUNT[3]);
- player.getClan().setLevel(player.getClan().getLevel() + 1);
+ player.getClan().changeLevel(player.getClan().getLevel() + 1);
+ player.getClan().setLevel(player.getClan().getLevel());
  player.getClan().broadcastClanStatus();
  player.sendMessage("Your clan is now level " + player.getClan().getLevel() + ".");
  player.setTarget(player);
@@ -229,7 +237,8 @@
  if (st.getQuestItemsCount(CLAN_LEVEL_ITEMS_ID[4]) >= CLAN_LEVEL_ITEMS_COUNT[4])
  {
  st.takeItems(CLAN_LEVEL_ITEMS_ID[4], CLAN_LEVEL_ITEMS_COUNT[4]);
- player.getClan().setLevel(player.getClan().getLevel() + 1);
+ player.getClan().changeLevel(player.getClan().getLevel() + 1);
+ player.getClan().setLevel(player.getClan().getLevel());
  player.getClan().broadcastClanStatus();
  player.sendMessage("Your clan is now level " + player.getClan().getLevel() + ".");
  player.setTarget(player);
@@ -243,7 +252,8 @@
  if (st.getQuestItemsCount(CLAN_LEVEL_ITEMS_ID[5]) >= CLAN_LEVEL_ITEMS_COUNT[5])
  {
  st.takeItems(CLAN_LEVEL_ITEMS_ID[5], CLAN_LEVEL_ITEMS_COUNT[5]);
- player.getClan().setLevel(player.getClan().getLevel() + 1);
+ player.getClan().changeLevel(player.getClan().getLevel() + 1);
+ player.getClan().setLevel(player.getClan().getLevel());
  player.getClan().broadcastClanStatus();
  player.sendMessage("Your clan is now level " + player.getClan().getLevel() + ".");
  player.setTarget(player);
@@ -263,7 +273,7 @@
  }
  catch (Exception e)
  {
- _log.info("Error updating clan level for player " + player.getName() + ". Error: " + e);
+ LOG.info("Error updating clan level for player " + player.getName() + ". Error: " + e);
  }
  player.getClan().broadcastClanStatus();
  return "ClanLevelUp.htm";
@@ -292,7 +302,7 @@
  {
  return "ChangeName.htm";
  }
- if (!newName.matches("^[a-zA-Z0-9]+$"))
+ if (!newName.matches(Config.PLAYER_NAME_TEMPLATE.toString()))
  {
  player.sendMessage("Incorrect name. Please try again.");
  return "ChangeName.htm";
@@ -311,7 +321,7 @@
  {
  if (LOG_NAME_CHANGES)
  {
- _log.info("Character Name Change Info: Character original name: " + player.getName() + ", Character new name: " + newName);
+ LOG.info("Character Name Change Info: Character original name: " + player.getName() + ", Character new name: " + newName);
  }
  st.takeItems(CHANGE_NAME_ITEM_ID, CHANGE_NAME_ITEM_COUNT);
  player.setName(newName);
@@ -386,7 +396,7 @@
  player.sendMessage("Your clan must be at least level " + CLAN_MIN_LEVEL + " to change the name.");
  return "ChangeClanName.htm";
  }
- else if (!newClanName.matches("^[a-zA-Z0-9]+$"))
+ else if (!newClanName.matches(Config.CLAN_NAME_TEMPLATE.toString()))
  {
  player.sendMessage("Incorrect name. Please try again.");
  return "ChangeClanName.htm";
@@ -405,7 +415,7 @@
  {
  if (LOG_CLAN_NAME_CHANGES)
  {
- _log.info("Clan Name Change Info: Clan original name: " + player.getClan().getName() + ", Clan new name: " + newClanName + ", Clan Leader: " + player.getName());
+ LOG.info("Clan Name Change Info: Clan original name: " + player.getClan().getName() + ", Clan new name: " + newClanName + ", Clan Leader: " + player.getName());
  }
  st.takeItems(CHANGE_NAME_ITEM_ID, CHANGE_NAME_ITEM_COUNT);
  player.getClan().setName(newClanName);
@@ -420,7 +430,7 @@
  }
  catch (Exception e)
  {
- _log.info("Error updating clan name for player " + player.getName() + ". Error: " + e);
+ LOG.info("Error updating clan name for player " + player.getName() + ". Error: " + e);
  }
  player.sendMessage("Your new clan name is " + newClanName);
  player.getClan().broadcastClanStatus();