index 6c9e86326551d7b0d24ba7e8151aed028e565c01..4ea7beb5918f081fdf18b595ab3091b371a3c880 100644 (file)
--- a/src/shared/MAPREADER.pas
+++ b/src/shared/MAPREADER.pas
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*)
-{$MODE DELPHI}
+{$INCLUDE a_modes.inc}
unit MAPREADER;
{
var
TempDataBlocks: TDataBlocksArray;
a: Integer;
- b, Size: LongWord;
+ b, Size: NativeUInt;
begin
Result := nil;
begin
SetLength(Result, Length(Result)+1);
//CopyMemory(@Result[High(Result)], Pointer(LongWord(TempDataBlocks[a].Data)+b*size), size);
- mb_Read_TAreaRec_1(Result[High(Result)], Pointer(LongWord(TempDataBlocks[a].Data)+b*size)^, size);
+ mb_Read_TAreaRec_1(Result[High(Result)], Pointer(NativeUInt(TempDataBlocks[a].Data)+b*size)^, size);
end;
TempDataBlocks := nil;
var
TempDataBlocks: TDataBlocksArray;
a: Integer;
- b, Size: LongWord;
+ b, Size: NativeUInt;
begin
Result := nil;
begin
SetLength(Result, Length(Result)+1);
//CopyMemory(@Result[High(Result)], Pointer(LongWord(TempDataBlocks[a].Data)+b*size), size);
- mb_Read_TItemRec_1(Result[High(Result)], Pointer(LongWord(TempDataBlocks[a].Data)+b*size)^, size);
+ mb_Read_TItemRec_1(Result[High(Result)], Pointer(NativeUInt(TempDataBlocks[a].Data)+b*size)^, size);
end;
TempDataBlocks := nil;
var
TempDataBlocks: TDataBlocksArray;
a: Integer;
- b, Size: LongWord;
+ b, Size: NativeUInt;
begin
Result := nil;
begin
SetLength(Result, Length(Result)+1);
//CopyMemory(@Result[High(Result)], Pointer(LongWord(TempDataBlocks[a].Data)+b*size), size);
- mb_Read_TMonsterRec_1(Result[High(Result)], Pointer(LongWord(TempDataBlocks[a].Data)+b*size)^, size);
+ mb_Read_TMonsterRec_1(Result[High(Result)], Pointer(NativeUInt(TempDataBlocks[a].Data)+b*size)^, size);
end;
TempDataBlocks := nil;
var
TempDataBlocks: TDataBlocksArray;
a: Integer;
- b, Size: LongWord;
+ b, Size: NativeUInt;
begin
Result := nil;
begin
SetLength(Result, Length(Result)+1);
//CopyMemory(@Result[High(Result)], Pointer(LongWord(TempDataBlocks[a].Data)+b*size), size);
- mb_Read_TPanelRec_1(Result[High(Result)], Pointer(LongWord(TempDataBlocks[a].Data)+b*size)^, size);
+ mb_Read_TPanelRec_1(Result[High(Result)], Pointer(NativeUInt(TempDataBlocks[a].Data)+b*size)^, size);
end;
TempDataBlocks := nil;
var
TempDataBlocks: TDataBlocksArray;
a: Integer;
- b, Size: LongWord;
+ b, Size: NativeUInt;
begin
Result := nil;
for b := 0 to (TempDataBlocks[a].Block.BlockSize div size)-1 do
begin
SetLength(Result, Length(Result)+1);
- //CopyMemory(@Result[High(Result)], Pointer(LongWord(TempDataBlocks[a].Data)+b*size), size);
- mb_Read_TTextureRec_1(Result[High(Result)], Pointer(LongWord(TempDataBlocks[a].Data)+b*size)^, size);
+ //CopyMemory(@Result[High(Result)], Pointer(LongWord(TempDataBlocks[a].Data)+b*size), size);
+ mb_Read_TTextureRec_1(Result[High(Result)], Pointer(NativeUInt(TempDataBlocks[a].Data)+b*size)^, size);
end;
TempDataBlocks := nil;
var
TempDataBlocks: TDataBlocksArray;
a: Integer;
- b, Size: LongWord;
+ b: NativeUInt;
+ Size: LongWord;
trdata: TTriggerData;
begin
Result := nil;
begin
SetLength(Result, Length(Result)+1);
//CopyMemory(@Result[High(Result)], Pointer(LongWord(TempDataBlocks[a].Data)+b*size), size);
- mb_Read_TTriggerRec_1(Result[High(Result)], Pointer(LongWord(TempDataBlocks[a].Data)+b*size)^, size);
+ mb_Read_TTriggerRec_1(Result[High(Result)], Pointer(NativeUInt(TempDataBlocks[a].Data)+b*size)^, size);
if (Result[High(Result)].TriggerType <> 0) then
begin
// preprocess trigger data
if FDataBlocks[a].Block.BlockType = BlocksType then
begin
SetLength(Result, Length(Result)+1);
- Result[High(Result)] := FDataBlocks[a];
+ Result[High(Result)] := FDataBlocks[a];
end;
end;
function TMapReader.LoadMap(Data: Pointer): Boolean;
var
- adr: LongWord;
+ adr: NativeUInt;
_id: Integer;
Sign: array[0..2] of Char;
Ver: Byte;
end;
adr := 3;
- CopyMemory(@Ver, Pointer(LongWord(Data)+adr), 1);
+ CopyMemory(@Ver, Pointer(NativeUInt(Data)+adr), 1);
FVersion := Ver;
if Ver > HandledVersion() then
begin
SetLength(FDataBlocks, Length(FDataBlocks)+1);
_id := High(FDataBlocks);
- CopyMemory(@FDataBlocks[_id].Block, Pointer(LongWord(Data)+adr), SizeOf(TBlock));
+ CopyMemory(@FDataBlocks[_id].Block, Pointer(NativeUInt(Data)+adr), SizeOf(TBlock));
adr := adr+SizeOf(TBlock);
FDataBlocks[_id].Data := GetMemory(FDataBlocks[_id].Block.BlockSize);
- CopyMemory(FDataBlocks[_id].Data, Pointer(LongWord(Data)+adr), FDataBlocks[_id].Block.BlockSize);
+ CopyMemory(FDataBlocks[_id].Data, Pointer(NativeUInt(Data)+adr), FDataBlocks[_id].Block.BlockSize);
adr := adr+FDataBlocks[_id].Block.BlockSize;
until FDataBlocks[_id].Block.BlockType = BLOCK_NONE;