Авто выдача бонуса.
У меня возникла проблема с авто-выдачей бонуса L2Top.
Сборка: Madden Project на основе Фениксов. Суть проблемы: Ошибка в ГС что не правильный ключ. Сама ошибка: Цитата:
Цитата:
|
Re: Авто выдача бонуса.
Up.... =((((
|
Re: Авто выдача бонуса.
возможно етот менедреж под старые сылки л2топа...
|
Re: Авто выдача бонуса.
мейби а сайт не кто не знает этой тимы что бы исходы норм скачать? а то заходил на их сайт который указан при запуске сервер он в оффлайне :((
|
Re: Авто выдача бонуса.
Скрипт проверил сылка указана нормально.
|
Re: Авто выдача бонуса.
Скиньте в ПМ ссылку на свою статистику.
Добавлено через 51 минуту Сверь.. package services; import l2p.Config; import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.SQL.ResultSet; import java.SQL.SQLException; import java.SQL.TIMESTAMP; import java.util.logging.Logger; import java.util.concurrent.ScheduledFuture; import java.net.URL; import l2p.common.ThreadPoolManager; import l2p.DATABASE.FiltredPreparedStatement; import l2p.DATABASE.L2DatabaseFactory; import l2p.DATABASE.ThreadConnection; import l2p.extensions.scripts.Functions; import l2p.extensions.scripts.ScriptFile; import l2p.gameserver.model.L2ObjectsStorage; import l2p.gameserver.model.L2Player; import l2p.util.Rnd; public class VoteManager extends Functions implements ScriptFile { /* * (c) Ro0TT */ private static Logger log = Logger.getLogger(VoteManager.class.getName()); private static ScheduledFuture<?> _startTask; TIMESTAMP _lastVote; private String urlS = ""; public class StartTask implements Runnable { public void run() { while (Config.L2VOTEMANAGER_ENABLE) { try { URL url = NEW URL(urlS); parse(url.openStream()); } catch(Exception e) { log.warning("VoteManager: Error url parse."); } try { Thread.sleep(Config.L2VOTEMANAGER_TIME); } catch(InterruptedException e) { e.printStackTrace(); } } } } public void onShutdown() { } public void onLoad() { try { ThreadConnection con = L2DatabaseFactory.getInstance().getConnection(); FiltredPreparedStatement stm = con.prepareStatement("select max(votedate) from character_votes"); ResultSet r = stm.executeQuery(); IF(r.NEXT()) _lastVote = NEW TIMESTAMP(r.getLong(1) * 1000); IF (_lastVote==NULL) { _lastVote = NEW TIMESTAMP(0); } r.close(); stm.close(); con.close(); } catch(SQLException e) { log.warning("VoteManager: Error connection to database: "+e); } urlS = "http://l2top.ru/editServ/?adminAct=lastVotes&uid=" + Config.L2TOP_ID + "&key=" + Config.L2TOP_KEY; _startTask = ThreadPoolManager.getInstance().scheduleGeneralAtFixedRate(NEW StartTask(), 1, 1); } public void onReload() { _startTask.cancel(TRUE); onLoad(); } public void parse(InputStream IS) throws Exception { BufferedReader reader = NEW BufferedReader(NEW InputStreamReader(IS,"windows-1251")); String line; INT votes = 0; TIMESTAMP LAST = _lastVote; while((line=reader.readLine()) != NULL) { IF (line.indexOf("\t") != -1) { TIMESTAMP voteDate = TIMESTAMP.valueOf(line.SUBSTRING(0,line.indexOf("\t")).TRIM()); IF (voteDate.after(_lastVote)) { IF(voteDate.after(LAST)) LAST = voteDate; String charName = line.SUBSTRING(line.indexOf("\t")+1).toLowerCase(); Store(charName, voteDate); votes++; } } } _lastVote = LAST; log.info("VoteManager: "+votes+" processed"); } public void reward(L2Player player) { IF(player != NULL) { player.getInventory().addItem(Config.L2VOTEMANAGER_REWARD_ID, Config.L2VOTEMANAGER_REWARD_KEY); IF (player.isOnline()) player.sendMessage("Спасибо, что проголосовали за наш сервер!"); player.store(TRUE); } } public void Store(String _charName, TIMESTAMP _votedate) { try { ThreadConnection con = L2DatabaseFactory.getInstance().getConnection(); FiltredPreparedStatement stm = con.prepareStatement("insert into character_votes select ?,? from characters where not exists(select * from character_votes where votedate=? and charName =?) limit 1"); stm.setLong(1, _votedate.getTime()/1000); stm.setString(2, _charName); stm.setLong(3, _votedate.getTime()/1000); stm.setString(4, _charName); BOOLEAN sendPrize = stm.executeUpdate() > 0; stm.close(); IF (sendPrize) { L2Player player = L2ObjectsStorage.getPlayer(_charName); IF(player != NULL) reward(player); } } catch (SQLException e) { log.warning("VoteManager: Error storing data "+e); } } } |
Re: Авто выдача бонуса.
Поставил этот скрипт пошли ошибки.
Цитата:
До этого стоял вот такой: Код HTML:
package services; |
Текущее время: 03:51. Часовой пояс GMT +3. |
Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot