sherwood5 发表于 2011-4-3 15:08:38

请教遍历NPC窗口菜单名称

如下代码,列表框只能遍历出最后一个菜单名称,如果单独给I赋值,其它菜单也能遍历出来,但我用同样方法遍历怪物都能全部遍历出来,请大大们帮下
procedure TForm1.Button41Click(Sender: TObject);
var
a,b,c,d:PDWORD ;
i:Integer ;
nl:string ;
begin
//64C81C+E0+08 NPC菜单数量
//[[[[+10]+4]+4+i*4]+C0]
try
a:=Pointer($64C81C);
b:=Pointer (a^+$e0);
b:=Pointer (b^+$08);//NPC菜单数量
a:=Pointer(a^+$10);
a:=Pointer(a^+$4);
for i:=1 to b^ do
c:=Pointer(a^+4+i*$4);
d:=Pointer(C^+$C0); //菜单名称
nl:=PChar(d^) ;
ListBox8.Items.Add(nl) ;
except
end;
end;

ツ未ヰ来ャ 发表于 2011-4-3 15:09:01

for 下面用 begin end 把相应代码圈起来.否则FOR只对下一行代码生效.所以你FOR了半天 取到的都是最后一个地址.

sherwood5 发表于 2011-4-3 15:09:12

谢谢,小题大错,没注意,非常感谢!

zhong1980 发表于 2011-7-19 11:30:51

回复 3# sherwood5


    哦哦,看看看看
页: [1]
查看完整版本: 请教遍历NPC窗口菜单名称