Saudações, venho postar a source do Telemagnet player, lembrando ela é feita em delphi:
Código:
unit UnitTele;
interface
uses
windows, classes, D3DX9;
const
g_pGameFramework = $B11154;
g_pCharaManager = g_pGameFramework+$10;
g_pGameContext = g_pGameFramework+$44;
type
CMoveContext = record
_0x0000 : Array [0..$10F] of Char;
Cord1 : TD3DXVector3; //0x110
Cord2 : TD3DXVector3; //0x11c
end;
CGameCharaBase = record
_0x0000 : Array [0..$54B] of Char;
m_pMoveContext : ^CMoveContext; //54C
end;
CCharaManager = record
_0x0000 : Array [0..$13] of Char;
CharaBase : Array [0..15] of ^CGameCharaBase; //14 - 68
end;
procedure CallPlayers;
implementation
function MySlot:Integer;
begin
Result:=PByte(pdword(g_pGameContext)^+$29814)^;
end;
function IsRedTeam(iSlot:Integer):bool;
begin
Result := iSlot mod 2 = 0;
end;
function PlayerOn(iSlot : integer) : bool;
begin
try
Result := (Pdword(pdword(g_pCharaManager)^+$14 + (iSlot*$4))^ > 0) and (iSlot >=0);
except
Result:=false;
end;
end;
procedure TeleMagnet(PlayerToCall : Integer );
var
CharaManager : ^CCharaManager;
begin
CharaManager := Ptr(Pdword(g_pCharaManager)^);
if (IsRedTeam(PlayerToCall) <> IsRedTeam(MySlot)) and PlayerOn(PlayerToCall) then begin
CharaManager.CharaBase[PlayerToCall].m_pMoveContext.Cord1 := CharaManager.CharaBase[MySlot].m_pMoveContext.Cord1;
CharaManager.CharaBase[PlayerToCall].m_pMoveContext.Cord2 := CharaManager.CharaBase[MySlot].m_pMoveContext.Cord2;
end;
end;
procedure CallPlayers;
var
I : integer;
begin
for i:= 0 to 15 do
TeleMagnet(I);
end;
end.
Para chamar os cheat, é só chamar o procedimento CallPlayers;
O Cheat da dc se matar players na bala.
Créditos:
BruninhoBK (me ensinar a usar classes).
Mr_Pass
B0L4D0_MC
Código:
unit UnitTele;
interface
uses
windows, classes, D3DX9;
const
g_pGameFramework = $B11154;
g_pCharaManager = g_pGameFramework+$10;
g_pGameContext = g_pGameFramework+$44;
type
CMoveContext = record
_0x0000 : Array [0..$10F] of Char;
Cord1 : TD3DXVector3; //0x110
Cord2 : TD3DXVector3; //0x11c
end;
CGameCharaBase = record
_0x0000 : Array [0..$54B] of Char;
m_pMoveContext : ^CMoveContext; //54C
end;
CCharaManager = record
_0x0000 : Array [0..$13] of Char;
CharaBase : Array [0..15] of ^CGameCharaBase; //14 - 68
end;
procedure CallPlayers;
implementation
function MySlot:Integer;
begin
Result:=PByte(pdword(g_pGameContext)^+$29814)^;
end;
function IsRedTeam(iSlot:Integer):bool;
begin
Result := iSlot mod 2 = 0;
end;
function PlayerOn(iSlot : integer) : bool;
begin
try
Result := (Pdword(pdword(g_pCharaManager)^+$14 + (iSlot*$4))^ > 0) and (iSlot >=0);
except
Result:=false;
end;
end;
procedure TeleMagnet(PlayerToCall : Integer );
var
CharaManager : ^CCharaManager;
begin
CharaManager := Ptr(Pdword(g_pCharaManager)^);
if (IsRedTeam(PlayerToCall) <> IsRedTeam(MySlot)) and PlayerOn(PlayerToCall) then begin
CharaManager.CharaBase[PlayerToCall].m_pMoveContext.Cord1 := CharaManager.CharaBase[MySlot].m_pMoveContext.Cord1;
CharaManager.CharaBase[PlayerToCall].m_pMoveContext.Cord2 := CharaManager.CharaBase[MySlot].m_pMoveContext.Cord2;
end;
end;
procedure CallPlayers;
var
I : integer;
begin
for i:= 0 to 15 do
TeleMagnet(I);
end;
end.
Para chamar os cheat, é só chamar o procedimento CallPlayers;
O Cheat da dc se matar players na bala.
Créditos:
BruninhoBK (me ensinar a usar classes).
Mr_Pass
B0L4D0_MC