Показать сообщение отдельно
Старый 21.04.2011, 18:16   #16
Местный
 
Регистрация: 10.08.2010
Сообщений: 634
Сказал Спасибо: 22
Имеет 95 спасибок в 70 сообщенях
mira пока неопределено
По умолчанию

А че клиент ковырять. Там трафик перехватить да сендпакет. Ну ввод вывод на уровне апи.. Остальное это надстройка

Добавлено через 2 часа 54 минуты
Цитата:
Сообщение от Aries Посмотреть сообщение
ты не хвастайся, а лучше расскажи как это работает)))
Я смотрю, ты больше ДХ любишь ковырять чем клиенты ла2?))))
кусок кода рисующего альтернативное окно таргета =)
delphi Код:
idest.DrawVertLine(1,window.h-1,window.w-2,framecolor2);  idest.DrawVertLine(2,window.h-2,window.w-3,framecolor1);  if not assigned(TL2C)then exit;  if not assigned(TL2C.nhandler.mychar)then exit;  if TL2C.nhandler.mychar.targetID=0 then exit;  chr:=TL2C.nhandler.findlockchar(TL2C.nhandler.mychar.targetID,false);  try  if chr<>nil then begin   sname:=chr.nick;   ncolor:=$FFCCCCCC;   if chr.NpcID=0 then begin    if chr.clanID<>0 then sname:=sname+' * '+TL2C.nhandler.clandata.GetClanName(chr.clanID);   end else begin    sname:=sname+' = '+TL2C.DPK.FindNpc(chr.NpcID);   end;   if TL2C.nhandler.clandata.IsWar(chr.clanID)then ncolor:=$FFFF3333;   if chr.NpcID<>0 then ncolor:=$FF55FF44;   IDirect3DDevice9H(idev_).MFONTIPC.SetFontColor(ncolor);   IDirect3DDevice9H(idev_).MFONTIPC.setregetmode(false);   IDirect3DDevice9H(idev_).MFONTIPC.DrawStrTo(4,4,pchar(sname),window.w,@pn,psdesc);   sname:=inttostr(chr.maxHP)+' / '+inttostr(chr.HP);   if chr.targetID<>0 then begin     chr2:=TL2C.nhandler.findlockchar(chr.targetID,false);     if chr2<>nil then begin      s:=chr2.nick;      TL2C.nhandler.unlock;      sname:=sname+' ['+s+']';     end;   end;   IDirect3DDevice9H(idev_).MFONTIPC.SetFontColor($FFCCCCCC);   IDirect3DDevice9H(idev_).MFONTIPC.DrawStrTo(20,4,pchar(sname),window.w,@pn,psdesc);   setrect(rct,16,38,window.w-16,38+5);   idest.FillRect(@rct,$FF330000);   if chr.maxHP<>0 then begin    pn:=trunc((chr.HP/chr.maxHP)*(window.w-32));    setrect(rct,16,38,pn+16,38+5);    idest.FillRect(@rct,$FF990000);   end;   setrect(rct,16,44,window.w-16,44+3);   idest.FillRect(@rct,$FF000044);   if chr.maxMP<>0 then begin    pn:=trunc((chr.MP/chr.maxMP)*(window.w-32));    setrect(rct,16,44,pn+16,44+3);    idest.FillRect(@rct,$FF003399);   end;   TL2C.nhandler.GetObjectPos(pos1,TL2C.nhandler.GetMyID);   TL2C.nhandler.GetObjectPos(pos2,TL2C.nhandler.mychar.targetID);   pn:=trunc(L2VectorDist(pos1,pos2));   sname:='dist-'+inttostr(pn)+' h='+inttostr(trunc(pos2.z-pos1.z));   if chr.NpcID=0 then begin    sname:=TL2C.DPK.FindClass(chr.classID)+' '+sname;   end else begin    sname:='unknown class '+sname;   end;   IDirect3DDevice9H(idev_).MFONTIPC.DrawStrTo(44,4,pchar(sname),window.w,@pn,psdesc);
__________________
читернуть бы ништяг

Последний раз редактировалось mira, 21.04.2011 в 18:16. Причина: Добавлено сообщение
mira вне форума   Ответить с цитированием
За это сообщение mira нажился 2 спасибками от: