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

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

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 04.12.2009, 21:54   #161
Рыцарь
 
Аватар для TAMBIK
 
Регистрация: 03.03.2009
Сообщений: 773
Сказал Спасибо: 361
Имеет 300 спасибок в 168 сообщенях
TAMBIK на пути к лучшему
По умолчанию

tiranosaur,
к какому скрипту хочешь добавить
__________________
Тут не форум гадалок, если ты делаешь все правильно и по пунктам - то все должно работать
TAMBIK вне форума   Ответить с цитированием
Старый 05.12.2009, 16:39   #162
Пользователь
 
Регистрация: 03.09.2009
Сообщений: 63
Сказал Спасибо: 19
Имеет 5 спасибок в 3 сообщенях
tiranosaur пока неопределено
По умолчанию

Локомотив
tiranosaur вне форума   Ответить с цитированием
Старый 08.12.2009, 15:26   #163
Пользователь
 
Регистрация: 03.09.2009
Сообщений: 63
Сказал Спасибо: 19
Имеет 5 спасибок в 3 сообщенях
tiranosaur пока неопределено
По умолчанию

Подскажите пжл а как сделать проверку(по типу проверки спойла) на проход ослабления к ветру?

Вопрос к рыцарям- Имеется недоработанный скипт на сх производная локомотива нужно ли выкладывать?

И ышо вопрос как в этом таймере сделать запуск с 0 позиции а продолжение со 2ой? Зараннее спс

const
Name='ххххх';

var
timer1: TTimer;
x: integer;


procedure OnTimer1(Sender: TObject);
begin

case x of
0: begin
timer1.interval := интервал_через_который_будет_отослан_первый_пакет;
end;

1: begin
buf:=hstr('пакет №1');
SendToServerEx(Name);
timer1.interval := интервал_через_который_будет_отослан_второй_пакет;
end;

2: begin
buf:=hstr('пакет №2');
SendToServerEx(Name);
timer1.interval := интервал_через_который_будет_отослан_третий_пакет;
end;

3: begin
buf:=hstr('пакет №3');
SendToServerEx(Name);
end;

else
begin
timer1.enabled := false;
x := 0;
end;
end;
inc(x);
end;

//************************************************** ****************************
// Вызывается при включении скрипта
//************************************************** ****************************
procedure Init;
begin
x := 0;
timer1:=TTimer.Create(nil);//выделяем памать и т.п.
timer1.OnTimer:=@OnTimer1;//привязываем процедуру к событию
timer1.enabled:=true;//начальное положение true-включен/false-выключен
timer1.interval:=1;//интервал
end;

procedure Free;
begin
timer1.free;
end;

begin
end.

Последний раз редактировалось tiranosaur, 08.12.2009 в 15:30.
tiranosaur вне форума   Ответить с цитированием
Старый 08.12.2009, 19:30   #164
Рыцарь
 
Аватар для NLObP
 
Регистрация: 25.02.2008
Адрес: г.Волгоград
Сообщений: 2,009
Сказал Спасибо: 1,285
Имеет 1,458 спасибок в 793 сообщенях
NLObP пока неопределено
По умолчанию

Цитата:
Сообщение от tiranosaur Посмотреть сообщение
как в этом таймере сделать запуск с 0 позиции а продолжение со 2ой?
В кейсах изменяй значение X на требуемый порядок обхода, т.е.: x=0, x=2, x=1 и т.д.
__________________
| Для самых ленивый | Телепаты в отпуске |Мы работаем над этим |
Не умеешь - учись, не хочешь учиться - плати © Суровый Закон Жизни


NLObP вне форума   Ответить с цитированием
Старый 31.01.2010, 18:37   #165
Пользователь
 
Регистрация: 03.09.2009
Сообщений: 63
Сказал Спасибо: 19
Имеет 5 спасибок в 3 сообщенях
tiranosaur пока неопределено
По умолчанию

Подскажите пжл как в этой части бота
if MinDistID > 0 then // иначе ищем ближайшего
begin
TargetID:= MobsObjID[MinDistID];
PhisicalAttack; // берем вражину в таргет
AttackCycle:= 0;
exit;
end;
// if (abs(MyX-CenterX) > 20) and (abs(MyY-CenterY) > 20) then MoveTo (CenterX, CenterY, CenterZ);
end;
сделать чтобы пакет moveto в центр приходил один раз а не спамился постоянно?
tiranosaur вне форума   Ответить с цитированием
Старый 01.02.2010, 05:58   #166
Местный
 
Аватар для Breadfan
 
Регистрация: 29.04.2008
Сообщений: 830
Сказал Спасибо: 80
Имеет 230 спасибок в 169 сообщенях
Breadfan пока неопределено
По умолчанию

Прикрути какуюнть флаговую переменную RunToPoint(boolean), и в проверку ее:
delphi Код:
if ((abs(MyX-CenterX) > 20) and (abs(MyY-CenterY) > 20) then begin     if (!RunToPoint) then begin      RunToPoint:=true;      MoveTo (CenterX, CenterY, CenterZ);     end;   end   else      RunToPoint:=False;   end; end; (синтаксис может и хромать)
примерно так вобщем

///так если точка к которой надо бежать, будет находиться на одной оси с текущим положением, эта проверка ж провалится - if ((abs(MyX-CenterX) > 20) and (abs(MyY-CenterY) > 20) then ..... и вроде никуда он не побежит...Может там OR уместнее? или ошибаюсь я....
__________________
На фразы в аську типа "слух карочь 1)как точить 2)как раскачаться за 5 мин" - игнор. ИМХО идиотизм
Дай голодному рыбу - он будет один день сыт. Покажи ему, как удить рыбу - он пошлёт тебя и скажет, что у него есть более интересные занятия, чем забрасывать снасти в воду
David Kastrup @ de.comp.text.tex.
"Приобретенные навыки общения с маленькими детьми - сильно упрощают взаимопонимание на форумах..."

А вы знаете, что для качественной сварки - место шва нужно протереть спиртом?

Последний раз редактировалось Breadfan, 01.02.2010 в 06:43.
Breadfan вне форума   Ответить с цитированием
За это сообщение Breadfan нажился спасибкой от:
Старый 12.02.2010, 02:03   #167
Пользователь
 
Регистрация: 03.09.2009
Сообщений: 63
Сказал Спасибо: 19
Имеет 5 спасибок в 3 сообщенях
tiranosaur пока неопределено
По умолчанию

Подскажите где ошибка. должен не добавлять дроп в бд если итем ид = чему-то


#$16:begin
if (ReadD(10)!=(12051)) then
begin

if TargetID = ReadD(2) then // DropItem:h(PlayerID)h(ObjectID)i(ItemID)d(X)d(Y)d( Z)d(Stackable)d(Count)
begin
AddDroppedItem(ReadD(6), ReadD(10), ReadD(14), ReadD(18), ReadD(22));
end;
if LastKilledMobObjID = ReadD(2) then // DropItem:h(PlayerID)h(ObjectID)i(ItemID)d(X)d(Y)d( Z)d(Stackable)d(Count)
begin
AddDroppedItem(ReadD(6), ReadD(10), ReadD(14), ReadD(18), ReadD(22));
end;
end;
end;

end;
tiranosaur вне форума   Ответить с цитированием
Старый 12.02.2010, 02:13   #168
Рыцарь
 
Аватар для NLObP
 
Регистрация: 25.02.2008
Адрес: г.Волгоград
Сообщений: 2,009
Сказал Спасибо: 1,285
Имеет 1,458 спасибок в 793 сообщенях
NLObP пока неопределено
По умолчанию

tiranosaur, попробуй сравнивать не с PlayerID, а с ObjectID
Код:
if TargetID = ReadD(6) then
...
if LastKilledMobObjID = ReadD(6) then
__________________
| Для самых ленивый | Телепаты в отпуске |Мы работаем над этим |
Не умеешь - учись, не хочешь учиться - плати © Суровый Закон Жизни


NLObP вне форума   Ответить с цитированием
За это сообщение NLObP нажился спасибкой от:
Старый 15.03.2010, 19:44   #169
Новичок
 
Регистрация: 11.02.2010
Сообщений: 8
Сказал Спасибо: 2
Имеет 0 спасибок в 0 сообщенях
dast panda пока неопределено
По умолчанию

юзал поиск курил мануалы, решил написать в этой теме.
Возможно ли посредством скрипта делать релог персу по приближении любого перса, обычный релог или выход, или экстренное закрытие соеденения, как, допустим в валкере ? Заранее благодарен.
dast panda вне форума   Ответить с цитированием
Старый 15.03.2010, 21:50   #170
Рыцарь
 
Аватар для QaK
 
Регистрация: 28.09.2007
Сообщений: 1,558
Сказал Спасибо: 71
Имеет 351 спасибок в 244 сообщенях
QaK пока неопределено
По умолчанию

dast panda, можно =)
QaK вне форума   Ответить с цитированием
Ответ

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



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

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


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

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

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