Jump to content

Recommended Posts

Posted

Paidia pragmatika kanete poly wraia douleia ;)

Thelw an ginete kai mporeite vevaia enan code gia c6 Anti Afk dld

otan enas paixtis kathete akinitos gia peripou 5 min na trwei critical kai pernei ena msg.

Brika to Anti Afk Tvt alla einai gia Tvt to thelw na douleuei genika mesa ston server.

Tnx

Posted

Geia sas paidia twra teleuta mpeike enas filos mou ston l2 vitality

kai me eipe oti exoun ta PcBang Points kserw o kwdikas exei gunei eidi share edw sto forum

auto pou me eipe eitan to endiaferon

exoun kanei mia alagi pou kathe 3 wres opoios exei parapanw apo 1.000 pc bang points

gunete automata ena event  kai osoi exoun parapanw apo 1.000 pc bang points pernoun meros

kai stin tuxi dialegete enas char kai pairnei alla 100.000 pc bang points

 

mporei na grapsei kapoios auton edw ton kwdika ?

 

 


### Eclipse Workspace Patch 1.0
#P Chr.6GMS
Index: java/net/sf/l2j/gameserver/model/PcBangEvent.java
===================================================================
--- java/net/sf/l2j/gameserver/model/PcBangEvent.java	(revision 0)
+++ java/net/sf/l2j/gameserver/model/PcBangEvent.java	(revision 0)
@@ -0,0 +1,137 @@
+/* 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 net.sf.l2j.gameserver.model;
+
+import java.util.Collection;
+
+import net.sf.l2j.gameserver.Announcements;
+import net.sf.l2j.gameserver.ThreadPoolManager;
+import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
+import net.sf.l2j.util.Rnd;
+import javolution.util.FastList;
+
+/**
+ *
+ * @author  iracundus
+ */
+public class PcBangEvent
+{
+	private FastList<L2PcInstance> playersBangs = new FastList<L2PcInstance>();
+	private boolean canStart = false;
+	
+	private PcBangEvent()
+	{
+		ThreadPoolManager.getInstance().scheduleEffectAtFixedRate(new Event(), 10800000, 10800000);
+	}
+	
+	private class Event implements Runnable{
+		public void run()
+		{
+			checkPlayers();
+			broadCastInfo();
+			if(canStart == true)
+			{
+				waitSeconds(25);
+				progressEvent();
+			}
+			endEvent();				
+		}
+	}
+	
+	private void checkPlayers()
+	{
+		Collection<L2PcInstance> allPlayers = L2World.getInstance().getAllPlayers();
+		
+	   
+		for(L2PcInstance player : allPlayers)
+		{
+			if(player == null || player.getPcBangScore() < 1000)
+				continue;
+			
+			playersBangs.add(player);
+		}
+	}
+	
+	private void broadCastInfo()
+	{
+		if(playersBangs.isEmpty() || playersBangs.size() == 1){
+			canStart = false;
+			Announcements.getInstance().announceToAll("Pc Bang Event Cancelled due to no registrations");
+			return;
+		}
+		
+		for(L2PcInstance player : playersBangs){
+			if(player == null)
+				continue;
+			
+			canStart = true;
+			player.sendMessage("You are in the pc bang event now , in 25 seconds winner will be announced");
+		}
+	}
+	
+	private void progressEvent()
+	{
+		//select the lucky player
+		
+		L2PcInstance lucky = playersBangs.get(Rnd.get(playersBangs.size()));
+		
+		if(lucky == null)
+			return;
+		
+		lucky.sendMessage("You are the winner!");
+		lucky.addPcBangScore(100000000);
+	}
+	
+	private void endEvent(){
+		if(playersBangs.isEmpty() == false)
+		playersBangs.clear();
+		
+		canStart = false;
+		
+		Announcements.getInstance().announceToAll("Pc Bang Event Ended");
+	}
+	
+	private void waitSeconds(int seconds){
+		long start,end;
+		
+		start = System.currentTimeMillis();
+		end = start * 1000;
+		end *= seconds;
+		
+		while(System.currentTimeMillis() < end){
+			
+		}
+	}
+	
+	private PcBangEvent getInstance(){
+		return SingletonHolder._instance;
+	}
+	
+	@SuppressWarnings("synthetic-access")
+	private static class SingletonHolder
+	{
+		protected static final PcBangEvent _instance = new PcBangEvent();
+	}
+	
+	public static void main(String[] args)
+	{
+		PcBangEvent e = new PcBangEvent();
+		
+		e.getInstance();
+	}
+}

 

Waiting.

Posted

Ena NPC ( Raid Bosses Info ) ginetai?

Me endiaferei apla na leei an einai alive h dead ta raidboss ( xwris respawn times ktl gia pio easy ), an ginetai kati tetoio ;) eyxaristw!

 

Edit : ton kwdika xreiazomai eite se java eite se python, to npc ktl 8a ta fix monos mou ( kai to html ) den exw prob. Client interlude.

Posted

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?

Posted

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?

Γιατί δεν χρησιμοποιείς το Password Changer NPC που είναι bugless από το command?
Posted

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?

 

activeChar.deleteMe();

 

        activeChar.sendPacket(new LeaveWorld());

 

σβησε αυτες τις σειρες αν δε θες να τρως exit.

Posted

activeChar.deleteMe();

 

        activeChar.sendPacket(new LeaveWorld());

 

σβησε αυτες τις σειρες αν δε θες να τρως exit.

 

okey se euxaristw :) leitourgei mia xara :D

twra to mono p menei an kapios kserei code gia enan npc gia ola ta castle gia regisrer/defend siege pliz na to share :)

Posted

File mporeis na ftiakseis ena npc sto opoio tha paizoun poker ?

Poker Game Dld ...?

εχει γινει Share, ψαξτο.

επισης δεν γνωριζω καν πως παιζεται το Poker, πραγμα που σημαινει οτι δε μπορω να κανω κατι που δεν ξερω καν πως λειτουργει.

Guest
This topic is now closed to further replies.

×
×
  • Create New...