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";
}
}
obviously this comes down to the quality of the service you are buying, i dont understand if you are not happy in the first place why are you fustrated? just go get another service, we are discussing basic IQ.
if you are selling something, you have to have both updated, right? people see forum first, not website.
if you are selling something, you have to have both updated, right? people see forum first, not website.
⏳ 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