I want to put if Human , Elf , Dwarf female setGood(true) and if Orc , delf, male dwarf setEvil(true) i made the code but doesnt work correctly , thinking to delete setevil and change the setGood retail code here:http://pastebin.com/0wdWBjT5
generally i deleted the setevil and changed the setgood to setdestiny i want just to press the button and check if race suits then go to the faction.. Goods : human , elf , female dwarf
evil : orc, d.elf , male dwarf
package net.sf.l2j;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.StringTokenizer;
import java.util.logging.Logger;
import net.sf.l2j.commons.random.Rnd;
import net.sf.l2j.gameserver.ai.CtrlIntention;
import net.sf.l2j.gameserver.model.L2World;
import net.sf.l2j.gameserver.model.actor.instance.L2NpcInstance;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.model.actor.template.NpcTemplate;
import net.sf.l2j.gameserver.network.serverpackets.ActionFailed;
import net.sf.l2j.gameserver.network.serverpackets.MyTargetSelected;
import net.sf.l2j.gameserver.network.serverpackets.NpcHtmlMessage;
import net.sf.l2j.gameserver.network.serverpackets.SocialAction;
import net.sf.l2j.gameserver.network.serverpackets.ValidateLocation;
public class L2FactionInstance extends L2NpcInstance
{
public L2FactionInstance(int objectId, NpcTemplate template)
{
super(objectId, template);
}
private final static Logger _log = Logger.getLogger(L2FactionInstance.class.getName());
@Override
public void onBypassFeedback(L2PcInstance player, String command)
{
player.sendPacket(ActionFailed.STATIC_PACKET);
StringTokenizer st = new StringTokenizer(command, " ");
String actualCommand = st.nextToken();
@SuppressWarnings("unused")
String val = "";
if (st.countTokens() >= 1)
{
val = st.nextToken();
}
else if (actualCommand.equalsIgnoreCase("setdestiny"))
{
setTarget(player);
if (player.isGood())
{
player.sendMessage("You already are in " + Config.FACTION_NAME_TEAM_GOOD + " faction ");
player.sendPacket(new ActionFailed());
}
if(player.getRace blabla bla
{
player.setGood(true);
Connection connection = null;
try
{
connection = L2DatabaseFactory.getInstance().getConnection();
PreparedStatement statement = connection.prepareStatement("SELECT obj_Id FROM characters where char_name=?");
statement.setString(1, player.getName());
ResultSet rset = statement.executeQuery();
int objId = 0;
if (rset.next())
{
objId = rset.getInt(1);
}
rset.close();
statement.close();
if (objId == 0)
{
connection.close();
return;
}
statement = connection.prepareStatement("UPDATE characters SET good=1 WHERE obj_Id=?");
statement.setInt(1, objId);
statement.execute();
statement.close();
connection.close();
}
catch (Exception e)
{
_log.info("could not set good status of char:");
}
finally
{
try
{
connection.close();
}
catch (Exception e)
{
}
}
if (player.isGood())
{
player.broadcastUserInfo();
player.sendMessage("You Are fighiting Now for" + Config.FACTION_NAME_TEAM_GOOD + " Faction ");
player.getAppearance().setNameColor(Config.FACTION_COLOR_NAME_GOOD);
player.teleToLocation(Config.GOODX, Config.GOODY, Config.GOODZ);
player.setTitle(Config.FACTION_NAME_TEAM_GOOD);
}
}
}
}
}
else if(player.getRace() == Race.Orc() bla bla bla
{
player.setEvil(true);
Connection connection = null;
try
{
connection = L2DatabaseFactory.getInstance().getConnection();
PreparedStatement statement = connection.prepareStatement("SELECT obj_Id FROM characters where char_name=?");
statement.setString(1, player.getName());
ResultSet rset = statement.executeQuery();
int objId = 0;
if (rset.next())
{
objId = rset.getInt(1);
}
rset.close();
statement.close();
if (objId == 0)
{
connection.close();
return;
}
statement = connection.prepareStatement("UPDATE characters SET evil=1 WHERE obj_Id=?");
statement.setInt(1, objId);
statement.execute();
statement.close();
connection.close();
}
catch (Exception e)
{
_log.info("could not set evil status of char:");
}
finally
{
try
{
connection.close();
}
catch (Exception e)
{
}
}
if (player.isEvil())
{
player.broadcastUserInfo();
player.sendMessage("You Are fighiting Now for " + Config.FACTION_NAME_TEAM_EVIL + " Faction ");
player.getAppearance().setNameColor(Config.FACTION_COLOR_NAME_EVIL);
player.teleToLocation(Config.EVILX, Config.EVILY, Config.EVILZ);
player.setTitle(Config.FACTION_NAME_TEAM_EVIL);
}
}
}
else if (actualCommand.equalsIgnoreCase("setnobless"))
{
L2PcInstance activeChar = player;
if (activeChar.isNoble())
activeChar.sendMessage("You Are Already A Noblesse!.");
else
{
activeChar.setNoble(true, true);
activeChar.sendMessage("You Are Now a Noble,You Are Granted With Noblesse Status , And Noblesse Skills.");
activeChar.broadcastUserInfo();
activeChar.getInventory().addItem("Tiara", 7694, 1, activeChar, null);
}
}
else
{
super.onBypassFeedback(player, command);
}
}
@Override
public String getHtmlPath(int npcId, int val)
{
return "data/html/mods/faction/main.htm";
}
}
⏳ L2Elixir Open Beta goes live in less than 4 hours!
This Saturday, November 15th at 21:00 (UTC +2), the gates open for our biggest testing phase!
🔥 Don’t miss the first 30 minutes — exclusive rewards await!
A special NPC, “The Judge”, will appear in Giran, offering unique bonuses to early participants:
🏅 Open Beta Rewards:
- The first 2 players who talk to The Judge → Premium Account for Launch
- Another 2 random players who interact → Premium Account
- Everyone who speaks to the NPC within the first 30 minutes → Legendary Starter Pack for all characters on launch day (Nov 28th, 2025)
📌 The NPC will spawn exactly at 21:00 (UTC+2).
⏱️ Follow the countdown on our website — the hype is real!
Create your account & download the Updater to be ready!
🔗 https://l2elixir.org/connect/
💬 Discord: https://discord.gg/5ydPHvhbxs
Question
Kelrzher
-
I want to put if Human , Elf , Dwarf female setGood(true) and if Orc , delf, male dwarf setEvil(true) i made the code but doesnt work correctly , thinking to delete setevil and change the setGood retail code here:http://pastebin.com/0wdWBjT5
-
generally i deleted the setevil and changed the setgood to setdestiny i want just to press the button and check if race suits then go to the faction.. Goods : human , elf , female dwarf -
Edited by Kelrzherevil : orc, d.elf , male dwarf
package net.sf.l2j; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.StringTokenizer; import java.util.logging.Logger; import net.sf.l2j.commons.random.Rnd; import net.sf.l2j.gameserver.ai.CtrlIntention; import net.sf.l2j.gameserver.model.L2World; import net.sf.l2j.gameserver.model.actor.instance.L2NpcInstance; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.model.actor.template.NpcTemplate; import net.sf.l2j.gameserver.network.serverpackets.ActionFailed; import net.sf.l2j.gameserver.network.serverpackets.MyTargetSelected; import net.sf.l2j.gameserver.network.serverpackets.NpcHtmlMessage; import net.sf.l2j.gameserver.network.serverpackets.SocialAction; import net.sf.l2j.gameserver.network.serverpackets.ValidateLocation; public class L2FactionInstance extends L2NpcInstance { public L2FactionInstance(int objectId, NpcTemplate template) { super(objectId, template); } private final static Logger _log = Logger.getLogger(L2FactionInstance.class.getName()); @Override public void onBypassFeedback(L2PcInstance player, String command) { player.sendPacket(ActionFailed.STATIC_PACKET); StringTokenizer st = new StringTokenizer(command, " "); String actualCommand = st.nextToken(); @SuppressWarnings("unused") String val = ""; if (st.countTokens() >= 1) { val = st.nextToken(); } else if (actualCommand.equalsIgnoreCase("setdestiny")) { setTarget(player); if (player.isGood()) { player.sendMessage("You already are in " + Config.FACTION_NAME_TEAM_GOOD + " faction "); player.sendPacket(new ActionFailed()); } if(player.getRace blabla bla { player.setGood(true); Connection connection = null; try { connection = L2DatabaseFactory.getInstance().getConnection(); PreparedStatement statement = connection.prepareStatement("SELECT obj_Id FROM characters where char_name=?"); statement.setString(1, player.getName()); ResultSet rset = statement.executeQuery(); int objId = 0; if (rset.next()) { objId = rset.getInt(1); } rset.close(); statement.close(); if (objId == 0) { connection.close(); return; } statement = connection.prepareStatement("UPDATE characters SET good=1 WHERE obj_Id=?"); statement.setInt(1, objId); statement.execute(); statement.close(); connection.close(); } catch (Exception e) { _log.info("could not set good status of char:"); } finally { try { connection.close(); } catch (Exception e) { } } if (player.isGood()) { player.broadcastUserInfo(); player.sendMessage("You Are fighiting Now for" + Config.FACTION_NAME_TEAM_GOOD + " Faction "); player.getAppearance().setNameColor(Config.FACTION_COLOR_NAME_GOOD); player.teleToLocation(Config.GOODX, Config.GOODY, Config.GOODZ); player.setTitle(Config.FACTION_NAME_TEAM_GOOD); } } } } } else if(player.getRace() == Race.Orc() bla bla bla { player.setEvil(true); Connection connection = null; try { connection = L2DatabaseFactory.getInstance().getConnection(); PreparedStatement statement = connection.prepareStatement("SELECT obj_Id FROM characters where char_name=?"); statement.setString(1, player.getName()); ResultSet rset = statement.executeQuery(); int objId = 0; if (rset.next()) { objId = rset.getInt(1); } rset.close(); statement.close(); if (objId == 0) { connection.close(); return; } statement = connection.prepareStatement("UPDATE characters SET evil=1 WHERE obj_Id=?"); statement.setInt(1, objId); statement.execute(); statement.close(); connection.close(); } catch (Exception e) { _log.info("could not set evil status of char:"); } finally { try { connection.close(); } catch (Exception e) { } } if (player.isEvil()) { player.broadcastUserInfo(); player.sendMessage("You Are fighiting Now for " + Config.FACTION_NAME_TEAM_EVIL + " Faction "); player.getAppearance().setNameColor(Config.FACTION_COLOR_NAME_EVIL); player.teleToLocation(Config.EVILX, Config.EVILY, Config.EVILZ); player.setTitle(Config.FACTION_NAME_TEAM_EVIL); } } } else if (actualCommand.equalsIgnoreCase("setnobless")) { L2PcInstance activeChar = player; if (activeChar.isNoble()) activeChar.sendMessage("You Are Already A Noblesse!."); else { activeChar.setNoble(true, true); activeChar.sendMessage("You Are Now a Noble,You Are Granted With Noblesse Status , And Noblesse Skills."); activeChar.broadcastUserInfo(); activeChar.getInventory().addItem("Tiara", 7694, 1, activeChar, null); } } else { super.onBypassFeedback(player, command); } } @Override public String getHtmlPath(int npcId, int val) { return "data/html/mods/faction/main.htm"; } }58 answers to this question
Recommended Posts