-
Posts
1,019 -
Joined
-
Last visited
-
Feedback
0%
Content Type
Articles
Profiles
Forums
Store
Everything posted by maximilion2
-
[Discussion]Κάντε request java mods
maximilion2 replied to Rizlaaa's topic in Server Development Discussion [Greek]
kapios coder gia npc gia siege gia ola ta castle????? kai an ginete ena code gia [.changepassword CurrentPass NewPass NewPass] vrika auto: /* This program 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 2, or (at your option) * any later version. * * This program 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA * 02111-1307, USA. * * http://www.gnu.org/copyleft/gpl.html */ package com.l2jfrozen.gameserver.model.actor.instance; import com.l2jfrozen.crypt.Base64; import com.l2jfrozen.gameserver.ai.CtrlIntention; import com.l2jfrozen.gameserver.network.serverpackets.ActionFailed; import com.l2jfrozen.gameserver.network.serverpackets.LeaveWorld; import com.l2jfrozen.gameserver.network.serverpackets.MyTargetSelected; import com.l2jfrozen.gameserver.network.serverpackets.NpcHtmlMessage; import com.l2jfrozen.gameserver.network.serverpackets.ValidateLocation; import com.l2jfrozen.gameserver.templates.L2NpcTemplate; import com.l2jfrozen.util.database.L2DatabaseFactory; import java.security.MessageDigest; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.StringTokenizer; import javolution.text.TextBuilder; public class L2PasswordChangerInstance extends L2FolkInstance { public L2PasswordChangerInstance(int objectId, L2NpcTemplate template) { super(objectId, template); } public void onBypassFeedback(L2PcInstance player, String command) { if (command.startsWith("change_password")) { StringTokenizer st = new StringTokenizer(command); st.nextToken(); String currPass = null; String newPass = null; String repeatNewPass = null; try { if (st.hasMoreTokens()) { currPass = st.nextToken(); newPass = st.nextToken(); repeatNewPass = st.nextToken(); } else { player.sendMessage("Please fill in all the blanks before requesting for a password change."); return; } changePassword(currPass, newPass, repeatNewPass, player); } catch (StringIndexOutOfBoundsException e) { } } } public void onAction(L2PcInstance player) { if (!canTarget(player)) { return; } if (this != player.getTarget()) { player.setTarget(this); player.sendPacket(new MyTargetSelected(getObjectId(), 0)); player.sendPacket(new ValidateLocation(this)); } else if (!canInteract(player)) { player.getAI().setIntention(CtrlIntention.AI_INTENTION_INTERACT, this); } else { showHtmlWindow(player); } player.sendPacket(new ActionFailed()); } private void showHtmlWindow(L2PcInstance activeChar) { NpcHtmlMessage nhm = new NpcHtmlMessage(5); TextBuilder replyMSG = new TextBuilder(""); replyMSG.append("<html><title>L2 InStadia Account Manager</title>"); replyMSG.append("<body><center>"); replyMSG.append("To change your password:<br1> First fill in your current password and then your new!</font><br>"); replyMSG.append("Current Password: <edit var=\"cur\" width=100 height=15><br>"); replyMSG.append("New Password: <edit var=\"new\" width=100 height=15><br>"); replyMSG.append("Repeat New Password: <edit var=\"repeatnew\" width=100 height=15><br><br>"); replyMSG.append("<button value=\"Change Password\" action=\"bypass -h npc_" + getObjectId() + "_change_password $cur $new $repeatnew\" width=204 height=20 back=\"sek.cbui75\" fore=\"sek.cbui75\">"); replyMSG.append("</center></body></html>"); nhm.setHtml(replyMSG.toString()); activeChar.sendPacket(nhm); activeChar.sendPacket(new ActionFailed()); } public static boolean changePassword(String currPass, String newPass, String repeatNewPass, L2PcInstance activeChar) { if (newPass.length() < 5) { activeChar.sendMessage("The new password is too short!"); return false; } if (newPass.length() > 20) { activeChar.sendMessage("The new password is too long!"); return false; } if (!newPass.equals(repeatNewPass)) { activeChar.sendMessage("Repeated password doesn't match the new password."); return false; } Connection con = null; String password = null; try { MessageDigest md = MessageDigest.getInstance("SHA"); byte[] raw = currPass.getBytes("UTF-8"); raw = md.digest(raw); String currPassEncoded = Base64.encodeBytes(raw); con = L2DatabaseFactory.getInstance().getConnection(); PreparedStatement statement = con.prepareStatement("SELECT password FROM accounts WHERE login=?"); statement.setString(1, activeChar.getAccountName()); ResultSet rset = statement.executeQuery(); while (rset.next()) { password = rset.getString("password"); } rset.close(); statement.close(); byte[] password2 = null; if (currPassEncoded.equals(password)) { password2 = newPass.getBytes("UTF-8"); password2 = md.digest(password2); PreparedStatement statement2 = con.prepareStatement("UPDATE accounts SET password=? WHERE login=?"); statement2.setString(1, Base64.encodeBytes(password2)); statement2.setString(2, activeChar.getAccountName()); statement2.executeUpdate(); statement2.close(); activeChar.sendMessage("Congratulations! Your password has been changed succesfully. You will now be disconnected for security reasons. Please login again!"); try { Thread.sleep(3000L); } catch (Exception e) { } activeChar.deleteMe(); activeChar.sendPacket(new LeaveWorld()); } else { activeChar.sendMessage("The current password you've inserted is incorrect! Please try again!"); return password2 != null; } } catch (Exception e) { _log.warning("could not update the password of account: " + activeChar.getAccountName()); } finally { try { if (con != null) con.close(); } catch (SQLException e) { _log.warning("Failed to close database connection!"); } } return true; } } alla opwte allazw pwta trow exit kai prp na ksanampw.. ginete na to allaksw se logout anti gia exit? -
i will put it in my server :D
-
Announce Hero,Noble,GM,Donator,New Char In Login
maximilion2 replied to Ta®oS™'s topic in Server Shares & Files [L2J]
can't be replacement with if (activeChar.isLv80()) ? -
siege manager gia ola ta castle?
maximilion2 replied to maximilion2's question in Request Server Development Help [Greek]
ti einai to G-P? -
http://maxcheaters.com/forum/index.php?topic=231348.0 server closed :(
-
[GUIDE][GR]Πώς Να περνάτε Java Codes!!!!!
maximilion2 replied to Papaditsa's topic in Server Development Discussion [Greek]
aaa gt leei sto telos Ο συγκεκριμένος code θέλει και client mode... btw ksereis pws na to kano monimo kai oxi 22 hours? -
ok then ;) i will adapt it for c6 when i have free time kkkkk :P
-
bad -.- are you implying something for my coding skills?
-
[GUIDE][GR]Πώς Να περνάτε Java Codes!!!!!
maximilion2 replied to Papaditsa's topic in Server Development Discussion [Greek]
thanx to code to teleiwsa.. ti prp na kanw edit sto client? -
can i adapt it for interlude?
-
[Share]Killed Barakiel?[Set Noble]
maximilion2 replied to akaa's topic in Server Shares & Files [L2J]
why you bring up post 2 years old? -.- -
Announce Hero,Noble,GM,Donator,New Char In Login
maximilion2 replied to Ta®oS™'s topic in Server Shares & Files [L2J]
thanx i use it :D any config to set true or false? for example announceherologin=True ... -
oks
-
[Discussion]Κάντε request java mods
maximilion2 replied to Rizlaaa's topic in Server Development Discussion [Greek]
nporei kapios na m dwsei code gia na einai enas npc gia ola ta castles (register/defend) kai oxi na xreiazete na peigeneis na vriskeis analoga ton ka8e npc tou castle.... -
siege manager gia ola ta castle?
maximilion2 replied to maximilion2's question in Request Server Development Help [Greek]
kapios na vrhke twn kwdika?? -
don't trust you why?
-
snyper pliz tell me price
-
Looking for a c6 donate server
maximilion2 replied to maximilion2's topic in [Request] Private Servers
need interlude lol anyway thanx i started l2 mafia :D -
Source aCis - another CRAPPY interlude server
maximilion2 replied to Tryskell's topic in Server Shares & Files [L2J]
what event you mean tvt,ctf,dm etc? -
Source aCis - another CRAPPY interlude server
maximilion2 replied to Tryskell's topic in Server Shares & Files [L2J]
it's not intented to be used for LIVE servers, but for helpers to report issues. lol he can't add any protection or work on it.. -
Poulaw ston www.l2elite.us account me 7 char nobless! set tateo+8,outlaw kai formal pm edw Edit: h antalazw me l2 interlude pack
-
xa0xa00xa0ax0ax0xa0ax den mporw klaiwwwwwwwwwwwwwwwwwwww gamhse re man!! :P
-
kai emena teties mlkies m evgaze prox8es lol
