Jump to content
  • 0

help vote eksigistemekati sto telefteo brika alo code


l22expert

Question

http://maxcheaters.com/forum/index.php?topic=206902.0

pedia afto pou to bazo

===================================================================

@@ -0,0 +1,220 @@

+package com.l2jserver.gameserver.instancemanager;

+   

+import java.io.BufferedReader;

+import java.io.IOException;

+import java.io.InputStreamReader;

+import java.net.URL;

+import java.sql.Connection;

+import java.sql.PreparedStatement;

+import java.sql.ResultSet;

+import java.util.ArrayList;

+import java.util.Collection;

+import java.util.List;

+import java.util.logging.Level;

+import java.util.logging.Logger;

+   

kai kati alo afto to lazo as poume etsi (http://l2topzone.com/lineage2/server-info/2412/L2Sexi.html)?

Link to comment
Share on other sites

Recommended Posts

  • 0

Σου λέει να φτιάξεις καινούργιο java αρχείο με όνομα AutoVoteRewardManager στο com/l2jserver/gameserver/instancemanager και να περάσεις μέσα τα παρακάτω :

+package com.l2jserver.gameserver.instancemanager;

+   

+import java.io.BufferedReader;

+import java.io.IOException;

+import java.io.InputStreamReader;

+import java.net.URL;

+import java.sql.Connection;

+import java.sql.PreparedStatement;

+import java.sql.ResultSet;

+import java.util.ArrayList;

+import java.util.Collection;

+import java.util.List;

+import java.util.logging.Level;

+import java.util.logging.Logger;

+   

+import com.l2jserver.Config;

+import com.l2jserver.L2DatabaseFactory;

+import com.l2jserver.gameserver.Announcements;

+import com.l2jserver.gameserver.ThreadPoolManager;

+import com.l2jserver.gameserver.model.L2World;

+import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;

+   

+public class AutoVoteRewardManager

+{

+  private static Logger _log = Logger.getLogger(AutoVoteRewardManager.class.getName());

+     

+  private static final String http = "http://l2.hopzone.net/lineage2/moreinfo/L2WorldPvP/74078.html";

+  private static final int initialCheck  = 1 * 1000;

+  private static final int delayForCheck = 1800 * 1000;

+  private static final int[] itemId    = { 20034, 57 };

+  private static final int[] itemCount = { 2, 1000 };

+  private static final int votesRequiredForReward = 8;

+

+  private static List<String> _ips = new ArrayList<String>();

+  private static int lastVoteCount = 0;

+     

+  private AutoVoteRewardManager()

+  {

+      _log.info("AutoVoteRewardManager: Vote reward system initiated.");

+      if (Config.L2JMOD_VOTE_ENGINE_SAVE)

+          load();

+      ThreadPoolManager.getInstance().scheduleGeneralAtFixedRate(new AutoReward(), initialCheck, delayForCheck);

+  }

+     

+  private class AutoReward implements Runnable

+  {

+      public void run()

+      {

+          int votes = getVotes();

+          _log.info("AutoVoteRewardManager: We now have " + votes + "/"+(getLastVoteCount()+votesRequiredForReward)+" vote(s). Next check in "+(delayForCheck/1000)+" sec.");

+          Announcements.getInstance().announceToAll("Vote on http://L2TopZone.com");

+

+          if (votes >= getLastVoteCount() + votesRequiredForReward)

+          {

+              Collection<L2PcInstance> pls = L2World.getInstance().getAllPlayers().values();

+              {

+                  for (L2PcInstance onlinePlayer : pls)

+                  {

+                      if (onlinePlayer.isOnline() && !onlinePlayer.getClient().isDetached() && !_ips.contains(onlinePlayer.getClient().getConnection().getInetAddress().getHostAddress()))

+                      {

+                          for (int i = 0; i < itemId.length; i++)

+                          {

+                              onlinePlayer.addItem("vote_reward", itemId, itemCount, onlinePlayer, true);

+                          }

+                 

+                          _ips.add(onlinePlayer.getClient().getConnection().getInetAddress().getHostAddress());

+                      }

+                  }

+              }

+              _log.info("AutoVoteRewardManager: Reward for votes now!");

+              Announcements.getInstance().announceToAll("Reward for players! Thanks for Vote.");

+              setLastVoteCount(getLastVoteCount() + votesRequiredForReward);

+          }

+               

+          if (getLastVoteCount() == 0)

+          {

+              setLastVoteCount(votes);

+          }

+          else if ((getLastVoteCount() + votesRequiredForReward) - votes > votesRequiredForReward || votes > (getLastVoteCount() + votesRequiredForReward))

+          {

+              setLastVoteCount(votes);

+          }

+             

+          Announcements.getInstance().announceToAll("We have " + votes + " vote(s). Next reward on " + (getLastVoteCount()+votesRequiredForReward) + " vote.");

+          _ips.clear();

+      }

+  }

+     

+  private int getVotes()

+  {

+      URL url = null;

+      InputStreamReader isr = null;

+      BufferedReader in = null;

+      try

+      {

+          url = new URL(http);

+          isr = new InputStreamReader(url.openStream());

+          in = new BufferedReader(isr);

+          String inputLine;

+          while ((inputLine = in.readLine()) != null)

+          {

+              // for top-zone

+              //if (inputLine.contains("<tr><td><div align=\"center\"><b><font style=\"font-size:14px;color:#018BC1;\""))

+              //{

+                //return Integer.valueOf(inputLine.split(">")[5].replace("</font", ""));

+              //}

+             

+              //for hopzone

+              if (inputLine.contains("moreinfo_total_rank_text"))

+                  return Integer.valueOf(inputLine.split(">")[2].replace("</div", ""));

+          }

+      }

+      catch (IOException e)

+      {

+          _log.warning("AutoVoteRewardHandler: "+e);

+      }

+      finally

+      {

+          try

+          {

+              in.close();

+          }

+          catch (IOException e)

+          {}

+          try

+          {

+              isr.close();

+          }

+          catch (IOException e)

+          {}

+      }

+      return 0;

+  }

+     

+  private void setLastVoteCount(int voteCount)

+  {

+      lastVoteCount = voteCount;

+  }

+     

+  private int getLastVoteCount()

+  {

+      return lastVoteCount;

+  }

+  private void load()

+  {

+      int votes = 0;

+      Connection con = null;

+      try

+      {

+          con = L2DatabaseFactory.getInstance().getConnection();

+          PreparedStatement statement = con.prepareStatement("SELECT vote FROM votes LIMIT 1");

+          ResultSet rset = statement.executeQuery();

+

+          while (rset.next())

+          {

+              votes = rset.getInt("vote");

+          }

+          rset.close();

+          statement.close();

+      }

+      catch (Exception e)

+      {

+          _log.log(Level.WARNING, "data error on vote: ", e);

+      }

+      finally

+      {

+          L2DatabaseFactory.close(con);

+      }

+     

+      setLastVoteCount(votes);

+  }

+  public void save()

+  {

+      Connection con = null;

+      try

+      {

+          con = L2DatabaseFactory.getInstance().getConnection();

+          PreparedStatement statement = con.prepareStatement("UPDATE votes SET vote = ? WHERE id=1");

+          statement.setInt(1, getLastVoteCount());

+          statement.execute();

+          statement.close();

+      }

+      catch (Exception e)

+      {

+          _log.log(Level.WARNING, "data error on vote: ", e);

+      }

+      finally

+      {

+          L2DatabaseFactory.close(con);

+      }

+  }

+  public static AutoVoteRewardManager getInstance()

+  {

+      return SingletonHolder._instance;

+  }

+     

+  @SuppressWarnings("synthetic-access")

+  private static class SingletonHolder

+  {

+      protected static final AutoVoteRewardManager _instance = new AutoVoteRewardManager();

+  }

+}

 

Αυτό που σε έχω με κόκκινο μπορείς να το αλλάξεις

Link to comment
Share on other sites

  • 0

eisai mesa sto instancemanager pata panw se ena arxeio dexi click->file-->onoma.java kai pernas ton kodika sou kai sbineis ta +

 

tora gia ta item einai auto edw pou prepei na baleis kapoia item

 

+  private static final String http = "http://l2.hopzone.net/lineage2/moreinfo/L2WorldPvP/74078.html"; <--to link tou server edw

+  private static final int initialCheck  = 1 * 1000; <---asto etsi

+  private static final int delayForCheck = 1800 * 1000; < -- asto etsi

+  private static final int[] itemId    = { 20034, 57 };  <------- to item id

+  private static final int[] itemCount = { 2, 1000 };    <-------- posotita

+  private static final int votesRequiredForReward = 8; <----- ana posa vote

 

 

elpizw na egina katanoitos

Link to comment
Share on other sites

  • 0

+  private static final int[] itemCount = { 2, 1000 };    <-------- posotita

to 2 ine oti tha dini 2 items i 1000?

 

Το 2 είναι ότι θα δίνει 2 items με id 20034 και το 1000 για id 57.

Link to comment
Share on other sites

  • 0

+  private static final int initialCheck  = 1 * 1000;

+  private static final int delayForCheck = 1800 * 1000;

+  private static final int[] itemId    = { 20034, 57 };

+  private static final int[] itemCount = { 2, 1000 };

eksigiseto mou piz den katalaba mafou to2 den items ton adena id 1000

+  private static final int votesRequiredForReward = 8;

 

+  private static final int[] itemId    = { 20034, 57 };

+  private static final int[] itemCount = { 2, 1000 };ti kanoune diladito 2 dini 1000 adena kai to 57 20034 item?

Link to comment
Share on other sites

  • 0

+  private static final int initialCheck  = 1 * 1000;

+  private static final int delayForCheck = 1800 * 1000;

+  private static final int[] itemId    = { 20034, 57 };

+  private static final int[] itemCount = { 2, 1000 };

eksigiseto mou piz den katalaba mafou to2 den items ton adena id 1000

+  private static final int votesRequiredForReward = 8;

 

+  private static final int[] itemId    = { 20034, 57 };

+  private static final int[] itemCount = { 2, 1000 };ti kanoune diladito 2 dini 1000 adena kai to 57 20034 item?

 

Κοίτα πως παν τα χρώματα. Εννοώ ότι θα δώσει 2 items με id 20034 kai 1000 με id 57(id 57=adena).

 

Link to comment
Share on other sites

  • 0

καλημερα καταρχην  να σε ρωτήσω και κάτι ακόμη δες εδώ 

Announcements.getInstance().announceToAll("Vote on http://L2TopZone.com");

private static final String http = "http://l2.hopzone.net/lineage2/moreinfo/L2WorldPvP/74078.html";

για hopzone εχει το link  αλλα για topzone δεν έχει δηλαδή μολις εγω ανεβασω τον server topzone θα το βαλο ετσι

http://L2TopZone.com/lineage2/moreinfo/L2WorldPvP/74078.html πχ.

Link to comment
Share on other sites

  • 0

Ναι και θα φαίνεται κάπως έτσι:

 

private static final String http = "http://L2TopZone.com/lineage2/moreinfo/L2WorldPvP/74078.html";

Link to comment
Share on other sites

  • 0

help ligo den katalaba pesmou ligo kapios

 

+  private static final int[] itemId    = { 20034, 57 };

+  private static final int[] itemCount = { 2, 1000 };

to 20034 ine id item e kai tha dosi 2 kai to 1000 tha dosi 1000 adena?

Link to comment
Share on other sites

  • 0

+  private static final int[] itemId    = { 20034, 57 }; ( Εδώ σου έχει τα ID από αυτά που θες να δίνεις, αν θες τα αλλάζεις )

+  private static final int[] itemCount = { 2, 1000 };  ( Εδώ σου έχει το πόσα να δίνει, π.χ "με ID 20034 θα δίνει 2 " " με ID 57 θα δίνει 1000.

 

Link to comment
Share on other sites

  • 0

kai kati akomi afto edo

+Announcements.getInstance().announceToAll("Vote on http://l2.hopzone.net/lineage2/moreinfo/L2WorldPvP/74078.html";");etsi i etsi

+  private static final String http= "http://l2.topzone.com/lineage2/moreinfo/L2WorldPvP/74078.html";")

+  private static final String http = "http://l2.hopzone.net/lineage2/moreinfo/L2WorldPvP/74078.html";

 

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...