Перейти к содержанию

Saltfire

Постоялец
  • Публикаций

    642
  • Зарегистрирован

  • Посещение

  • Победитель дней

    31

Весь контент Saltfire

  1. $users = 101; $users = !$users ? 1 : $users; $users = (int)($users * 2 >= 10 ? ($users * 2) * 0.7 : $users * 2); var_dump($users); //141 function GetUsersOnline() { $online = 'online.txt'; $maxOnline = 'maxonline.txt'; $realOnline = 'realonline.txt'; $timeout = 150; if (!is_file($online) || (time() - fileatime($online)) > $timeout) { clearstatcache(); $sessPsth = session_save_path(); $sessTime = 60 * 3; if (($sess = scandir($sessPsth))) { $users = 0; foreach ($sess as $ses) { if ((time() - fileatime($sessPsth . '/' . $ses)) < $sessTime) { $users++; } } file_put_contents($realOnline, $users); $users = !$users ? 1 : $users; $users = $users * 2 >= 10 ? ($users * 2) * 0.7 : $users * 2; $max = 0; if (is_file($maxOnline)) { $max = (int) file_get_contents($maxOnline); } if (file_put_contents($online, (int) $users, LOCK_EX)) { touch($online, time()); if ($max < $users) { file_put_contents($maxOnline, (int) $users, LOCK_EX); touch($maxOnline, time()); } return $users ? (int) $users : 1; } } } else { $online = (int) file_get_contents($online); return $online ? $online : 1; } }
  2. Ты серьезно, то что я сделаю за 2-3 дня, покупать? Я просто не хотел и даже не думал, терять время, на то, что уже давно есть. Хотелось получить максимальный профит от долгожителей этого форума. Всем спасибо, помощь больше не требуется.
  3. Есть возможность скинуть в личку или суда? Буду весьма благодарен. А то беда, не найдешь все уже то удалено, то не открывается. На максе меня нет, да и там нужно много сидеть, чтобы что-то можно было скачать, а это не наруку.
  4. Все это пальцем в небо. Годный пример есть?
  5. Нужно при нажатии кнопки, открывать браузер который по умолчанию у пользователя стоит, а не в клиенте открывать страницу. Выше интерлюда хроники не рассматриваю. Но как понял, тут такой возможности нет и никогда не было?
  6. Не написал хроники, тут intelude.
  7. Ситуация следующая, требуется по кнопке открывать сайт. Так как в UE4 появилось LaunchURL, а в UE3 такого я так понял нет? Вообще ничего подобного нет? Я вкусах, что можно забиндить свою dll, свернуть в этот момент игру и запустить браузер по умолчанию с нужным адресом. Но все-же, может кто-то знает, может в самом клиенте есть уже такая dll, где есть метод открытия? Или не додумались сделать такую фитчу?
  8. Saltfire

    Хиро Скилы

    Ага и учитывая аудиторию "и их хочу", иногда кажется, что мы с разных планет.
  9. Какое гео, какое гето? Какие лс, вк? Что за каша в твоей голове. Наркоман какой-то.
  10. @aleksichenk, какое гео? Пощади от своего мерзопакостного флуда, не надрывай свой маленький мозг.
  11. Ну если тебя обидело, извини. Но я тебе дал решение. А там реши для себя сам, искать дальше или же, воспользоваться моим советом.
  12. В L2DatabaseFactory.java - говорит, что нет get(). А там и не будет его, откуда ему там взяться? Как вы в notepadd++ можете, что -то понимать, когда у вас 0 опыта в программировании. Без Визуальной среды для программирования, увидеть ошибку и понять ее для вас будет почти не возможным, так как вы даже не хотите ее читать и переводить, а там хотя-бы подсвечивает и можно найти нужный метод, который возможно имелось ввиду L2DatabaseFactory.getInstance().getConnection(). А не как используется у вас: L2DatabaseFactory.get() - возможно кто-то менял это где-то у себя и так и оставил.
  13. Saltfire

    Maven компиляция

    Объяснять то, что разжёвано миллион раз, не имеет никакого смысла. таков тут порядок, помогаем флудом =) Ты на столько трудный, что не понимаешь. что GIT это для сборки GIT, а не для компиляции. Дожились... Ну скачай ты уже NETBEANS или ECLIPSE да что угодно и радуйся нажатием 1 кнопки для компиляции. Это же так просто.
  14. Saltfire

    Maven компиляция

    Я о том, чтобы ты открыл среду разработки IDE. А он открыл переменные среды, совсем одинаково.
  15. Saltfire

    Maven компиляция

    О боге. Открой среду и не ломай себе мозги.
  16. На форуме запрещено 4.7. Размещение сообщений в старых темах, потерявших актуальность. Наказание: Расценивается как флуд. Во поржал....
  17. Теперь на секундочку задумайся, о чем ты пишешь вообще. Меня блевать тянет от такого: private void load() { Connect con = null; PreparedStatement statement = null; ResultSet rs = null; try { con = L2DatabaseFactory.get(); con.setTransactionIsolation(1); statement = con.prepareStatement("SELECT * FROM auction WHERE id = ?"); statement.setInt(1, getId()); rs = statement.executeQuery(); while (rs.next()) { _currentBid = rs.getInt("currentBid"); _endDate = rs.getLong("endDate"); _itemId = rs.getInt("itemId"); _itemName = rs.getString("itemName"); _itemObjectId = rs.getInt("itemObjectId"); _itemType = rs.getString("itemType"); _sellerId = rs.getInt("sellerId"); _sellerClanName = rs.getString("sellerClanName"); _sellerName = rs.getString("sellerName"); _startingBid = rs.getInt("startingBid"); } loadBid(); } catch (Exception e) { System.out.println("Exception: Auction.load(): " + e.getMessage()); e.printStackTrace(); } finally { Close.CSR(con, statement, rs); } } Это ваш хваленный pw. Взял просто первый попавшийся на A файл, где есть соединения с базами и т.д. Ужас-н*х. Такое на каждом ходу. Куда не глянь, кругом костыли - прям сплошная... А это я уже сделал давно взятый acis, От которого ничего не осталось. private void load() { Mysql.cycle(Sql.AUCTION, auction -> { currentBid = auction.getInteger("currentBid"); endDate = auction.getLong("endDate"); itemId = auction.getInteger("itemId"); itemName = auction.getString("itemName"); sellerId = auction.getInteger("sellerId"); sellerClanName = auction.getString("sellerClanName"); sellerName = auction.getString("sellerName"); startingBid = auction.getInteger("startingBid"); }, auctionId); loadBid(); } Дальше поехали... Вечная передача Player в методы в виде аргументов, зачем? Это типо себя, себе же и передаешь, чтобы сверять ты или нет? угу, еще же нужно постоянно на null проверять, а то мало ли. С каждым открытием файла, вечная мука с тонной строк кода, бесконечным копипастом и вечными проверками instanceof или не instanceof, а потом еще и приведения одно к другому копирующие друг друга функции с 1 измененной строкой или объектом, числом. В дата-паке, а там тьма. А с каждой открытой папкой, бездна - без - дна. Битком вечно забитый кешь, который ну прям вообще непонятно зачем все грузит сразу, может быть там никто никогда не будет, а заталкивается все что нужно и не нужно. никакой логики, сплошной копипаст. В завершение, так - как не намерен терять на это больше время, на не-до админов и троллей. Заказывайте дальше топ проекты за 20к. Желаю успехов и процветания!
  18. Ну сразу видно, знаток! Куда-же мне до вас то ребятки.
  19. Saltfire

    Координаты на TvT

    TvtBorder - это можно груба назвать WayPoints, некий Path - который проложит зону, обводка территории для зоны проведения события. TvtBorderZ - это уже вершина. то есть минус - это минимальная точка, на которую можем спуститься, а плюс это максимальная, на которую можем подняться.
  20. Смотря, из - за чего это происходит и что это за текст, он из dat клиента или он на сервере или он в датапаке. Берешь какой-нибудь Folder Find Text - ищет все, что хочешь и где хочешь. Пишешь туда просто "Вы что, самоубийца?" И поиск жмем, там все увидишь, где, что и какие файлы этот текст могут использовать. Ну, а там уже отталкивайся от них дальше. Какое-то событие происходит в этот момент и показывает текст. Либо как например на осадах, нельзя использовать телепорт в этот город и в целом во все регионы данной локации, примерно смысл один и тот-же. По поводу, того, что если в датке текст например, то искать придется в SystemMessageId,java там будут все констраты.
  21. Если в базе teleports то и droplist тоже там-же, скорее всего.
  22. Скорее всего находится "/в папке с сервером/data/xml/teleports.xml": <teleport <!-- это и есть "goto 1" --> id="1" <!-- loc_* --> loc_x="-12672" loc_y="122776" loc_z="-3116" <!-- количество аден --> price="100" <!-- 0 - значит для всех, 1 - только для баронов, нублесс. --> fornoble="0" /> Ну или что - то, подобное. так как в L2TeleporterInstance.java -> onBypassFeedback, onBypass, etc...: if (command.startsWith("goto")) { if (condition == COND_REGULAR || condition == COND_OWNER) { doTeleport(player, chat); } } А уже в L2TeleporterInstance.java -> doTeleport: final L2TeleportLocation list = TeleportLocationTable.getInstance().getRegion(val); Ну собственно после многочисленных проверок, приходим player.teleToLocation(list.getLocX(), list.getLocY(), list.getLocZ(), 20); То есть, после передачи goto 1 мы лезем в xml и смотрим этот ид, а дальше берем координаты, цену, с нублесом. Так как в TeleportLocationTable.java, как раз собирает эти xml и делает в нужные регионы, чтобы легко можно было сразу дернуть нужный по id. bypass -h npc_%objectId%_ - вот это собирается в итоге в NpcHtmlMessage непонятно зачем. (лучше собирать все до, чем непонятно, что на этапе сбора будет после, когда начнем промацывать, как насобирает, намешает) Я таких никогда не понимал, которые пытаются вычислять строки и длину, через циклы и т.д., когда можно было сделать просто банальную функцию, которая положит все нам в список, а дальше оперируй, как хочешь. public static List<String> cmd(final String cmdFullString) { final List<String> list = new ArrayList<>(); list.addAll(Arrays.asList(cmdFullString.split(" "))); return list; } И размер и все можешь спокойно узнать и удалить любой индекс без каких либо проблем и сделать любой фильтр, чтобы получать корректные байпасы. Ну и конечно же после нужных манипуляций со списком: final boolean isCmd = switch(cmd.length) { case 1 -> true; case 2 -> false; default -> false; }; if(isCmd) { //correct } Ну это конечно просто пример, задача лишь собирать корректные и правильные байпасы.
  23. Сам понял то, что сказал? Сначала прочти, что такое фэншуй.
×
×
  • Создать...