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

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

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 17.02.2011, 22:46   #1
Местный
 
Регистрация: 04.11.2009
Адрес: Где-то в жопе европы
Сообщений: 316
Сказал Спасибо: 32
Имеет 42 спасибок в 39 сообщенях
wimax пока неопределено
По умолчанию Опять я

delphi Код:
Const Name='1234'; itemid=1234; procedure Init; //Вызывается при включении скрипта begin buf:=#$14; SendToServerEx(Name); end; procedure Free; //Вызывается при выключении скрипта begin end; procedure ItemList; var i:integer; ID:integer; begin     for i := 0 to 100 do     begin       if readd(i) = itemid then       begin         ID := readd(i - 8);         exit;       end;       if readd(i) <> itemid then         i := i + 64;     end;     end; procedure UseSoe; var ID:integer; begin buf:=#$19; WriteD(ID); WriteD(0); SendToServerEx(Name); end; begin if FromServer and (ConnectName=Name) then case pck[1] of #$11: ItemList; #$62: begin if (ReadD(2)=924) then UseSoe; endend; end. хроники freya когда  юзает итем buf:=#$19; WriteD(ID); WriteD(0);

id ето objid пишет 0
хули не пашыт скрипт ?)

Последний раз редактировалось NLObP, 13.03.2011 в 22:43.
wimax вне форума   Ответить с цитированием
Старый 17.02.2011, 23:26   #2
Местный
 
Аватар для supernewbie
 
Регистрация: 23.09.2009
Сообщений: 1,232
Сказал Спасибо: 119
Имеет 172 спасибок в 134 сообщенях
supernewbie пока неопределено
По умолчанию

потому что это чушь
delphi Код:
procedure ItemList; var i:integer; ID:integer; begin for i := 0 to 100 do begin if readd(i) = itemid then begin ID := readd(i - 8); exit; end; if readd(i) <> itemid then i := i + 64; end; end;
__________________
Начало.
supernewbie вне форума   Ответить с цитированием
Старый 18.02.2011, 00:34   #3
Местный
 
Регистрация: 04.11.2009
Адрес: Где-то в жопе европы
Сообщений: 316
Сказал Спасибо: 32
Имеет 42 спасибок в 39 сообщенях
wimax пока неопределено
По умолчанию

delphi Код:
Const Name=''; itemid=5644; procedure Init; //Вызывается при включении скрипта begin buf:=#$14; SendToServerEx(Name); SetLength(Inventory,0); end; procedure Free; //Вызывается при выключении скрипта begin end; procedure ItemList; var i:integer; v:variant; begin SetLength(Inventory,0); if ReadH(4)<1 then exit; for i:=0 to ReadH(4)-1 do begin v:=[0,1,2]; v[0]:=ReadD(i*offset+6)//0 - OID v[1]:=ReadD(i*offset+10); //1 - ItemID v[2]:=ReadQ(i*offset+18); //2 - Count SetLength(Inventory,length(Inventory)+1); Inventory[length(Inventory)-1]:=v; end; end; procedure UseSoe; var ID:integer; begin buf:=#$19; WriteD(ID); WriteD(0); SendToServerEx(Name); end; begin if FromServer and (ConnectName=Name) then case pck[1] of #$11: ItemList; #$62: begin if (ReadD(2)=924) then UseSoe; endend; end.


Помоги написать функцию между procedure ItemList; и procedure usesoe; которя будет считывать objid с itemid который сверху

Последний раз редактировалось wimax, 23.05.2011 в 06:55.
wimax вне форума   Ответить с цитированием
Старый 01.03.2011, 04:19   #4
Местный
 
Регистрация: 04.11.2009
Адрес: Где-то в жопе европы
Сообщений: 316
Сказал Спасибо: 32
Имеет 42 спасибок в 39 сообщенях
wimax пока неопределено
По умолчанию

PHP код:
procedure ItemList;
begin
    
for i:=0 to 100 do
        
begin   
            Invertory
[i,1]:=0;
            
Invertory[i,2]:=0;
        
end;
    for 
i:=0 to 100 do
        
begin 
            Invertory
[i,1]:=ReadD(i*68+6); 
            
Invertory[i,2]:=ReadD(i*68+10); 
            if 
Invertory[i,2]=itemid then ObjId:=Invertory[i,1];
        
end;
            
end;

procedure UseSoe;
begin
if (ReadD(2)=924then 
begin
buf
:=#$19;
WriteD(ObjId20);
WriteD(0);
SendToServerEx(Name);
end;
end;  

begin
if FromServer and (ConnectName=Namethen
case pck[1of 
#$11: ItemList;
#$62: UseSoe;
end
зделол вот так мб можна было проще но зато свое =) и работает_)

Последний раз редактировалось wimax, 01.03.2011 в 04:23. Причина: Добавлено сообщение
wimax вне форума   Ответить с цитированием
Старый 01.03.2011, 11:05   #5
Местный
 
Аватар для J-Fobos
 
Регистрация: 09.06.2008
Сообщений: 867
Сказал Спасибо: 175
Имеет 468 спасибок в 259 сообщенях
J-Fobos пока неопределено
По умолчанию

Стоит добавить одну модификацию во втором цикле for i:=0 to Count do, где Count это количество занятых слотов в инвентаре (узнается из того же пакета). Такое желательно сделать чтобы не выходить за рамки пакета в цикле
__________________

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

Переходим на протокол нового поколения jabber
J-Fobos вне форума   Ответить с цитированием
Ответ

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



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

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


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

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

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