Показать сообщение отдельно
Старый 22.04.2009, 22:41   #9
Новичок
 
Регистрация: 22.04.2009
Сообщений: 10
Сказал Спасибо: 0
Имеет 0 спасибок в 0 сообщенях
M6vsKGB пока неопределено
По умолчанию

alexteam,
неудаляй тему плиз я в нее потом скину то что получилось или не получилось) на рецензию и коректировку)

Код:
 const
  Name='Kopper';
  ItemID=158;        //
  MoneyID=111;            //
  max=100;                 //
  maxm=2000000000;          //
  var
  ItemBase:array[1..max] of integer;
  ItemBaseS:array[1..max] of string;
  Sell: string;
  KolvoI,KolvoM: integer;
procedure Init;
  var i:integer;
  begin
   buf:=hstr('0F');
   SendToServerEx(Name);
  end;
  procedure Free;
  var i:integer;
   begin
   KolvoI:=0;
   KolvoM:=0;
    for i:=1 to max do begin
     ItemBase[i]:=0;
    end;
   end;
procedure CreateItemBase;
  var i,ss,j,ObjID,ItmID,ListCount,Count:integer;
  begin
    Item:=0;
    ss:=1;
    j:=4;
    ListCount:=ReadH(j);
   if ListCount>max then ListCount:=max;
     j:=8;
   for i:=1 to ListCount do begin
     ObjID:=ReadD(j);
     ItmID:=ReadD(j);
     Count:=ReadD(j);
     j:=j+14;
     case ItmID of
        ItemID: begin
            ItemBase[ss]:=ObjID;
            ss:=ss+1;
            Kolvoi:=Kolvoi+1;
        end;
      //  MoneyID: begin
        //    KolvoM=Count;
       // end;
     end;
    j:=j+6;
   end;
 end;
procedure UpdateItemBase;
  var i,ii,j,ObjID,ItmID,ListCount,Count,UpdType: integer;
  begin
    ListCount:=ReadH(2);
    j:=4;
  for i:=1 to ListCount do begin
    UpdType:=ReadH(j);
    j:=j+2;
    ObjID:=ReadD(j);
    ItmID:=ReadD(j);
    Count:=ReadD(j);
    j:=j+14;
     case UpdType of
        1:case ItmID of
          ItemID: begin
            for ii:=1 to max do
             if ItemBase[ii]=0 then begin
              ItemBase[ii]:=ObjID;
              KolvoI:=KolvoI+1;
              break;
             end;
          end;
          end;
          MoneyID: begin
            KolvoM:=Count;
          end;
        end;
     end;
    j:=j+6;
  end;
 procedure CollectSells;
 var l: integer;
 begin
   if KolvoI=90 and KolvoM<maxm then begin
    Sell:=hstr('1E')+hstr('00 00 00 00 50 00 00 00');
    for l:=1 to max do
     Sell:=Sell+HStr(IntToStr(ItemBase[l]))+hstr('9E 00 00 00 01 00 00 00');
   end;
 end;
 procedure SellItems;
 var k: integer;
 begin
   if KolvoI=90 and KolvoM<maxm then begin
      buf:=hstr('21 6E 00 70 00 63 00 5F 00 32 00 36 00 38 00 34 00 36 00 39 00 33 00 35 00 32 00 5F 00 53 00 65 00 6C 00 6C 00 00 00');
      SendToServerEx(Name);
      delay(200);
      buf:=Sell;
      SendToServerEx(Name);
   end;
   Free;
   UpdateItemBase;
   SendServ;
 end;
 procedure SendServ;
  begin
    while KolvoI<90 and KolvoM<maxm do
      buf:=hstr('C6 C0 13 00 00 19 00 00 00 01 00 00 00 81 00 00 00');
      SendToServerEx(Name);
      buf:=hstr('A7 30 7D 8D 12 C0 A5 5F 03 01 00 00 00');
      SendToServerEx(Name);
      delay(200);
      Free;
      UpdateItemBase;
    end;
чего й то он у мну не запускается=(
ненашел ИД денег.. где его взять хз=\ через ПХ тоже не получается..только ОбжектИД как его использовать..
не могу понять такую фигню как считывается вот эта фигня..
ObjID:=ReadD(j);
ItmID:=ReadD(j);
Count:=ReadD(j);
там же вроде все берется из одного значения: в общем это для мну космос.. побудьте коперниками обьясните)

Последний раз редактировалось M6vsKGB, 22.04.2009 в 22:52. Причина: Добавлено сообщение
M6vsKGB вне форума