Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Помогите переделать проверку! Пожалуйста!
#1
PHP код:
<?php 
else if (playerInstance.getKarma() > 0)
{
htmContent = HtmCache.getInstance().getHtm(htmlPath+"Karma.htm");
if (
htmContent != null)
npcHtmlMessage.setHtml(htmContent);
}

Это проверка на Карму при регистрации на ТвТ.

То что тут проверяет и по какому принципу мне понятно...

Вопрос вот в чем... как сделать проверку на IP адрес.

Т.е. посмотреть все IP которые уже зарегистрировались
Сравнить их с IP того кто пытается зарегистрироваться.

Если есть такой IP среди зарегистрированных то вывести
PHP код:
<?php 
HtmCache
.getInstance().getHtm(htmlPath+"IP.htm");

Если такого нету, то пропустить дальше.

Помогите мои мысли перевоплотить в священный Java кодSmile

Добавлено через 51 минуту
PHP код:
<?php 
if (!Config.ALT_OLY_SAME_IP)
{
String _playerOneIp = _playerOne.getClient().getConnection().getInetAddress().getHostAddress();
String _playerTwoIp = _playerTwo.getClient().getConnection().getInetAddress().getHostAddress();
if (
_playerOneIp.equals(_playerTwoIp))
{
String classed = "no";
switch (
_type)
{
case
CLASSED:
classed = "yes";
break;
}
if (
Config.ALT_OLY_LOG_FIGHTS)
{
LogRecord record = new LogRecord(Level.INFO, _playerOneName + " default");
record.setParameters(new Object[] { _playerOneName, _playerTwoName, 0D, 0D, 0, 0, "same ip", 0, classed });
_logResults.log(record);
}
_playerOne.sendMessage("Match aborted due to same ip-address of your enemy.");
_playerTwo.sendMessage("Match aborted due to same ip-address of your enemy.");
_aborted = true;
clearPlayers();
}
}

Немного порывшись нашел вот такую проверку на IP в олимпиаде.
Ответ
#2
Выводи методы туда куда тебе надо (в твт), и делай по аналогии как в олимпе, только учти что там не 1н плеер Wink
Тут минимум знания англ языка + знание структуры сервера + немного копипаста ну и + импровизация Smile
Ответ
#3
Ну то, что там для 2-х это понятно... не понятно как это сделать для н-ного количества... для всей массы....
Ответ
#4
Сборка какая? :obamafacepalm: Введите уже меры наказания за не указание сборки...)
Ответ
#5
L2open, GF, 690.
Ответ
#6
Не знаю эту сборку, в общем суть в том, что в эвентах есть массив игроков, типо:
GArray<L2Player> players;

Или массив двух команд, но суть не этом... При регистрации проходим по всему массиву и проверяем наличие такого же IP как и у игрока:

[src=java]
String IPRegPlayer = regPlayer.getClient().getConnection().getInetAddress().getHostAddress(); //Получаем IP адрес игрока, который регистрируется
for(L2Player pl : players)
if (pl!=null)
if(pl.getClient().getConnection().getInetAddress().getHostAddress().equals(IPRegPlayer)) //получаем IP адрес каждого игрока, который уже зарегестрирован на эвенте, если нашли - запрещаем регистрацию.
{
regPlayer.sendMessage("Совпадение IP адресса, вы не можете зарегестрироваться на эвенте");
return;
}[/src]

Дальше сам... ничего сложного в этом нет.
Ответ
#7
Спасибо большое! Буду тестить.

Добавлено через 23 минуты
Код:
String IPRegPlayer = [color=Red]playerInstance[/color].getClient().getConnection().getInetAddress().getHostAddress(); //Получаем IP адрес игрока, который регистрируется
for([color=Red]L2Character[/color] pl : players)
    if (pl!=null)
        if(pl.getClient().getConnection().getInetAddress().getHostAddress().equals(IPRegPlayer)) //получаем IP адрес каждого игрока, который уже зарегестрирован на эвенте, если нашли - запрещаем регистрацию.
        {
            [color=Red]playerInstance[/color].sendMessage("Совпадение IP адресса, вы не можете зарегестрироваться на эвенте");
            return;
        }

По идеи так... Логика есть?Smile
Ответ
#8
Либо L2Player либо L2PcInstance. "playerInstance" - это лишь название переменной.
Ответ
#9
Код:
String IPRegPlayer = [color=Red]L2PcInstance[/color].getClient().getConnection().getInetAddress().getHostAddress(); //Получаем IP адрес игрока, который регистрируется
for([color=Red]L2Character[/color] pl : players)
    if (pl!=null)
        if(pl.getClient().getConnection().getInetAddress().getHostAddress().equals(IPRegPlayer)) //получаем IP адрес каждого игрока, который уже зарегестрирован на эвенте, если нашли - запрещаем регистрацию.
        {
            [color=Red]L2PcInstance[/color].sendMessage("Совпадение IP адресса, вы не можете зарегестрироваться на эвенте");
            return;
        }

Тоесть конечный результат вот такой?
Ответ
#10
О боже.. :facepalm:, ты сам-то слушал это?

[src=java]
String IPRegPlayer = regPlayer.getClient().getConnection().getInetAddress().getHostAddress(); //Получаем IP адрес игрока, который регистрируется
for(L2PcInstance pl : players)
if (pl!=null)
if(pl.getClient().getConnection().getInetAddress().getHostAddress().equals(IPRegPlayer)) //получаем IP адрес каждого игрока, который уже зарегестрирован на эвенте, если нашли - запрещаем регистрацию.
{
regPlayer.sendMessage("Совпадение IP адресса, вы не можете зарегестрироваться на эвенте");
return;
}[/src]
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Ребята помогите с логин и геймом Lackyjack 4 2,166 04-04-2018, 05:46 PM
Последний пост: MasVild
  Помогите переписать скрипт с Python на Java Virrilis3 0 1,658 03-29-2018, 10:55 PM
Последний пост: Virrilis3
  Помогите со сборкой lostworld HF voland3 1 2,344 03-22-2018, 12:54 AM
Последний пост: Kampina
  подскажите пожалуйста kasper 12 3,486 01-27-2016, 06:22 AM
Последний пост: finfan
  Помогите со скриптом Mazahacka 0 1,264 07-29-2015, 10:26 PM
Последний пост: Mazahacka
  Сервер RusTeam rev1269 Хроники C5 [Помогите найти] s4nders 0 1,152 03-13-2015, 09:21 AM
Последний пост: s4nders
  Помогите скомпилить cool235 1 1,574 01-04-2015, 09:03 PM
Последний пост: Rolfer
  Оверлорд докаст скилов - помогите настроить Munhgauzen 15 4,284 01-11-2014, 08:04 AM
Последний пост: DiagoD
  Оверлорд помогите насторить Hide - офлайк Munhgauzen 3 1,697 12-22-2013, 01:53 AM
Последний пост: Munhgauzen
  Помогите прикрутить код wakepower 22 7,630 12-08-2013, 10:19 AM
Последний пост: alextt1989

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)