Вообщем получается только с помощью пакеты открыть окно продажы, но не продавать сами итемы.
Можно сделать через скрипт или последовательность пакетов, чтобы можно было продавать шмотки НПЦ через l2phx?
...Ну на хрена ты меня посылаешь гууглить или искать 140 страниц описанных где-то комманд, если я уже в сотый раз объясняю, что хочу облегчить труд многим, я же эти доводы подробно описал...
Вот пакет ,вроде как, продажи дуалов.
[quote:aa91d]1E 00 00 00 00 01 00 00 00 DC DE 11 10 FC 09 00 00 01 00 00 00
Если слать эти пакеты, то через л2пкх никак не продать дуалы.
Сервер интерлюд.[/quote:aa91d]
Для продажи айтима тебе достаточно выделить нужного нпц и отправить пакет на продажу, в данном случае твой 2-й пакет.
Проверено на практике, в скрипте рыбалки.
продажа состоит из следующих шагов:
1. таргет на продавце, пауза, снова таргет c04=Action, c04=Action
2. приходит s0F=NpcHtmlMessage:d(MessageID)s(HTML)d(d)
3. шлём выбранный пункт из меню c21=RequestBypassToServer:s(Cmd)
4. приходит s10=SellList:d(Money)h(ListID)w(ListCount)w(ItemTy pe1)h(ObjectID)i(ItemID)d(Count)w(ItemType2)w(h)d( ItemBodyPart)...
5. FindItem(ID) найдем OID, Count нужной вещи по ID
6. шлем c1E=RequestSellItem:h(ListID)d(SellCount)h(ObjectI D)i(ItemID)d(Count)
покупка состоит из следующих шагов:
1. таргет на продавце, пауза, снова таргет c04=Action, c04=Action
2. приходит s0F=NpcHtmlMessage:d(MessageID)s(HTML)d(d)
3. шлем выбранный пункт из меню c21=RequestBypassToServer:s(Cmd)
4. приходит s11=BuyList:d(Money)h(ListID)w(ListCount)w(ItemTyp e1)h(ObjectID)i(ItemID)d(maxcnt)w(ItemType2)w(h)d( ItemBodyPart)...
5. FindItem(ID) найдем OID, Count нужной вещи по ID
6. шлем c1E=RequestSellItem:h(ListID)d(SellCount)h(ObjectI D)i(ItemID)d(Count)
обмен состоит из следующих шагов:
1. таргет на продавце, пауза, снова таргет c04=Action, c04=Action
2. приходит s0F=NpcHtmlMessage:d(MessageID)s(HTML)d(d)
3. шлем выбранный пункт из меню c21=RequestBypassToServer:s(Cmd)
4. приходит sD0=MultiSellList:d(listId)d(page_beg)d(page_end)d (onpage)d(entrycount)d(EntryId)b(?)w(prodcount)w(i temcount<)w(pItemId)d(?)w(ptype2)...
5. FindItem(ID) найдем OID, Count нужной вещи по ID
6. шлем cA7=RequestMultiSellChoose:h(ListID)d(EntryID)d(Am ount)
если нужно продавать однотипные вещи - воспользуйся моим скриптом...
в данном случае он продаёт Тарбары (если я прально понял, зачем тебе такой скрипт)
Код:
/// Autoseller by Johnson
Var
I,j,k,l,ItemCount,ItemType1,ItemOID,ItemID,ItCount,SelledItemID:integer;
N_Items:Array[0..500,0..1] of Integer;
procedure Init;
begin
SelledItemID:= 158; // Tarbar
l:=0;
end;
procedure SendMsg(msg:string);
begin
buf:=#$4A;
WriteD(0);
WriteD(10);
WriteS('');
WriteS(msg);
SendToClient;
end;
begin
if FromClient and (pck=#$38#$53#$00#$00#$00#$03#$00#$00#$00) then
begin
buf:=#$0F;
SendToServer;
l:=1;
end;
if FromServer and (pck[1]=#$1B) and (l=1) then
begin
j:=6;
k:=0;
ItemCount:=ReadH(4);
For I:=0 to ItemCount - 1 do
begin
ItemType1:=ReadH(j);
ItemOID:=ReadD(j);
ItemID:=ReadD(j);
ItCount:=ReadD(j);
j:=j+22;
if ItemID = SelledItemID then
begin
N_Items[k,0]:=ItemID; ///ID
N_Items[k,1]:=ItemOID; ///OID
k:=k+1;
end;
end;
buf:=#$1E;
WriteD(0);
WriteD(k+1);
For I:=0 to k do
begin
WriteD(N_Items[i,1]); ///OID
WriteD(SelledItemID); ///ID
WriteD(1); ///Count
end;
l:=0;
SendToServer;
end;
end.
скрипт запускается латинской буквой S в ПАТИ-чат, сначала нужно выделить непися-продавца
__________________
Если Вы недовольны моими действиями - то Вам сюда!
Проверено на практике, в скрипте рыбалки.
продажа состоит из следующих шагов:
1. таргет на продавце, пауза, снова таргет c04=Action, c04=Action
2. приходит s0F=NpcHtmlMessage:d(MessageID)s(HTML)d(d)
3. шлём выбранный пункт из меню c21=RequestBypassToServer:s(Cmd)
4. приходит s10=SellList:d(Money)h(ListID)w(ListCount)w(ItemTy pe1)h(ObjectID)i(ItemID)d(Count)w(ItemType2)w(h)d( ItemBodyPart)...
5. FindItem(ID) найдем OID, Count нужной вещи по ID
6. шлем c1E=RequestSellItem:h(ListID)d(SellCount)h(ObjectI D)i(ItemID)d(Count)
покупка состоит из следующих шагов:
1. таргет на продавце, пауза, снова таргет c04=Action, c04=Action
2. приходит s0F=NpcHtmlMessage:d(MessageID)s(HTML)d(d)
3. шлем выбранный пункт из меню c21=RequestBypassToServer:s(Cmd)
4. приходит s11=BuyList:d(Money)h(ListID)w(ListCount)w(ItemTyp e1)h(ObjectID)i(ItemID)d(maxcnt)w(ItemType2)w(h)d( ItemBodyPart)...
5. FindItem(ID) найдем OID, Count нужной вещи по ID
6. шлем c1E=RequestSellItem:h(ListID)d(SellCount)h(ObjectI D)i(ItemID)d(Count)
обмен состоит из следующих шагов:
1. таргет на продавце, пауза, снова таргет c04=Action, c04=Action
2. приходит s0F=NpcHtmlMessage:d(MessageID)s(HTML)d(d)
3. шлем выбранный пункт из меню c21=RequestBypassToServer:s(Cmd)
4. приходит sD0=MultiSellList:d(listId)d(page_beg)d(page_end)d (onpage)d(entrycount)d(EntryId)b(?)w(prodcount)w(i temcount<)w(pItemId)d(?)w(ptype2)...
5. FindItem(ID) найдем OID, Count нужной вещи по ID
6. шлем cA7=RequestMultiSellChoose:h(ListID)d(EntryID)d(Am ount)
есть предложение создать тему с жёстким модерированием вот с такими алгоритмами