Orochy Posted October 4, 2023 Posted October 4, 2023 Hi maxcheaters, I recently added some code to my l2jacis revision and everything works fine with the .siege commands but when I click on the html options to open the registry I don't succeed! registerHandler(new Castles()); package net.sf.l2j.gameserver.handler.voicedcommandhandlers; import net.sf.l2j.Config; import net.sf.l2j.gameserver.handler.IVoicedCommandHandler; import net.sf.l2j.gameserver.data.manager.CastleManager; import net.sf.l2j.gameserver.model.actor.Player; import net.sf.l2j.gameserver.model.entity.Castle; import net.sf.l2j.gameserver.network.SystemMessageId; import net.sf.l2j.gameserver.network.serverpackets.NpcHtmlMessage; import net.sf.l2j.gameserver.network.serverpackets.SiegeInfo; public class Castles implements IVoicedCommandHandler { private static final String[] VOICED_COMMANDS = { "siege", "siege_gludio", "siege_dion", "siege_giran", "siege_oren", "siege_aden", "siege_innadril", "siege_goddard", "siege_rune", "siege_schuttgart" }; @Override public boolean useVoicedCommand(String command, Player player, String target) { if (command.equals("siege") && Config.ENABLE_MENU) showHtm(player); else if (command.startsWith("siege_")) { if (player.getClan() != null && !player.isClanLeader()) { player.sendPacket(SystemMessageId.YOU_ARE_NOT_AUTHORIZED_TO_DO_THAT); return false; } int castleId = 0; if (command.startsWith("siege_gludio") && Config.SIEGE_GLUDIO) castleId = 1; else if (command.startsWith("siege_dion") && Config.SIEGE_DION) castleId = 2; else if (command.startsWith("siege_giran") && Config.SIEGE_GIRAN) castleId = 3; else if (command.startsWith("siege_oren") && Config.SIEGE_OREN) castleId = 4; else if (command.startsWith("siege_aden") && Config.SIEGE_ADEN) castleId = 5; else if (command.startsWith("siege_innadril") && Config.SIEGE_INNADRIL) castleId = 6; else if (command.startsWith("siege_goddard") && Config.SIEGE_GODDARD) castleId = 7; else if (command.startsWith("siege_rune") && Config.SIEGE_RUNE) castleId = 8; else if (command.startsWith("siege_schuttgart") && Config.SIEGE_SCHUT) castleId = 9; else player.sendMessage("This Castle has been disabled"); Castle castle = CastleManager.getInstance().getCastleById(castleId); if ((castle != null) && (castleId != 0)) player.sendPacket(new SiegeInfo(castle)); } return true; } private static void showHtm(Player player) { NpcHtmlMessage htm = new NpcHtmlMessage(0); htm.setFile(player.isLang() + "mods/menu/CastleManager.htm"); player.sendPacket(htm); } @Override public String[] getVoicedCommandList() { return VOICED_COMMANDS; } } <button value="Giran" action="bypass voiced_siege_giran" width=75 height=22 back="L2UI_ch3.Btn1_normalOn" fore="L2UI_ch3.Btn1_normal">
0 Salty Mike Posted October 4, 2023 Posted October 4, 2023 (edited) 11 minutes ago, Orochy said: Hi maxcheaters, I recently added some code to my l2jacis revision and everything works fine with the .siege commands but when I click on the html options to open the registry I don't succeed! <button value="Giran" action="bypass voiced_siege_giran" width=75 height=22 back="L2UI_ch3.Btn1_normalOn" fore="L2UI_ch3.Btn1_normal"> You have to create the "voiced" handler in the core too, or at the very least make sure that the delimiter is underscore and not an empty space. Alternatively, you can try changing all references of the strings below to start with "voiced_", or remove the "voiced_" portion from the button bypass. private static final String[] VOICED_COMMANDS = { "siege", "siege_gludio", "siege_dion", "siege_giran", "siege_oren", "siege_aden", "siege_innadril", "siege_goddard", "siege_rune", "siege_schuttgart" }; Edited October 4, 2023 by Bru7aLMike 1
Question
Orochy
Hi maxcheaters, I recently added some code to my l2jacis revision and everything works fine with the .siege commands but when I click on the html options to open the registry I don't succeed!
registerHandler(new Castles());
package net.sf.l2j.gameserver.handler.voicedcommandhandlers;
import net.sf.l2j.Config;
import net.sf.l2j.gameserver.handler.IVoicedCommandHandler;
import net.sf.l2j.gameserver.data.manager.CastleManager;
import net.sf.l2j.gameserver.model.actor.Player;
import net.sf.l2j.gameserver.model.entity.Castle;
import net.sf.l2j.gameserver.network.SystemMessageId;
import net.sf.l2j.gameserver.network.serverpackets.NpcHtmlMessage;
import net.sf.l2j.gameserver.network.serverpackets.SiegeInfo;
public class Castles implements IVoicedCommandHandler
{
private static final String[] VOICED_COMMANDS =
{
"siege",
"siege_gludio",
"siege_dion",
"siege_giran",
"siege_oren",
"siege_aden",
"siege_innadril",
"siege_goddard",
"siege_rune",
"siege_schuttgart"
};
@Override
public boolean useVoicedCommand(String command, Player player, String target)
{
if (command.equals("siege") && Config.ENABLE_MENU)
showHtm(player);
else if (command.startsWith("siege_"))
{
if (player.getClan() != null && !player.isClanLeader())
{
player.sendPacket(SystemMessageId.YOU_ARE_NOT_AUTHORIZED_TO_DO_THAT);
return false;
}
int castleId = 0;
if (command.startsWith("siege_gludio") && Config.SIEGE_GLUDIO)
castleId = 1;
else if (command.startsWith("siege_dion") && Config.SIEGE_DION)
castleId = 2;
else if (command.startsWith("siege_giran") && Config.SIEGE_GIRAN)
castleId = 3;
else if (command.startsWith("siege_oren") && Config.SIEGE_OREN)
castleId = 4;
else if (command.startsWith("siege_aden") && Config.SIEGE_ADEN)
castleId = 5;
else if (command.startsWith("siege_innadril") && Config.SIEGE_INNADRIL)
castleId = 6;
else if (command.startsWith("siege_goddard") && Config.SIEGE_GODDARD)
castleId = 7;
else if (command.startsWith("siege_rune") && Config.SIEGE_RUNE)
castleId = 8;
else if (command.startsWith("siege_schuttgart") && Config.SIEGE_SCHUT)
castleId = 9;
else
player.sendMessage("This Castle has been disabled");
Castle castle = CastleManager.getInstance().getCastleById(castleId);
if ((castle != null) && (castleId != 0))
player.sendPacket(new SiegeInfo(castle));
}
return true;
}
private static void showHtm(Player player)
{
NpcHtmlMessage htm = new NpcHtmlMessage(0);
htm.setFile(player.isLang() + "mods/menu/CastleManager.htm");
player.sendPacket(htm);
}
@Override
public String[] getVoicedCommandList()
{
return VOICED_COMMANDS;
}
}
<button value="Giran" action="bypass voiced_siege_giran" width=75 height=22 back="L2UI_ch3.Btn1_normalOn" fore="L2UI_ch3.Btn1_normal">
1 answer to this question
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now