Вернуться   CoderX :: Forums > Lineage II > L2PacketHack > Скриптинг
Войти через OpenID

Скриптинг Форум посвещенный созданию скриптов для L2PacketHack

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 18.02.2011, 17:05   #11
Новичок
 
Регистрация: 16.02.2011
Сообщений: 15
Сказал Спасибо: 7
Имеет 3 спасибок в 3 сообщенях
TEHb пока неопределено
По умолчанию Разбор пакета Е3

Собственно вот и сам разбор пакета E3 от меня любимого потом надо будет продублировать наверное в разделе пакеты

итак имеем

E3 57 80 80 8B D1 F0 08 7B 2C 3D 09 54 01 00 00 05 00 6A 86 DD 0A 30 00 00 00 00 00 00 00 49 87 DD 0A 30 00 00 00 00 00 00 00 D3 D6 18 0A 10 00 00 00 00 00 00 00 DC D6 18 0A 10 00 00 00 00 00 00 00 D9 D6 18 0A 30 00 00 00 00 00 00 00

E3 57 80 80 8B D1 F0 08 7B 2C 3D 09 54 01 00 00 05 00 6A 86 DD 0A 27 00 00 00 00 00 00 00 49 87 DD 0A 27 00 00 00 00 00 00 00 D3 D6 18 0A 10 00 00 00 00 00 00 00 DC D6 18 0A 10 00 00 00 00 00 00 00 D9 D6 18 0A 30 00 00 00 00 00 00 00


E3 57 80 80 8B D1 F0 08 - эта часть у всех пакетов всегда одинакова, так что ее расшифровать мне никак (не проверял с другими чарами)
7B 2C 3D 09 54 01 00 00 - это я так понимаю что производиться реально меняется только один байт (7В на 7С или 7D зависит от того что делаю какой заказ)
05 00 - количество расходуемых ресурсов для производства
6A 86 DD 0A - 1 ресурс в моем случае квест предмет "запечатан адамантитовый стержень")
30 00 00 00 00 00 00 00 количество 1 ресурса в рюкзаке на момент старта производства (думаю используется только число в 4 байта зачем остальные 4 которые 00 понятия не имею огромного количества ресурсов не покупал)
49 87 DD 0A - 2 ресурс квест-итем "Большая адамантитовая пластина"
30 00 00 00 00 00 00 00 количество 2 ресурса в рюкзаке
D3 D6 18 0A - 3 ресурс Цирконевый порошок
10 00 00 00 00 00 00 00 - количество 3 ресурса
DC D6 18 0A - 4 ресурс Ададмантитовый провод
10 00 00 00 00 00 00 00 -количество 4 ресурса
D9 D6 18 0A - 5 ресурс Смазка
30 00 00 00 00 00 00 00 - количество 5 ресурса

Собственно в окне производства 2 кнопки для старта
изготовить все
изготовить указанное католичество
так и два пакета Е3 которые я выложил они полностью одинаковы что изготовить все что изготовить только 1.
Есть мысль что клиент шлет еще какую то информацию через другие пакеты которые я не отслеживаю например пакет 44 он идет слишком часто и разного размера
TEHb вне форума   Ответить с цитированием
Старый 18.02.2011, 22:33   #12
Местный
 
Аватар для Nickers
 
Регистрация: 23.11.2009
Сообщений: 574
Сказал Спасибо: 134
Имеет 117 спасибок в 82 сообщенях
Nickers пока неопределено
По умолчанию

Не пойму тут ведь по 4 байта нада брать? Или в Айон по другому?
По идее если тут одни числа в Dword, то они пачками идут
E3(ид) 57 80 80 8B(аццкое число) и т.д....

Так а на какое действие это пакет? (Подробненько)
И какие там еще пакеты меняющиеся отправлять нада?

А то скрипт без этого не написать)) Я прост сам в Айон не играю))
__________________
Пишу что думаю, но ничего не знаю...
[LameGuard|Скрипты l2phx]
Nickers вне форума   Ответить с цитированием
Старый 18.02.2011, 22:54   #13
Новичок
 
Регистрация: 16.02.2011
Сообщений: 15
Сказал Спасибо: 7
Имеет 3 спасибок в 3 сообщенях
TEHb пока неопределено
По умолчанию

Цитата:
Сообщение от Nickers Посмотреть сообщение
Не пойму тут ведь по 4 байта нада брать? Или в Айон по другому?
По идее если тут одни числа в Dword, то они пачками идут
E3(ид) 57 80 80 8B(аццкое число) и т.д....

Так а на какое действие это пакет? (Подробненько)
И какие там еще пакеты меняющиеся отправлять нада?

А то скрипт без этого не написать)) Я прост сам в Айон не играю))
Короче этот пакет производит заказ этот квест можно брать, потенциально, бесконечно.
Суть в том что пакет Е3 запускает производство квестового предмета, который в конце сдается

все, что меняется это количество оставшихся итемов в рюкзаке при посылке, но можно и не менять все равно работает, если слать самый первый пакет постоянно.
Работает, если обычной посылкой послать, а в скрипте дисконнект.

Добавлено через 2 минуты
если с задержками производство получиться перейду к написанию взятия и сдачи квеста они и так работали, по крайней мере, взятие и покупка итемов

Последний раз редактировалось TEHb, 18.02.2011 в 22:59. Причина: Добавлено сообщение
TEHb вне форума   Ответить с цитированием
Старый 19.02.2011, 00:23   #14
Местный
 
Аватар для J-Fobos
 
Регистрация: 09.06.2008
Сообщений: 867
Сказал Спасибо: 175
Имеет 468 спасибок в 259 сообщенях
J-Fobos пока неопределено
По умолчанию

Попробую подвести итог.
Нам надо написать скрипт, которой автоматизирует следующие действия:
1) Произвести некоторое количество итемов (пакетом Е3)
2) Сдать произведенные итемы
3) При нехватке итемов покупать их

Все правильно?
__________________

В любом из нас спит гений. И с каждым днем все крепче.

Переходим на протокол нового поколения jabber
J-Fobos вне форума   Ответить с цитированием
Старый 19.02.2011, 10:26   #15
Новичок
 
Регистрация: 16.02.2011
Сообщений: 15
Сказал Спасибо: 7
Имеет 3 спасибок в 3 сообщенях
TEHb пока неопределено
По умолчанию

Цитата:
Сообщение от J-Fobos Посмотреть сообщение
Попробую подвести итог.
Нам надо написать скрипт, которой автоматизирует следующие действия:
1) Произвести некоторое количество итемов (пакетом Е3)
2) Сдать произведенные итемы
3) При нехватке итемов покупать их

Все правильно?
Нет, что касается алгоритма, то он следующий:
1. Взять задание (у меня записаны 3 пакета)
2. купить необходимое число итемов для производства (2 пакета)
3. Произвести квест итемы (пакет Е3 можно С9 В5 Е3 первые два выбирают станок производства в цель)
4. Сдать задание
ну и дальше по кругу.

Собственно я с производством уже справился, но на моем сервере уже появился фикс - нельзя брать задания далеко от персонажа,
сразу тюрьма.
Так что теперь, мой скрипт сильно усложниться, но я думаю дальше справлюсь. Спасибо всем за помощь думаю тему можно закрыть.

К стати, а почему нельзя использовать DELAY(1000)? Где об этом можно прочесть?

ЗЫ: Я выложу получившийся скрипт чуть позже, если кому надо.

Последний раз редактировалось TEHb, 19.02.2011 в 10:33.
TEHb вне форума   Ответить с цитированием
За это сообщение TEHb нажился спасибкой от:
Старый 19.02.2011, 11:34   #16
Местный
 
Аватар для Nickers
 
Регистрация: 23.11.2009
Сообщений: 574
Сказал Спасибо: 134
Имеет 117 спасибок в 82 сообщенях
Nickers пока неопределено
По умолчанию

Нуууу вооот)) Ну скритпег легкий сам по себе...
Делэй вроде фризит клиент, если не ошибаюсь... Лучше таймеры)
Удачи.

//J-Fobos: Правильно, DELAY создает задержку для всего трафика, когда задействован DELAY никакие пакеты не проходят.
__________________
Пишу что думаю, но ничего не знаю...
[LameGuard|Скрипты l2phx]

Последний раз редактировалось J-Fobos, 19.02.2011 в 12:47.
Nickers вне форума   Ответить с цитированием
За это сообщение Nickers нажился спасибкой от:
Старый 19.02.2011, 12:53   #17
Местный
 
Аватар для J-Fobos
 
Регистрация: 09.06.2008
Сообщений: 867
Сказал Спасибо: 175
Имеет 468 спасибок в 259 сообщенях
J-Fobos пока неопределено
По умолчанию

Создаем таймер, начальное значение TimerCyrcle задаем 1, доделываем код и вставляем его в событие таймера.
Код:
case TimerCyrcle of

1: Begin 
buf:=HStr('00 00 00 00 00 00'); //первый пакет на задание
SendToServerEx(name);
end;

2: Begin 
buf:=#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00; //второй пакет на задание (для примера пишу в таком виде)
SendToServerEx(name);
end

3: Begin 
buf:=HStr('00 00 00 00 00 00'); //третий пакет на задание
SendToServerEx(name);
end;

4: Begin 
buf:=HStr('00 00 00 00 00 00'); //покупаем итемы 1-й пакет
SendToServerEx(name);
end;

5: Begin 
buf:=HStr('00 00 00 00 00 00'); //покупаем итемы 2-й пакет
SendToServerEx(name);
end;

6..9: Begin 
buf:=HStr('00 00 00 00 00 00'); //пару раз отсылаем пакет на производство
SendToServerEx(name);
end;

//ну и так далее, думаю суть понятна)

else begin
TimerCyrcle:=0;
end;
end;
Inc(TimerCyrcle2);
end;
__________________

В любом из нас спит гений. И с каждым днем все крепче.

Переходим на протокол нового поколения jabber
J-Fobos вне форума   Ответить с цитированием
За это сообщение J-Fobos нажился 2 спасибками от:
Старый 20.02.2011, 11:10   #18
Новичок
 
Регистрация: 16.02.2011
Сообщений: 15
Сказал Спасибо: 7
Имеет 3 спасибок в 3 сообщенях
TEHb пока неопределено
По умолчанию НОВАЯ ИДЕЯ ))))

В общем с case ... of идея ясна и спасибо я уже сказал

а delаy на маленьких задержках (соизмеримых с ПИНГом) я думаю можно использовать, именно так мой скрипт первый раз заработал.
и к стати фриз действительно есть, но меня он не напрягает ибо мне пофиг так как я в это время ни чего не делаю.

Теперь у меня мелькнула идея написать скрипт который будет записывать все пакеты(определенного типа) по очереди по команде из чата

микро обучаемый пакетный БОТ так сказать. Единственная проблема на текущий момент это как засечь время между приходами пакетов.
Алгоритм такой:

1. Ждем с чата команду (например когда я напишу 1)
2. Если пакет от сервера или клиента соответствует необходимому типу
записать его в массив действий (и тут то как раз необходимо запомнить время прихода пакета)
3. и так далее пока не появиться в чате другая команда означающая окончание записи пакетов

4. если пришла третья команда из чата запустить выполнение всех записанных команд по очереди с их же интервалами и плюс небольшой 10% запас, и все это бесконечно

ЗЫ: Думаю я тут не оригинал но так можно записать выполнение тьма квестов. Есть конечно еще одна маленькая проблемка это, то что я не нашел способа сохранять логи на жесткий диск и вообще не смог работать с файлами. Думаю эту проблему поможет решить DLL с функциями работы с файлами.

Если я решу писать такой скрипт мне отдельную ветку создавать?

Ну и еще насчет отсчета времени собственно решение, я думаю, что нашел
создаю таймер устанавливаю интервал 1 (лучше 10 ибо точность особо не важна и меньше я думаю лагать будет) в теле таймера inc(i), ну и по приходу считываю эту самую i и обнуляю

только вот может таймер и сам считает время(я практически в этом уверен) нужно лишь считать некую переменную, структуру класса не помню. ((((

Последний раз редактировалось TEHb, 20.02.2011 в 12:17. Причина: Прозрение
TEHb вне форума   Ответить с цитированием
Старый 20.02.2011, 12:06   #19
Новичок
 
Регистрация: 16.02.2011
Сообщений: 15
Сказал Спасибо: 7
Имеет 3 спасибок в 3 сообщенях
TEHb пока неопределено
По умолчанию

Вот и сам скрипт как я и обещал только чейчас он уже не работает там где стоит фикс (нельзя брать задания стоя далеко от NPC) таким образом его придется модифицировать чтобы чар бегал брал задания рядом с NPC мне с этим лень было заморачиваться может моя новая идея все упростит.

Код:
var i,j,k,a:integer;
start,mission1,work:boolean;
MissionArr:Array [0..3] of string;
SendBufArr:Array [0..16] of string;
procedure Init; //Вызывается при включении скрипта
begin
    i:=0;    j:=1;   a:=0;   k:=0; 
    start:=false;
    Mission1:=false;
    work:=false;
    //Заполнение пакетов производства для гладиатора урв мастерства для заказа 260 минимум
    SendBufArr[0]:='E3 57 80 80 8B D1 F0 08 7B 2C 3D 09 59 01 00 00 05 00 6A 86 DD 0A 30 00 00 00 00 00 00 00 49 87 DD 0A 30 00 00 00 00 00 00 00 D3 D6 18 0A 10 00 00 00 00 00 00 00 DC D6 18 0A 10 00 00 00 00 00 00 00 D9 D6 18 0A 30 00 00 00 00 00 00 00 ';
    SendBufArr[1]:='E3 57 80 80 8B D1 F0 08 7B 2C 3D 09 59 01 00 00 05 00 6A 86 DD 0A 2D 00 00 00 00 00 00 00 49 87 DD 0A 2D 00 00 00 00 00 00 00 D3 D6 18 0A 0F 00 00 00 00 00 00 00 DC D6 18 0A 0F 00 00 00 00 00 00 00 D9 D6 18 0A 2D 00 00 00 00 00 00 00 ';
    SendBufArr[2]:='E3 57 80 80 8B D1 F0 08 7B 2C 3D 09 59 01 00 00 05 00 6A 86 DD 0A 2A 00 00 00 00 00 00 00 49 87 DD 0A 2A 00 00 00 00 00 00 00 D3 D6 18 0A 0E 00 00 00 00 00 00 00 DC D6 18 0A 0E 00 00 00 00 00 00 00 D9 D6 18 0A 2A 00 00 00 00 00 00 00 ';
    SendBufArr[3]:='E3 57 80 80 8B D1 F0 08 7B 2C 3D 09 59 01 00 00 05 00 6A 86 DD 0A 27 00 00 00 00 00 00 00 49 87 DD 0A 27 00 00 00 00 00 00 00 D3 D6 18 0A 0D 00 00 00 00 00 00 00 DC D6 18 0A 0D 00 00 00 00 00 00 00 D9 D6 18 0A 27 00 00 00 00 00 00 00 ';
    SendBufArr[4]:='E3 57 80 80 8B D1 F0 08 7B 2C 3D 09 59 01 00 00 05 00 6A 86 DD 0A 24 00 00 00 00 00 00 00 49 87 DD 0A 24 00 00 00 00 00 00 00 D3 D6 18 0A 0C 00 00 00 00 00 00 00 DC D6 18 0A 0C 00 00 00 00 00 00 00 D9 D6 18 0A 24 00 00 00 00 00 00 00 ';
    SendBufArr[5]:='E3 57 80 80 8B D1 F0 08 7B 2C 3D 09 59 01 00 00 05 00 6A 86 DD 0A 21 00 00 00 00 00 00 00 49 87 DD 0A 21 00 00 00 00 00 00 00 D3 D6 18 0A 0B 00 00 00 00 00 00 00 DC D6 18 0A 0B 00 00 00 00 00 00 00 D9 D6 18 0A 21 00 00 00 00 00 00 00 ';
    SendBufArr[6]:='E3 57 80 80 8B D1 F0 08 7B 2C 3D 09 59 01 00 00 05 00 6A 86 DD 0A 1E 00 00 00 00 00 00 00 49 87 DD 0A 1E 00 00 00 00 00 00 00 D3 D6 18 0A 0A 00 00 00 00 00 00 00 DC D6 18 0A 0A 00 00 00 00 00 00 00 D9 D6 18 0A 1E 00 00 00 00 00 00 00 ';
    SendBufArr[7]:='E3 57 80 80 8B D1 F0 08 7B 2C 3D 09 59 01 00 00 05 00 6A 86 DD 0A 1B 00 00 00 00 00 00 00 49 87 DD 0A 1B 00 00 00 00 00 00 00 D3 D6 18 0A 09 00 00 00 00 00 00 00 DC D6 18 0A 09 00 00 00 00 00 00 00 D9 D6 18 0A 1B 00 00 00 00 00 00 00 ';
    SendBufArr[8]:='E3 57 80 80 8B D1 F0 08 7B 2C 3D 09 59 01 00 00 05 00 6A 86 DD 0A 18 00 00 00 00 00 00 00 49 87 DD 0A 18 00 00 00 00 00 00 00 D3 D6 18 0A 08 00 00 00 00 00 00 00 DC D6 18 0A 08 00 00 00 00 00 00 00 D9 D6 18 0A 18 00 00 00 00 00 00 00 ';
    SendBufArr[9]:='E3 57 80 80 8B D1 F0 08 7B 2C 3D 09 59 01 00 00 05 00 6A 86 DD 0A 15 00 00 00 00 00 00 00 49 87 DD 0A 15 00 00 00 00 00 00 00 D3 D6 18 0A 07 00 00 00 00 00 00 00 DC D6 18 0A 07 00 00 00 00 00 00 00 D9 D6 18 0A 15 00 00 00 00 00 00 00 ';
    SendBufArr[10]:='E3 57 80 80 8B D1 F0 08 7B 2C 3D 09 59 01 00 00 05 00 6A 86 DD 0A 12 00 00 00 00 00 00 00 49 87 DD 0A 12 00 00 00 00 00 00 00 D3 D6 18 0A 06 00 00 00 00 00 00 00 DC D6 18 0A 06 00 00 00 00 00 00 00 D9 D6 18 0A 12 00 00 00 00 00 00 00 ';
    SendBufArr[11]:='E3 57 80 80 8B D1 F0 08 7B 2C 3D 09 59 01 00 00 05 00 6A 86 DD 0A 0F 00 00 00 00 00 00 00 49 87 DD 0A 0F 00 00 00 00 00 00 00 D3 D6 18 0A 05 00 00 00 00 00 00 00 DC D6 18 0A 05 00 00 00 00 00 00 00 D9 D6 18 0A 0F 00 00 00 00 00 00 00 ';
    SendBufArr[12]:='E3 57 80 80 8B D1 F0 08 7B 2C 3D 09 59 01 00 00 05 00 6A 86 DD 0A 0C 00 00 00 00 00 00 00 49 87 DD 0A 0C 00 00 00 00 00 00 00 D3 D6 18 0A 04 00 00 00 00 00 00 00 DC D6 18 0A 04 00 00 00 00 00 00 00 D9 D6 18 0A 0C 00 00 00 00 00 00 00 ';
    SendBufArr[13]:='E3 57 80 80 8B D1 F0 08 7B 2C 3D 09 59 01 00 00 05 00 6A 86 DD 0A 09 00 00 00 00 00 00 00 49 87 DD 0A 09 00 00 00 00 00 00 00 D3 D6 18 0A 03 00 00 00 00 00 00 00 DC D6 18 0A 03 00 00 00 00 00 00 00 D9 D6 18 0A 09 00 00 00 00 00 00 00 ';
    SendBufArr[14]:='E3 57 80 80 8B D1 F0 08 7B 2C 3D 09 59 01 00 00 05 00 6A 86 DD 0A 06 00 00 00 00 00 00 00 49 87 DD 0A 06 00 00 00 00 00 00 00 D3 D6 18 0A 02 00 00 00 00 00 00 00 DC D6 18 0A 02 00 00 00 00 00 00 00 D9 D6 18 0A 06 00 00 00 00 00 00 00 ';
    SendBufArr[15]:='E3 57 80 80 8B D1 F0 08 7B 2C 3D 09 59 01 00 00 05 00 6A 86 DD 0A 03 00 00 00 00 00 00 00 49 87 DD 0A 03 00 00 00 00 00 00 00 D3 D6 18 0A 01 00 00 00 00 00 00 00 DC D6 18 0A 01 00 00 00 00 00 00 00 D9 D6 18 0A 03 00 00 00 00 00 00 00 ';
end;

Последний раз редактировалось J-Fobos, 20.02.2011 в 15:00.
TEHb вне форума   Ответить с цитированием
За это сообщение TEHb нажился спасибкой от:
Старый 20.02.2011, 12:07   #20
Новичок
 
Регистрация: 16.02.2011
Сообщений: 15
Сказал Спасибо: 7
Имеет 3 спасибок в 3 сообщенях
TEHb пока неопределено
По умолчанию Продолжение

Код:
Procedure TakeMission;
begin
MissionArr[0]:='9C 57 5B 63 00 00 00 34 00 01 00 0A 00 00 00 00 00 00 00 '; 
MissionArr[1]:='9C 57 5B 63 00 00 00 19 00 01 00 1C 00 A2 13 00 00 00 00 '; 
MissionArr[2]:='9C 57 5B 63 00 00 00 EA 03 01 00 04 00 A2 13 00 00 00 00 ';
For i:=0 to 2 do 
   begin 
        buf:=HStr('C9 57 66 00');
        SendToServer;
        buf:=HStr('B5 57 72 59 01 00 00 00');
        SendToServer; 
        buf:=HStr(MissionArr[i]);
        SendToServer;
   end;
    Mission1:=True;
end;
Procedure BuyItems;
begin
    buf:=HStr('9C 57 5B 64 00 00 00 02 00 01 00 0A 00 00 00 00 00 00 00 ');
    SendToServer;
    buf:=HStr('A1 57 5E 64 00 00 00 0D 00 03 00 D3 D6 18 0A 10 00 00 00 00 00 00 00 DC D6 18 0A 10 00 00 00 00 00 00 00 D9 D6 18 0A 30 00 00 00 00 00 00 00 ');
    SendToServer; 
End;
Procedure EndMission;
Begin
  buf:=HStr('9C 57 5B 63 00 00 00 34 00 01 00 0A 00 00 00 00 00 00 00');
  SendToServer;
  buf:=HStr('9C 57 5B 63 00 00 00 19 00 01 00 1C 00 A2 13 00 00 00 00');
  SendToServer;
  buf:=HStr('9C 57 5B 63 00 00 00 11 00 01 00 05 00 A2 13 00 00 00 00');
  SendToServer;
  Mission1:=false;                                  
end;
procedure Free; //Вызывается при выключении скрипта
begin
  start:=false;
end;
begin
  if FromClient and (pck[1]=#$B9) then 
  begin
    start:=true; //запуск от любого сообщения в чат
    if not(work) then work:=true else work:=false;  //запуск и остановка работы тела скрипта (сам скрипт не выклбчает)
  end;
  if FromServer and (pck[1]=#$16) then  a:=a+1 else a:=0; //можно inc(a) я не пробовал привык делфи 7 
                                                          //если пакет не 16, то сбросить а так как мы ждем три пакета подряд все сработает
  if FromServer and (pck[1]=#$16) and (a=3) and (work) or start then //собственно старт работы после трех пакетов или по флагу start
  begin
    start:=false;
    if mission1=false then 
    begin
        TakeMission;
        BuyItems;
    end;
    buf:=HStr('C9 57 66 00');                     //пакет нажатия
    SendToServer;
    buf:=HStr('B5 57 72 56 02 00 00 00');         //цель нажатия
    delay(800);                                   //задержка так делать нельзя но у меня работает 
    buf:=HStr(SendBufArr[i]);                     //Собственно посылка производства поочередная так как пакеты постоянно меняются по количесту оставшихся вещей я просто и записал все (16 шт.)
    SendToServer;
    i:=i+1;
    if i=16 then
    EndMission;
    i:=0;
    a:=0;
    start:=true;
  end;
end.

Последний раз редактировалось J-Fobos, 20.02.2011 в 15:00.
TEHb вне форума   Ответить с цитированием
За это сообщение TEHb нажился спасибкой от:
Ответ

  CoderX :: Forums > Lineage II > L2PacketHack > Скриптинг



Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 02:58.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!