Показать сообщение отдельно
Старый 22.11.2011, 21:10  
wowkin
Гость
Аватар для wowkin
Сообщений: n/a
Благодарностей:
0 всего

а может просто легче скриптом??

Добавлено через 1 минуту
Код:
var

SpeedTable1:array[1..10] of integer;
cSpeed:integer;
rSpeed:single;
vx1:variant;

DangePacket:array[1..10] of string;
//DangePacket1:string;
//DangePacket2:string;

CharID:array[1..4] of integer;
TargetID:integer;

{
$413F851F - 12.0(9.0+3.0)
$40C00000 - 6.0
$3FC00000 - 1.5
$40EA3D71 - 7.3 (6.0+1.3) ($2A3D71)

}

procedure Init; //Вызывается при включении скрипта
begin
SpeedTable1[1]:=$413F851F;
SpeedTable1[2]:=$41C00000;
SpeedTable1[3]:=$42C00000;
SpeedTable1[4]:=$42C00000;

cSpeed:=SpeedTable1[1];


rSpeed:=11.7;
vx1:=rSpeed;
//cSpeed:=vx1;

//sendmsg(Format('%x',[WriteSi(11.7)]));

end;

procedure Free; //Вызывается при выключении скрипта
begin

end;

var
msgName:string;

procedure PHX_Message(msg1:string);

begin
         buf:=HStr('17 54 D4 07 00 00 00 00 00 ');
         msgName:='[PHX]';
         WriteS(msgName);
         WriteS(msg1);
         SendToClient;
end;


procedure Resurect;
begin
   pck:='';
   buf:=HStr('6B 57 08 03  ');
   SendToServer;
end;


procedure SetSpeed1;
begin
   pck:='';
   PHX_Message('Use Speed 1');
   cSpeed:=SpeedTable1[1];
end;

procedure SetSpeed2;
begin
   pck:='';
   PHX_Message('Use Speed 2');
   cSpeed:=SpeedTable1[2];
end;

procedure SetSpeed3;
begin
   pck:='';
   PHX_Message('Use Speed 3');
   cSpeed:=SpeedTable1[3];
end;

procedure InitDange(d1:integer);
begin
   DangePacket[d1]:='';
   pck:='';
   PHX_Message(Format('Обнулил Данж %d',[d1]));
end;


procedure TP_To_Dange(d1:integer);
begin
   buf:=DangePacket[d1];
   pck:='';
   SendToServer;
   PHX_Message(Format('Телепорт в Данж %d',[d1]));
end;



procedure OpenAuk1;
begin
   pck:='';
   buf:=HStr('9C 57 5B 00 00 00 00 0D 00 01 00 0A 00 00 00 00 00 00 00 ');
   WriteD(TargetID,4);
   SendToServer;

end;

procedure OpenWrh1;
begin
   pck:='';
   buf:=HStr('9C 57 5B 00 00 00 00 14 00 01 00 0A 00 00 00 00 00 00 00 ');
   WriteD(TargetID,4);
   SendToServer;

end;

procedure TestTP1;
begin
   pck:='';
   buf:=HStr('9E 57 5D B3 D2 C0 44 1D 1A C2 44 06 0F 98 43 0C 00 ');
   SendToServer;
   buf:=HStr('67 57 04 ');
   SendToServer;

end;

procedure StealLoot;
var
i:integer;
begin
   pck:='';
   
    for i:=1 to 30 do
      begin
           buf:=Hstr('39 57 F6 ');
           writeD(TargetID);
           writeC(i);
           SendToServer;
      end;



end;




var
x1,y1,z1:integer;
speed_triger1:boolean;
sp1:single;



procedure TpToSave1;
begin
        pck:='';
        buf:=HStr('9E 57 5D 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ');
        WriteD(X1,4);
        WriteD(Y1,8);
        WriteD(Z1,12);
        SendToServer;
        buf:=HStr('67 57 04 ');
        SendToServer;


end;



begin

//         buf:=Hstr('42 54 E1 BA A0 0B 00 0B 02 00 00 00 40 41 ');
//         buf:=Hstr('42 54 E1 BA A0 0B 00 0B 02 00 00 00 40 42 ');
//         SendToClient;

   if FromServer and (ReadC(1)=$42) and (speed_triger1) then 
   begin
         buf:=pck;
//         sp1:=(readd(11));
//         PHX_Message(FloatToStr(sp1));
         pck:='';
         WriteD(cSpeed,11);
         SendToClient;
       
   end;

   if FromClient and (ReadD(1)=$1A6657C9) then 
   begin
         speed_triger1:=not speed_triger1;
         pck:='';
         buf:=HStr('AC 57 4B 79 63 01 00 58 02 00 00 07 00 00 00 ');
         SendToServer;
         if speed_triger1 then PHX_Message('Set Fast Speed') else PHX_Message('Set Normal Speed');
         
   end;


  



if FromClient and (ReadC(1)=$66) then
    CharID[1]:=ReadD(4);


if FromClient and (ReadC(1)=$B5) then TargetID:=ReadD(4);


 if FromClient and (ReadC(1)=$B9) then  
 begin
       if (ReadS(5)='.') then Resurect;
       if (ReadS(5)='.spd1') then SetSpeed1;
       if (ReadS(5)='.spd2') then SetSpeed2; 
       if (ReadS(5)='.spd3') then SetSpeed3;

       if (ReadS(5)='.initD1') then InitDange(1);
       if (ReadS(5)='.initD2') then InitDange(2);

       if (ReadS(5)='.tptoD1') then TP_To_Dange(1);
       if (ReadS(5)='.tptoD2') then TP_To_Dange(2);
       if (ReadS(5)='.openAuk') then OpenAuk1;
       if (ReadS(5)='.openWrh') then OpenWrh1;
       if (ReadS(5)='.tpToP1') then TestTP1;
       if (ReadS(5)='.steal') then StealLoot;
       if (ReadS(5)='.tpToSave1') then TpToSave1;
              
          
 end;



   
end.
скорость меняется командами в чат .spd1 spd2 spd3 1-12.0 2-24.0 3-96.0
активируется значком на клавиатуре >

Последний раз редактировалось wowkin; 22.11.2011 в 21:14. Причина: Добавлено сообщение
 
Ответить с цитированием