⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 myfun.pas

📁 这是千年外挂的源代码
💻 PAS
📖 第 1 页 / 共 2 页
字号:
function leftclickshow1(w1:byte;w2:byte):string; //双击用 w1表示面板 w2面板里得位置
const click1:array[0..10]of byte=($17,$00,$13,$00,$00,$00,$00,$00,$0D,$00,$15); //点击物品,人物,武功得头部
var
       fbbf :array[0..31]of char;
     where1 :array[0..1] of char;     //代表是那个面板 如 物品,一层武功 等
     where2 :array[0..1] of char;     //物品栏里得位置 或其他
     i,j,wz :integer;
     outstr :array[0..31]of char;
   zhanghao :string;
begin
where1[0]:=chr(w1);
where1[1]:=chr(0);
where2[0]:=chr(w2);
where2[1]:=chr(0);
wz:=0;
//清空fbbf
 for j:=0 to 31 do
 begin
  fbbf[j]:=chr(0);
  outstr[j]:=chr(0);
 end;
//定义头部
     for i:=0 to 10  do
     begin
     fbbf[wz]:=chr(click1[i]);
     wz:=wz+1;
     end;
     //定义面板 或人物
     fbbf[wz]:=where1[0];
     wz:=wz+1;
     fbbf[wz]:=where1[1];
     wz:=wz+1;
     //此处暂不知道方式 先定义为0
    for i:=0 to 3 do
    begin
    fbbf[wz]:=chr(0);
    wz:=wz+1;
    end;
    //定义某面板得位置 或方向
     fbbf[wz]:=where2[0];
     wz:=wz+1;
     fbbf[wz]:=where2[1];
     wz:=wz+1;
     //后面部分可以定义为坐标 目前先置0
     for i:=0 to 4 do
     begin
     fbbf[wz]:=chr(0);
     wz:=wz+1;
     end;
    encode(fbbf,wz,outstr);       //加密
    zhanghao:=outstr;
    zhanghao:='('+zhanghao+')';
    result:=zhanghao;
//    frmtest.idtelnetdemo.Write(zhanghao);
end;

function movexy(face:byte;movex:integer;movey:integer):string;          //人物移动
const move1:array[0..10]of byte=($15,$00,$00,$00,$00,$00,$00,$00,$0B,$00,$0B);
var i,j,wz :integer;
      fbbf :array[0..40]of char;
    outstr :array[0..40]of char;
  zhanghao :string;
begin
wz:=0;
 for i:=0 to 10 do
 begin
   fbbf[wz]:=chr(move1[i]);
   wz:=wz+1;
 end;
   fbbf[wz]:=chr(face);
   wz:=wz+1;
   fbbf[wz]:=chr(0);
   wz:=wz+1;
   //设定x的值
   fbbf[wz]:=chr(HexaToDecimal(copy(inttohex(movex,4),3,2)));
   wz:=wz+1;
   fbbf[wz]:=chr(HexaToDecimal(copy(inttohex(movex,4),1,2)));
   wz:=wz+1;
   //设定y的值
   fbbf[wz]:=chr(HexaToDecimal(copy(inttohex(movey,4),3,2)));
   wz:=wz+1;
   fbbf[wz]:=chr(HexaToDecimal(copy(inttohex(movey,4),1,2)));
   wz:=wz+1;
   //设定末尾4位值
   fbbf[wz]:=chr(0);
   wz:=wz+1;
   fbbf[wz]:=chr(0);
   wz:=wz+1;
   fbbf[wz]:=chr(0);
   wz:=wz+1;
   fbbf[wz]:=chr(0);
   wz:=wz+1;
   //加密发送数据
    encode(fbbf,wz,outstr);       //加密
    zhanghao:=copy(outstr,1,28);
    zhanghao:='('+zhanghao+')';
    result:=zhanghao;
//    frmtest.idtelnetdemo.Write(zhanghao);
end;

//答题字符串加密发送部分
function sayanswer(str:string):string;
const namestr1:array[0..6]of byte=($00,$13,$00,$00,$00,$00,$00);
var
          sayword:array[0..255]of char;
           outstr:array[0..255]of char;
             j,wz: integer;
   renwu,zhanghao:string;
               i : integer;
               s : string;
begin
for j:=0 to 255 do
begin
sayword[j]:=chr(0);
outstr[j]:=chr(0);
end;
   // frmtest.FlatMemo2.Lines.Add(str);
    s := str;           //读取输入栏得文字
    sayword[0]:=chr(13+length(pchar(s)));      //取得头部长度
    wz:=1;
    for i:=0 to 6 do
    begin
    sayword[wz]:=chr(namestr1[i]);
    wz:=wz+1;
    end;
    sayword[wz]:=chr(3+length(pchar(s)));   //
    wz:=wz+1;
    sayword[wz]:=chr(0);
    wz:=wz+1;
    sayword[wz]:=chr(12);   //标志位 此位应该是0c
    wz:=wz+1;
    sayword[wz]:=chr(length(pchar(s)));  //文字数据长度
    wz:=wz+1;
    sayword[wz]:=chr(0);
    wz:=wz+1;
    for i:=0 to length(pchar(s)) do      //分解字符串
    begin
    sayword[wz]:=pchar(s)[i];
    wz:=wz+1;
    end;
    wz:=wz+1;
    sayword[wz]:=chr(0);
    encode(sayword,wz,outstr);       //加密
    zhanghao:=outstr;
    zhanghao:='('+zhanghao+')';
    result:=zhanghao;
  //  frmtest.idtelnetdemo.Write(zhanghao);     //发送
end;


 //定义人物名字发送封包 帐号密码发送
function sendname(zhanghao1:string;mima:string):string;
const namestr1:array[0..10]of byte=($44,$00,$01,$00,$00,$00,$00,$00,$3A,$00,$03);
var  zhanghaomima:array[0..68]of char;
           outstr:array[0..300]of char;
             j,wz: integer;
         zhanghao:string;
begin
     wz:=0;
     for j:=0 to 10 do
     begin
       zhanghaomima[wz]:=chr(namestr1[j]);
       wz:=wz+1;
     end;
     for j:=0 to (length(zhanghao1)) do
     begin
       zhanghaomima[wz]:=pchar(zhanghao1)[j];
       wz:=wz+1;
     end;
     for j:=1 to (18-length(zhanghao1)) do
     begin
     zhanghaomima[wz]:=chr(0);
     wz:=wz+1;
     end;
     for j:=0 to (length(mima)-1) do
     begin
       zhanghaomima[wz]:=pchar(mima)[j];
       wz:=wz+1;
     end;
    for j:=1 to (38-length(mima))+1 do
     begin
     zhanghaomima[wz]:=chr(0);
     wz:=wz+1;
     end;
     encode(zhanghaomima,wz,@outstr);
     zhanghao:=copy(outstr,0,92);
     zhanghao:='('+zhanghao+')';
     result:=zhanghao;
  //   frmtest.idtelnetdemo.Write(zhanghao);
end;

//选人物
function xuanrenwu(renwu1:string;renwunum:string):string;             //根据人物得位置 按需要发送
const namestr1:array[0..10]of byte=($26,$00,$02,$00,$00,$00,$00,$00,$1c,$00,$08);
const namestr2:array[0..10]of byte=($00,$00,$4b,$00,$00,$00,$74,$FD,$12,$00,$00);

var   xuanzerenwu:array[0..38]of char;
           outstr:array[0..300]of char;
             j,wz: integer;
   renwu,zhanghao:string;
               ts:TStringList;
begin
      ts := TStringList.Create ;
      ts.Delimiter:= ',' ;
      ts.DelimitedText:=renwu1;
      renwu:=ts.Strings[strtoint(renwunum)-1];
     if renwu<>'' then
     begin

//     end;
     //填头部
     wz:=0;
     for j:=0 to 10 do
     begin
       xuanzerenwu[wz]:=chr(namestr1[j]);
       wz:=wz+1;
     end;
   //名字部分
     for j:=0 to length(renwu) do
     begin
       xuanzerenwu[wz]:=pchar(renwu)[j];
       wz:=wz+1;
     end;
     //补名字不足部分
     for j:=1 to (17-length(renwu)) do
     begin
     xuanzerenwu[wz]:=chr(0);
     wz:=wz+1;
     end;
     //填尾巴
     for j:=0 to 10 do
     begin
       xuanzerenwu[wz]:=chr(namestr2[j]);
       wz:=wz+1;
     end;
     encode(xuanzerenwu,wz,@outstr);
     zhanghao:=copy(outstr,0,52);
     zhanghao:='('+zhanghao+')';
     result:=zhanghao;
 //    frmtest.idtelnetdemo.Write(zhanghao);
 //    frmtest.Timer1.Enabled:=true;
    end;
 //   else
//     frmtest.FlatMemo1.Lines.Add('你选择了没有人物得位置');
end;

function  goodsmima(mima:string;key:integer):string; //设定或解除密码
const click1:array[0..10]of byte=($15,$00,$13,$00,$00,$00,$00,$00,$0b,$00,$28); //点击物品,人物,武功得头部
var
       fbbf :array[0..31]of char;
      i,j,wz :integer;
     outstr :array[0..31]of char;
   zhanghao :string;
begin
wz:=0;
//清空fbbf
 for j:=0 to 31 do
 begin
  fbbf[j]:=chr(0);
  outstr[j]:=chr(0);
 end;
//定义头部
     for i:=0 to 10  do
     begin
     fbbf[wz]:=chr(click1[i]);
     wz:=wz+1;
     end;
     //定义密码
   for i:=0 to length(mima)-1 do
   begin
     fbbf[wz]:=pchar(mima)[i];
     wz:=wz+1;
   end;
   for i:=0 to (8-length(mima)) do
   begin
      fbbf[wz]:=chr(0);
      wz:=wz+1;
   end;
   fbbf[wz]:=chr(key);
   wz:=wz+1;

    encode(fbbf,wz,outstr);       //加密
    zhanghao:=outstr;
    zhanghao:='('+zhanghao+')';
    result:=zhanghao;

end;

function  trademenu(tradename:string;x,y:integer):string;
   const click1:array[0..16]of byte=($21,$00,$00,$00,$00,$00,$00,$00,$17,$00,$16,$01,$03,$00,$00,$00,$00 ); //拖放到对方身上得头部
   var   fbbf :array[0..40]of char;
       outstr :array[0..60]of char;//出来的数据
     where1 :array[0..4] of char;
       i,wz :integer;
     zhanghao :string;
   begin
   Fillchar(outstr,41,chr(0));
where1[0]:=chr(HexaToDecimal(copy(tradename,1,2)));
where1[1]:=chr(HexaToDecimal(copy(tradename,3,2)));
where1[2]:=chr(HexaToDecimal(copy(tradename,5,2)));
where1[3]:=chr(HexaToDecimal(copy(tradename,7,2)));
     wz:=0;
//与人交易头部
     for i:=0 to 16 do
      begin
       fbbf[wz]:=chr(click1[i]);
       wz:=wz+1;
      end;
//设定交易者得代码
     for i:=0 to 3 do
      begin
        fbbf[wz]:=where1[i];
        wz:=wz+1;
      end;
     for i:=0 to 3 do
     begin
       fbbf[wz]:=chr(0);
       wz:=wz+1;
     end;
   //设定x的值
   fbbf[wz]:=chr(HexaToDecimal(copy(inttohex(x,4),3,2)));
   wz:=wz+1;
   fbbf[wz]:=chr(HexaToDecimal(copy(inttohex(x,4),1,2)));
   wz:=wz+1;
   //设定y的值
   fbbf[wz]:=chr(HexaToDecimal(copy(inttohex(y,4),3,2)));
   wz:=wz+1;
   fbbf[wz]:=chr(HexaToDecimal(copy(inttohex(y,4),1,2)));
   wz:=wz+1;
     for i:=0 to 3 do
     begin
       fbbf[wz]:=chr(0);
       wz:=wz+1;
     end;
     wz:=wz+1;
     encode(fbbf,wz,outstr);
     zhanghao:=outstr;
     zhanghao:='('+zhanghao+')';
     result:=zhanghao;
   end;

 //交易物品拖放   w1代表数量
function  tradedragnum(w1:integer;w2:integer):string;
   const click1:array[0..11]of byte=($18,$00,$00,$00,$00,$00,$00,$00,$0e,$00,$1B,$01);
         click2:array[0..6]of byte=($00,$00,$00,$0f,$00,$00,$00);
   var   fbbf :array[0..34]of char;
       outstr :array[0..80]of char;//出来的数据
         i,wz :integer;
     zhanghao :string;
   begin
   Fillchar(outstr,80,chr(0));
   fillchar(fbbf,35,chr(0));
     wz:=0;
   //定义头部
     for i:=0 to 11 do
      begin
       fbbf[wz]:=chr(click1[i]);
       wz:=wz+1;
      end;
    //物品栏物品位置
    fbbf[wz]:=chr(w2);
    wz:=wz+1;

    for i:=0 to 6 do
      begin
        fbbf[wz]:=chr(click2[i]);
        wz:=wz+1;
      end;
   //定义物品数量
   fbbf[wz]:=chr(HexaToDecimal(copy(inttohex(w2,4),3,2)));
   wz:=wz+1;
   fbbf[wz]:=chr(HexaToDecimal(copy(inttohex(w2,4),1,2)));
   wz:=wz+1;

 //最后2位0
     fbbf[wz]:=chr(0);
     wz:=wz+1;
     fbbf[wz]:=chr(0);
     wz:=wz+1;

     encode(fbbf,wz,outstr);
     zhanghao:=outstr;
     zhanghao:='('+zhanghao+')';
     result:=zhanghao;
end;
                    //扔东西拖放步骤
function  flap(x,y,z:integer):string;
   const click1:array[0..24]of byte=($21,$00,$00,$00,$00,$00,$00,$00,$17,$00,$16,$01,$03,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 ); //拖放到对方身上得头部
   var   fbbf :array[0..40]of char;
       outstr :array[0..60]of char;//出来的数据
       i,wz :integer;
     zhanghao :string;
   begin
   Fillchar(outstr,41,chr(0));
     wz:=0;
//扔东西头部
     for i:=0 to 24 do
      begin
       fbbf[wz]:=chr(click1[i]);
       wz:=wz+1;
      end;
   //设定x的值
   fbbf[wz]:=chr(HexaToDecimal(copy(inttohex(x,4),3,2)));
   wz:=wz+1;
   fbbf[wz]:=chr(HexaToDecimal(copy(inttohex(x,4),1,2)));
   wz:=wz+1;
   //设定y的值
   fbbf[wz]:=chr(HexaToDecimal(copy(inttohex(y,4),3,2)));
   wz:=wz+1;
   fbbf[wz]:=chr(HexaToDecimal(copy(inttohex(y,4),1,2)));
   wz:=wz+1;
   fbbf[wz]:=chr(z);
   wz:=wz+1;
     for i:=0 to 3 do
     begin
       fbbf[wz]:=chr(0);
       wz:=wz+1;
     end;
     wz:=wz+1;
     encode(fbbf,wz,outstr);
     zhanghao:=outstr;
     zhanghao:='('+zhanghao+')';
     result:=zhanghao;
   end;

//技能物品拖放
function  makeskilldrag(x1:integer;x2:integer;x3:integer;x4:integer;w1:integer;w2:integer;w3:integer;w4:integer):string;
const click1:array[0..10]of byte=($1b,$00,$00,$00,$00,$00,$00,$00,$11,$00,$37); //拖放到技能框头部
var   fbbf :array[0..40]of char;
    outstr :array[0..60]of char;//出来的数据
      i,wz :integer;
  zhanghao :string;
begin
   Fillchar(outstr,41,chr(0));
   wz:=0;
   for i:=0 to 10 do
   begin
     fbbf[wz]:=chr(click1[i]);
     wz:=wz+1;
   end;
   fbbf[wz]:=chr(x1);
   wz:=wz+1;
   fbbf[wz]:=chr(0);
   wz:=wz+1;
   fbbf[wz]:=chr(x2);
   wz:=wz+1;
   fbbf[wz]:=chr(0);
   wz:=wz+1;
   fbbf[wz]:=chr(x3);
   wz:=wz+1;
   fbbf[wz]:=chr(0);
   wz:=wz+1;
   fbbf[wz]:=chr(x4);
   wz:=wz+1;
   fbbf[wz]:=chr(0);
   wz:=wz+1;
   fbbf[wz]:=chr(w1);
   wz:=wz+1;
   fbbf[wz]:=chr(0);
   wz:=wz+1;
   fbbf[wz]:=chr(w2);
   wz:=wz+1;
   fbbf[wz]:=chr(0);
   wz:=wz+1;
   fbbf[wz]:=chr(w3);
   wz:=wz+1;
   fbbf[wz]:=chr(0);
   wz:=wz+1;
   fbbf[wz]:=chr(w4);
   wz:=wz+1;
   fbbf[wz]:=chr(0);
   wz:=wz+1;
     encode(fbbf,wz,outstr);
     zhanghao:=outstr;
     zhanghao:='('+zhanghao+')';
     result:=zhanghao;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -