📄 formmemorymodifier.pas.svn-base
字号:
trainer.WriteBuffer(temp,4);
trainer.WriteBuffer(pointer(trainerdata[i].codeentrys[j].originalopcode)^,temp);
end;
temp:=length(Trainerdata[i].addressentrys);
trainer.WriteBuffer(temp,4);
for j:=0 to length(trainerdata[i].addressentrys)-1 do
begin
temp:=trainerdata[i].addressentrys[j].address;
if protect then temp:=temp xor $dead1337;
trainer.WriteBuffer(temp,sizeof(trainerdata[i].addressentrys[j].address));
//interpretableaddress
temp:=length(trainerdata[i].addressentrys[j].interpretableaddress);
trainer.writebuffer(temp,sizeof(temps));
temps:=trainerdata[i].addressentrys[j].interpretableaddress;
if protect then //encrypt temps
for k:=1 to length(temps) do
temps[k]:=chr(ord(temps[k]) xor (k+1));
trainer.writebuffer(temps[1],temp);
trainer.WriteBuffer(trainerdata[i].addressentrys[j].ispointer,sizeof(trainerdata[i].addressentrys[j].ispointer));
tempi:=length(trainerdata[i].addressentrys[j].pointers);
trainer.WriteBuffer(tempi,4);
for k:=0 to tempi-1 do
begin
trainer.WriteBuffer(trainerdata[i].addressentrys[j].pointers[k].address,sizeof(trainerdata[i].addressentrys[j].pointers[k].address));
//interpretableaddress for pointer
temp:=length(trainerdata[i].addressentrys[j].pointers[k].Interpretableaddress);
trainer.writebuffer(temp,sizeof(temps));
temps:=trainerdata[i].addressentrys[j].pointers[k].Interpretableaddress;
if protect then //encrypt temps
for l:=1 to length(temps) do
temps[l]:=chr(ord(temps[l]) xor (l+2));
trainer.writebuffer(temps[1],temp);
trainer.WriteBuffer(trainerdata[i].addressentrys[j].pointers[k].offset,sizeof(trainerdata[i].addressentrys[j].pointers[k].offset));
end;
trainer.WriteBuffer(trainerdata[i].addressentrys[j].bit,sizeof(trainerdata[i].addressentrys[j].bit));
trainer.WriteBuffer(trainerdata[i].addressentrys[j].memtyp,sizeof(trainerdata[i].addressentrys[j].memtyp));
trainer.writebuffer(trainerdata[i].addressentrys[j].frozen,sizeof(trainerdata[i].addressentrys[j].frozen));
trainer.writebuffer(trainerdata[i].addressentrys[j].frozendirection,sizeof(trainerdata[i].addressentrys[j].frozendirection));
trainer.writebuffer(trainerdata[i].addressentrys[j].setvalue,sizeof(trainerdata[i].addressentrys[j].setvalue));
trainer.WriteBuffer(trainerdata[i].addressentrys[j].userinput,sizeof(trainerdata[i].addressentrys[j].userinput));
temp:=length(trainerdata[i].addressentrys[j].value);
trainer.writebuffer(temp,4);
trainer.writebuffer(trainerdata[i].addressentrys[j].value[1],temp);
temp:=length(trainerdata[i].addressentrys[j].autoassemblescript);
trainer.writebuffer(temp,sizeof(temp));
temps:=trainerdata[i].addressentrys[j].autoassemblescript;
if protect then //encrypt temps
for k:=1 to length(temps) do
temps[k]:=chr(ord(temps[k]) xor k);
trainer.writebuffer(temps[1],temp);
end;
end;
//title
temp:=length(editTitle.text);
trainer.writebuffer(temp,4);
temps:=edittitle.text;
if protect then
begin
for i:=1 to temp do
temps[i]:=chr(ord(temps[i]) xor 56);
end;
x:=pchar(temps);
trainer.writebuffer(pointer(x)^,temp);
//launch filename
temp:=length(edit2.text);
trainer.writebuffer(temp,4);
x:=pchar(edit2.text);
trainer.writebuffer(pointer(x)^,temp);
//autolaunch
tempb:=checkbox2.checked;
trainer.writebuffer(tempb,sizeof(tempb));
//popup on keypress
tempb:=checkbox1.Checked;
trainer.writebuffer(tempb,sizeof(tempb));
//process to modify
temp:=length(combobox1.text);
trainer.writebuffer(temp,4);
x:=pchar(combobox1.text);
trainer.writebuffer(pointer(x)^,temp);
//hotkeytext
temp:=length(edithotkey.text);
trainer.writebuffer(temp,4);
x:=pchar(edithotkey.text);
trainer.writebuffer(pointer(x)^,temp);
//hotkey
trainer.WriteBuffer(popuphotkey,sizeof(popuphotkey));
//aboutbox
temp:=length(memo1.text);
trainer.writebuffer(temp,4);
temps:=memo1.Text;
if protect then
begin
for i:=1 to temp do
temps[i]:=chr(ord(temps[i]) xor 166);
end;
x:=pchar(temps);
trainer.writebuffer(pointer(x)^,temp);
//freeze interval
tempi:=strtoint(editfreezeinterval.text);
trainer.WriteBuffer(tempi,sizeof(tempi));
if frmTrainerDesigner=nil then
begin
//default uid
temp:=$666;
trainer.WriteBuffer(temp,4);
//leftside image
imagestream:=TMemorystream.Create;
frmMemorytrainerpreview.image1.Picture.Bitmap.SaveToStream(imagestream);
temp:=imagestream.Size;
trainer.WriteBuffer(temp,4);
getmem(iconbuf,temp);
imagestream.Position:=0;
imagestream.ReadBuffer(pointer(iconbuf)^,temp);
trainer.WriteBuffer(pointer(iconbuf)^,temp);
imagestream.Free;
freemem(iconbuf);
//windowwidth
trainer.writebuffer(frmMemorytrainerpreview.Width,sizeof(frmMemorytrainerpreview.Width));
//windowheight
trainer.writebuffer(frmMemorytrainerpreview.height,sizeof(frmMemorytrainerpreview.height));
//leftsidewidth
trainer.writebuffer(frmMemorytrainerpreview.Panel1.Width,sizeof(frmMemorytrainerpreview.Panel1.Width));
//leftsideheight
trainer.writebuffer(frmMemorytrainerpreview.Panel1.height,sizeof(frmMemorytrainerpreview.Panel1.height));
end
else
begin
//user defined UID
temp:=$777;
trainer.WriteBuffer(temp,4);
//windowwidth
trainer.writebuffer(frmTrainerDesigner.Width,sizeof(frmTrainerDesigner.Width));
//windowheight
trainer.writebuffer(frmTrainerDesigner.height,sizeof(frmTrainerDesigner.height));
//note:make this oop
for i:=0 to frmtrainerdesigner.ComponentCount-1 do
begin
if (frmtrainerdesigner.Components[i] is tbutton2) then
begin
temp:=0; //tbutton
trainer.WriteBuffer(temp,4);
trainer.WriteBuffer(tbutton2(frmtrainerdesigner.Components[i]).left,sizeof(integer));
trainer.WriteBuffer(tbutton2(frmtrainerdesigner.Components[i]).top,sizeof(integer));
trainer.WriteBuffer(tbutton2(frmtrainerdesigner.Components[i]).width,sizeof(integer));
trainer.WriteBuffer(tbutton2(frmtrainerdesigner.Components[i]).height,sizeof(integer));
//caption
temp:=length(tbutton2(frmtrainerdesigner.Components[i]).Caption);
trainer.writebuffer(temp,4);
x:=pchar(tbutton2(frmtrainerdesigner.Components[i]).Caption);
trainer.writebuffer(pointer(x)^,temp);
trainer.WriteBuffer(tbutton2(frmtrainerdesigner.Components[i]).wordwrap,sizeof(boolean));
//onclick
temp:=tbutton2(frmtrainerdesigner.Components[i]).Tag;
trainer.WriteBuffer(temp,4);
//command
temp:=length(tbutton2(frmtrainerdesigner.Components[i]).Command);
trainer.writebuffer(temp,4);
x:=pchar(tbutton2(frmtrainerdesigner.Components[i]).Command);
trainer.writebuffer(pointer(x)^,temp);
end;
if (frmtrainerdesigner.Components[i] is tcheatlist) then
begin
temp:=1; //tcheatlist
trainer.WriteBuffer(temp,4);
trainer.WriteBuffer(tcheatlist(frmtrainerdesigner.Components[i]).left,sizeof(integer));
trainer.WriteBuffer(tcheatlist(frmtrainerdesigner.Components[i]).top,sizeof(integer));
trainer.WriteBuffer(tcheatlist(frmtrainerdesigner.Components[i]).width,sizeof(integer));
trainer.WriteBuffer(tcheatlist(frmtrainerdesigner.Components[i]).height,sizeof(integer));
trainer.Writebuffer(tcheatlist(frmtrainerdesigner.Components[i]).activationcolor,sizeof(tcolor));
trainer.Writebuffer(tcheatlist(frmtrainerdesigner.Components[i]).color,sizeof(tcolor));
trainer.Writebuffer(tcheatlist(frmtrainerdesigner.Components[i]).textcolor,sizeof(tcolor));
trainer.Writebuffer(tcheatlist(frmtrainerdesigner.Components[i]).hotkeyleft,sizeof(integer));
trainer.Writebuffer(tcheatlist(frmtrainerdesigner.Components[i]).descriptionleft,sizeof(integer));
trainer.Writebuffer(tcheatlist(frmtrainerdesigner.Components[i]).editleft,sizeof(integer));
trainer.Writebuffer(tcheatlist(frmtrainerdesigner.Components[i]).editwidth,sizeof(integer));
trainer.Writebuffer(tcheatlist(frmtrainerdesigner.Components[i]).BevelInner,sizeof(Tbevelcut));
trainer.Writebuffer(tcheatlist(frmtrainerdesigner.Components[i]).BevelOuter,sizeof(Tbevelcut));
trainer.Writebuffer(tcheatlist(frmtrainerdesigner.Components[i]).BevelWidth,sizeof(integer));
trainer.Writebuffer(tcheatlist(frmtrainerdesigner.Components[i]).bevelkind,sizeof(tbevelkind));
trainer.Writebuffer(tcheatlist(frmtrainerdesigner.Components[i]).HasCheckbox,sizeof(boolean));
trainer.Writebuffer(tcheatlist(frmtrainerdesigner.Components[i]).ShowHotkeys,sizeof(boolean));
end;
if (frmtrainerdesigner.Components[i] is tcheat) then
begin
temp:=2; //tcheat
trainer.WriteBuffer(temp,4);
trainer.WriteBuffer(tcheat(frmtrainerdesigner.Components[i]).left,sizeof(integer));
trainer.WriteBuffer(tcheat(frmtrainerdesigner.Components[i]).top,sizeof(integer));
trainer.WriteBuffer(tcheat(frmtrainerdesigner.Components[i]).width,sizeof(integer));
trainer.WriteBuffer(tcheat(frmtrainerdesigner.Components[i]).height,sizeof(integer));
trainer.WriteBuffer(tcheat(frmtrainerdesigner.Components[i]).cheatnr,sizeof(integer));
trainer.Writebuffer(tcheat(frmtrainerdesigner.Components[i]).activationcolor,sizeof(tcolor));
trainer.Writebuffer(tcheat(frmtrainerdesigner.Components[i]).color,sizeof(tcolor));
trainer.Writebuffer(tcheat(frmtrainerdesigner.Components[i]).textcolor,sizeof(tcolor));
temp:=tcheat(frmtrainerdesigner.Components[i]).hotkeyleft;
trainer.Writebuffer(temp,4);
temp:=tcheat(frmtrainerdesigner.Components[i]).descriptionleft;
trainer.Writebuffer(temp,4);
temp:=tcheat(frmtrainerdesigner.Components[i]).editleft;
trainer.Writebuffer(temp,4);
temp:=tcheat(frmtrainerdesigner.Components[i]).editwidth;
trainer.Writebuffer(temp,4);
trainer.Writebuffer(tcheat(frmtrainerdesigner.Components[i]).HasCheckbox,sizeof(boolean));
trainer.Writebuffer(tcheat(frmtrainerdesigner.Components[i]).ShowHotkey,sizeof(boolean));
end;
if (frmtrainerdesigner.Components[i] is timage2) then
begin
temp:=3; //image
trainer.WriteBuffer(temp,4);
trainer.WriteBuffer(timage2(frmtrainerdesigner.Components[i]).left,sizeof(integer));
trainer.WriteBuffer(timage2(frmtrainerdesigner.Components[i]).top,sizeof(integer));
trainer.WriteBuffer(timage2(frmtrainerdesigner.Components[i]).width,sizeof(integer));
trainer.WriteBuffer(timage2(frmtrainerdesigner.Components[i]).height,sizeof(integer));
trainer.WriteBuffer(timage2(frmtrainerdesigner.Components[i]).cursor,sizeof(tcursor));
trainer.WriteBuffer(timage2(frmtrainerdesigner.Components[i]).stretch,sizeof(boolean));
trainer.WriteBuffer(timage2(frmtrainerdesigner.Components[i]).transparent,sizeof(boolean));
trainer.WriteBuffer(timage2(frmtrainerdesigner.Components[i]).tag,sizeof(integer));
//image
imagestream:=TMemorystream.Create;
timage2(frmtrainerdesigner.Components[i]).Picture.Bitmap.SaveToStream(imagestream);
temp:=imagestream.Size;
trainer.WriteBuffer(temp,4);
getmem(iconbuf,temp);
imagestream.Position:=0;
imagestream.ReadBuffer(pointer(iconbuf)^,temp);
trainer.WriteBuffer(pointer(iconbuf)^,temp);
imagestream.Free;
freemem(iconbuf);
//command
temp:=length(timage2(frmtrainerdesigner.Components[i]).Command);
trainer.writebuffer(temp,4);
x:=pchar(timage2(frmtrainerdesigner.Components[i]).Command);
trainer.writebuffer(pointer(x)^,temp);
end;
if (frmtrainerdesigner.Components[i] is tlabel2) then
begin
temp:=4; //tlabel
trainer.WriteBuffer(temp,4);
trainer.WriteBuffer(tlabel2(frmtrainerdesigner.Components[i]).left,sizeof(integer));
trainer.WriteBuffer(tlabel2(frmtrainerdesigner.Components[i]).top,sizeof(integer));
trainer.WriteBuffer(tlabel2(frmtrainerdesigner.Components[i]).width,sizeof(integer));
trainer.WriteBuffer(tlabel2(frmtrainerdesigner.Components[i]).height,sizeof(integer));
//caption
temp:=length(tlabel2(frmtrainerdesigner.Components[i]).Caption);
trainer.writebuffer(temp,4);
x:=pchar(tlabel2(frmtrainerdesigner.Components[i]).Caption);
trainer.writebuffer(pointer(x)^,temp);
//wordwrap
trainer.WriteBuffer(tlabel2(frmtrainerdesigner.Components[i]).wordwrap,sizeof(boolean));
//color
trainer.Writebuffer(tlabel2(frmtrainerdesigner.Components[i]).Font.color,sizeof(tcolor));
//command
temp:=length(tlabel2(frmtrainerdesigner.Components[i]).Command);
trainer.writebuffer(temp,4);
x:=pchar(tlabel2(frmtrainerdesigner.Components[i]).Command);
trainer.writebuffer(pointer(x)^,temp);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -