📄 viewrcd.pas
字号:
0049A697 BA09000000 mov edx, $00000009
0049A69C 8B45F8 mov eax, [ebp-$08]
* Reference to: grids.TStringGrid.SetCells(TStringGrid;Integer;Integer;AnsiString);
|
0049A69F E8D0CBFFFF call 00497274
0049A6A4 6A00 push $00
0049A6A6 B90B000000 mov ecx, $0000000B
0049A6AB BA0A000000 mov edx, $0000000A
0049A6B0 8B45F8 mov eax, [ebp-$08]
* Reference to: grids.TStringGrid.SetCells(TStringGrid;Integer;Integer;AnsiString);
|
0049A6B3 E8BCCBFFFF call 00497274
0049A6B8 6A00 push $00
0049A6BA B90B000000 mov ecx, $0000000B
0049A6BF BA0B000000 mov edx, $0000000B
0049A6C4 8B45F8 mov eax, [ebp-$08]
* Reference to: grids.TStringGrid.SetCells(TStringGrid;Integer;Integer;AnsiString);
|
0049A6C7 E8A8CBFFFF call 00497274
0049A6CC 6A00 push $00
0049A6CE B90D000000 mov ecx, $0000000D
0049A6D3 33D2 xor edx, edx
0049A6D5 8B45F8 mov eax, [ebp-$08]
* Reference to: grids.TStringGrid.SetCells(TStringGrid;Integer;Integer;AnsiString);
|
0049A6D8 E897CBFFFF call 00497274
0049A6DD 6A00 push $00
0049A6DF B90D000000 mov ecx, $0000000D
0049A6E4 BA01000000 mov edx, $00000001
0049A6E9 8B45F8 mov eax, [ebp-$08]
* Reference to: grids.TStringGrid.SetCells(TStringGrid;Integer;Integer;AnsiString);
|
0049A6EC E883CBFFFF call 00497274
0049A6F1 6A00 push $00
0049A6F3 B90D000000 mov ecx, $0000000D
0049A6F8 BA02000000 mov edx, $00000002
0049A6FD 8B45F8 mov eax, [ebp-$08]
* Reference to: grids.TStringGrid.SetCells(TStringGrid;Integer;Integer;AnsiString);
|
0049A700 E86FCBFFFF call 00497274
0049A705 6A00 push $00
0049A707 B90D000000 mov ecx, $0000000D
0049A70C BA03000000 mov edx, $00000003
0049A711 8B45F8 mov eax, [ebp-$08]
* Reference to: grids.TStringGrid.SetCells(TStringGrid;Integer;Integer;AnsiString);
|
0049A714 E85BCBFFFF call 00497274
0049A719 6A00 push $00
0049A71B B90D000000 mov ecx, $0000000D
0049A720 BA04000000 mov edx, $00000004
0049A725 8B45F8 mov eax, [ebp-$08]
* Reference to: grids.TStringGrid.SetCells(TStringGrid;Integer;Integer;AnsiString);
|
0049A728 E847CBFFFF call 00497274
0049A72D 68D8A94900 push $0049A9D8
0049A732 B90D000000 mov ecx, $0000000D
0049A737 BA05000000 mov edx, $00000005
0049A73C 8B45F8 mov eax, [ebp-$08]
* Reference to: grids.TStringGrid.SetCells(TStringGrid;Integer;Integer;AnsiString);
|
0049A73F E830CBFFFF call 00497274
0049A744 68D8A94900 push $0049A9D8
0049A749 B90D000000 mov ecx, $0000000D
0049A74E BA06000000 mov edx, $00000006
0049A753 8B45F8 mov eax, [ebp-$08]
* Reference to: grids.TStringGrid.SetCells(TStringGrid;Integer;Integer;AnsiString);
|
0049A756 E819CBFFFF call 00497274
0049A75B 68D8A94900 push $0049A9D8
0049A760 B90D000000 mov ecx, $0000000D
0049A765 BA07000000 mov edx, $00000007
0049A76A 8B45F8 mov eax, [ebp-$08]
* Reference to: grids.TStringGrid.SetCells(TStringGrid;Integer;Integer;AnsiString);
|
0049A76D E802CBFFFF call 00497274
0049A772 68D8A94900 push $0049A9D8
0049A777 B90D000000 mov ecx, $0000000D
0049A77C BA08000000 mov edx, $00000008
0049A781 8B45F8 mov eax, [ebp-$08]
* Reference to: grids.TStringGrid.SetCells(TStringGrid;Integer;Integer;AnsiString);
|
0049A784 E8EBCAFFFF call 00497274
0049A789 68D8A94900 push $0049A9D8
0049A78E B90D000000 mov ecx, $0000000D
0049A793 BA09000000 mov edx, $00000009
0049A798 8B45F8 mov eax, [ebp-$08]
* Reference to: grids.TStringGrid.SetCells(TStringGrid;Integer;Integer;AnsiString);
|
0049A79B E8D4CAFFFF call 00497274
0049A7A0 68D8A94900 push $0049A9D8
0049A7A5 B90D000000 mov ecx, $0000000D
0049A7AA BA0A000000 mov edx, $0000000A
0049A7AF 8B45F8 mov eax, [ebp-$08]
* Reference to: grids.TStringGrid.SetCells(TStringGrid;Integer;Integer;AnsiString);
|
0049A7B2 E8BDCAFFFF call 00497274
0049A7B7 68D8A94900 push $0049A9D8
0049A7BC B90D000000 mov ecx, $0000000D
0049A7C1 BA0B000000 mov edx, $0000000B
0049A7C6 8B45F8 mov eax, [ebp-$08]
* Reference to: grids.TStringGrid.SetCells(TStringGrid;Integer;Integer;AnsiString);
|
0049A7C9 E8A6CAFFFF call 00497274
0049A7CE 59 pop ecx
0049A7CF 59 pop ecx
0049A7D0 5D pop ebp
0049A7D1 C3 ret
*)
end;
procedure TFrmFDBViewer.sub_49A9DC();
begin
BagItemGrid.Cells[0, 0] := 'Index';
BagItemGrid.Cells[1, 0] := 'MakeID';
BagItemGrid.Cells[2, 0] := 'StdIndex';
BagItemGrid.Cells[3, 0] := 'Dura';
end;
procedure TFrmFDBViewer.sub_49AA84();
begin
SaveItemGrid.Cells[0, 0] := 'MakeID';
SaveItemGrid.Cells[1, 0] := 'StdIndex';
SaveItemGrid.Cells[2, 0] := 'Dura';
end;
procedure TFrmFDBViewer.sub_49AB10();
begin
UseMagicGrid.Cells[0, 0] := 'MagIdx';
UseMagicGrid.Cells[1, 0] := 'Level';
UseMagicGrid.Cells[2, 0] := 'Key';
UseMagicGrid.Cells[3, 0] := 'TranPoint';
end;
procedure TFrmFDBViewer.ShowBagItem(nIndex: integer; sName: string; Item: TUserItem);
begin
if Item.wIndex > 0 then begin
BagItemGrid.Cells[0, nIndex] := sName;
BagItemGrid.Cells[1, nIndex] := IntToStr(Item.MakeIndex);
BagItemGrid.Cells[2, nIndex] := IntToStr(Item.wIndex);
BagItemGrid.Cells[3, nIndex] := IntToStr(Item.Dura) + '/' + IntToStr(Item.DuraMax);
end else begin
BagItemGrid.Cells[0, nIndex] := sName;
BagItemGrid.Cells[1, nIndex] := '';
BagItemGrid.Cells[2, nIndex] := '';
BagItemGrid.Cells[3, nIndex] := '';
end;
end;
procedure TFrmFDBViewer.ShowHumanInfo();
//0x049AB9C
var
HumData: pTHumData;
begin
HumData := @ChrRecord.Data;
HumanGrid.Cells[0, 2] := IntToStr(n2F8);
HumanGrid.Cells[1, 2] := HumData.sChrName;
HumanGrid.Cells[2, 2] := HumData.sCurMap;
HumanGrid.Cells[3, 2] := IntToStr(HumData.wCurX);
HumanGrid.Cells[4, 2] := IntToStr(HumData.wCurY);
HumanGrid.Cells[5, 2] := IntToStr(HumData.btDir);
HumanGrid.Cells[6, 2] := IntToStr(HumData.btJob);
HumanGrid.Cells[7, 2] := IntToStr(HumData.btSex);
HumanGrid.Cells[8, 2] := IntToStr(HumData.btHair);
HumanGrid.Cells[9, 2] := IntToStr(HumData.nGold);
HumanGrid.Cells[10, 2] := HumData.sDearName;
HumanGrid.Cells[11, 2] := HumData.sHomeMap;
HumanGrid.Cells[0, 4] := IntToStr(HumData.wHomeX);
HumanGrid.Cells[1, 4] := IntToStr(HumData.wHomeY);
HumanGrid.Cells[2, 4] := IntToStr(HumData.Abil.Level);
HumanGrid.Cells[3, 4] := IntToStr(HumData.Abil.AC);
HumanGrid.Cells[4, 4] := IntToStr(HumData.Abil.MAC);
// HumanGrid.Cells[5,4]:=IntToStr(HumData.Abil.bt49);
HumanGrid.Cells[6, 4] := IntToStr(LoByte(HumData.Abil.DC));
HumanGrid.Cells[7, 4] := IntToStr(HiByte(HumData.Abil.DC));
HumanGrid.Cells[8, 4] := IntToStr(LoByte(HumData.Abil.MC));
HumanGrid.Cells[9, 4] := IntToStr(HiByte(HumData.Abil.MC));
HumanGrid.Cells[10, 4] := IntToStr(LoByte(HumData.Abil.SC));
HumanGrid.Cells[11, 4] := IntToStr(HiByte(HumData.Abil.SC));
// HumanGrid.Cells[0,6]:=IntToStr(HumData.Abil.bt48);
HumanGrid.Cells[1, 6] := IntToStr(HumData.Abil.HP);
HumanGrid.Cells[2, 6] := IntToStr(HumData.Abil.HP);
HumanGrid.Cells[3, 6] := IntToStr(HumData.Abil.MaxMP);
HumanGrid.Cells[4, 6] := IntToStr(HumData.Abil.MaxMP);
// HumanGrid.Cells[5,6]:=IntToStr(HumData.Abil.bt48);
HumanGrid.Cells[6, 6] := IntToStr(HumData.Abil.Exp);
HumanGrid.Cells[7, 6] := IntToStr(HumData.Abil.MaxExp);
HumanGrid.Cells[8, 6] := IntToStr(HumData.nPKPoint);
HumanGrid.Cells[9, 6] := '';
HumanGrid.Cells[10, 6] := HumData.sAccount;
HumanGrid.Cells[11, 6] := DateTimeToStr(ChrRecord.Header.CreateDate);
HumanGrid.Cells[0, 8] := HumData.sDearName;
HumanGrid.Cells[1, 8] := HumData.sMasterName;
HumanGrid.Cells[2, 8] := HumData.sStoragePwd;
HumanGrid.Cells[3, 8] := IntToStr(HumData.btCreditPoint);
end;
//0049B295
procedure TFrmFDBViewer.ShowBagItems();
var
i, ii: integer;
begin
for i := 1 to BagItemGrid.RowCount - 1 do begin
for ii := 0 to BagItemGrid.ColCount - 1 do begin
BagItemGrid.Cells[ii, i] := '';
end;
end;
ShowBagItem(1, 'Dress', ChrRecord.Data.HumItems[0]);
ShowBagItem(2, 'Weapon', ChrRecord.Data.HumItems[1]);
ShowBagItem(3, 'RHand', ChrRecord.Data.HumItems[2]);
ShowBagItem(4, 'Necklace', ChrRecord.Data.HumItems[3]);
ShowBagItem(5, 'Helmet', ChrRecord.Data.HumItems[4]);
ShowBagItem(6, 'LBrace', ChrRecord.Data.HumItems[5]);
ShowBagItem(7, 'RBrace', ChrRecord.Data.HumItems[6]);
ShowBagItem(8, 'LRing', ChrRecord.Data.HumItems[7]);
ShowBagItem(9, 'RRing', ChrRecord.Data.HumItems[8]);
ShowBagItem(10, 'Bujuk', ChrRecord.Data.HumItems[9]);
ShowBagItem(11, 'Belt', ChrRecord.Data.HumItems[10]);
ShowBagItem(12, 'Boots', ChrRecord.Data.HumItems[11]);
ShowBagItem(13, 'Charm', ChrRecord.Data.HumItems[12]);
for i := Low(ChrRecord.Data.BagItems) to High(ChrRecord.Data.BagItems) do begin
ShowBagItem(i + 13, IntToStr(i + 1), ChrRecord.Data.BagItems[i]);
end;
end;
procedure TFrmFDBViewer.ShowUseMagic();
//0x0049B4D8
var
i, ii: integer;
begin
for i := 1 to UseMagicGrid.RowCount - 1 do begin
for ii := 0 to UseMagicGrid.ColCount - 1 do begin
UseMagicGrid.Cells[ii, i] := '';
end;
end;
for I := Low(ChrRecord.Data.Magic) to High(ChrRecord.Data.Magic) do begin
if ChrRecord.Data.Magic[i].wMagIdx <= 0 then break;
UseMagicGrid.Cells[0, i + 1] := IntToStr(ChrRecord.Data.Magic[i].wMagIdx);
UseMagicGrid.Cells[1, i + 1] := IntToStr(ChrRecord.Data.Magic[i].btLevel);
UseMagicGrid.Cells[2, i + 1] := Chr(ChrRecord.Data.Magic[i].btKey);
UseMagicGrid.Cells[3, i + 1] := IntToStr(ChrRecord.Data.Magic[i].nTranPoint);
end;
end;
procedure TFrmFDBViewer.ShowSaveItem();
//0x0049B628
var
i, ii: integer;
begin
for i := 1 to SaveItemGrid.RowCount - 1 do begin
for ii := 0 to SaveItemGrid.ColCount - 1 do begin
SaveItemGrid.Cells[ii, i] := '';
end;
end;
for I := Low(ChrRecord.Data.StorageItems) to High(ChrRecord.Data.StorageItems) do
begin
if ChrRecord.Data.StorageItems[i].wIndex <= 0 then Continue;
SaveItemGrid.Cells[0, i + 1] := IntToStr(ChrRecord.Data.StorageItems[i].MakeIndex);
SaveItemGrid.Cells[1, i + 1] := IntToStr(ChrRecord.Data.StorageItems[i].wIndex);
SaveItemGrid.Cells[2, i + 1] :=
IntToStr(ChrRecord.Data.StorageItems[i].Dura) + '/' +
IntToStr(ChrRecord.Data.StorageItems[i].DuraMax);
end;
end;
procedure TFrmFDBViewer._PROC_0049B9E4(Sender: TObject);
begin
(*
0049B9E4 000400 add [eax+eax], al
0049B9E7 00558B add [ebp-$75], dl
0049B9EA EC in al, dx
0049B9EB 83C4F4 add esp, -$0C
0049B9EE 8955F4 mov [ebp-$0C], edx
0049B9F1 8945F8 mov [ebp-$08], eax
0049B9F4 8B4508 mov eax, [ebp+$08]
0049B9F7 8B40FC mov eax, [eax-$04]
* Reference to control TFrmFDBViewer.BagItemGrid : TStringGrid
|
0049B9FA 8B80D8020000 mov eax, [eax+$02D8]
0049BA00 8945FC mov [ebp-$04], eax
0049BA03 8BE5 mov esp, ebp
0049BA05 5D pop ebp
0049BA06 C3 ret
*)
end;
procedure TFrmFDBViewer._PROC_0049BB54(Sender: TObject);
begin
(*
0049BB54 55 push ebp
0049BB55 8BEC mov ebp, esp
0049BB57 33C0 xor eax, eax
0049BB59 55 push ebp
* Possible String Reference to: '闁z
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -