- Several code cleanups
- Fixed TArt.RefreshBuffer using the wrong variable (j <> i) - Suppressed some hints
This commit is contained in:
@@ -1,129 +1,129 @@
|
||||
(*
|
||||
* CDDL HEADER START
|
||||
*
|
||||
* The contents of this file are subject to the terms of the
|
||||
* Common Development and Distribution License, Version 1.0 only
|
||||
* (the "License"). You may not use this file except in compliance
|
||||
* with the License.
|
||||
*
|
||||
* You can obtain a copy of the license at
|
||||
* http://www.opensource.org/licenses/cddl1.php.
|
||||
* See the License for the specific language governing permissions
|
||||
* and limitations under the License.
|
||||
*
|
||||
* When distributing Covered Code, include this CDDL HEADER in each
|
||||
* file and include the License file at
|
||||
* http://www.opensource.org/licenses/cddl1.php. If applicable,
|
||||
* add the following below this CDDL HEADER, with the fields enclosed
|
||||
* by brackets "[]" replaced with your own identifying * information:
|
||||
* Portions Copyright [yyyy] [name of copyright owner]
|
||||
*
|
||||
* CDDL HEADER END
|
||||
*
|
||||
*
|
||||
* Portions Copyright 2009 Andreas Schneider
|
||||
*)
|
||||
unit UMulManager;
|
||||
|
||||
interface
|
||||
|
||||
uses
|
||||
SysUtils, UMulProvider, UTileDataProvider, UArtProvider, UGumpProvider,
|
||||
UTexmapProvider, UHueProvider, URadarProvider, UAnimDataProvider;
|
||||
|
||||
type
|
||||
|
||||
{ TMulManager }
|
||||
|
||||
TMulManager = class
|
||||
destructor Destroy; override;
|
||||
protected
|
||||
FArtProvider: TArtProvider;
|
||||
FGumpProvider: TGumpProvider;
|
||||
FTexmapProvider: TTexmapProvider;
|
||||
FTileDataProvider: TTileDataProvider;
|
||||
FAnimDataProvider: TAnimDataProvider;
|
||||
FHueProvider: THueProvider;
|
||||
FRadarProvider: TRadarProvider;
|
||||
public
|
||||
procedure RegisterArtProvider(AArtProvider: TArtProvider);
|
||||
procedure RegisterGumpProvider(AGumpProvider: TGumpProvider);
|
||||
procedure RegisterTexmapProvider(ATexmapProvider: TTexmapProvider);
|
||||
procedure RegisterTileDataProvider(ATileDataProvider: TTileDataProvider);
|
||||
procedure RegisterAnimDataProvider(AAnimDataProvider: TAnimDataProvider);
|
||||
procedure RegisterHueProvider(AHueProvider: THueProvider);
|
||||
procedure RegisterRadarProvider(ARadarProvider: TRadarProvider);
|
||||
property ArtProvider: TArtProvider read FArtProvider;
|
||||
property GumpProvider: TGumpProvider read FGumpProvider;
|
||||
property TexmapProvider: TTexmapProvider read FTexmapProvider;
|
||||
property TileDataProvider: TTileDataProvider read FTileDataProvider;
|
||||
property AnimDataProvider: TAnimDataProvider read FAnimDataProvider;
|
||||
property HueProvider: THueProvider read FHueProvider;
|
||||
property RadarProvider: TRadarPRovider read FRadarProvider;
|
||||
end;
|
||||
|
||||
implementation
|
||||
|
||||
{ TMulManager }
|
||||
|
||||
destructor TMulManager.Destroy;
|
||||
begin
|
||||
RegisterArtProvider(nil);
|
||||
RegisterGumpProvider(nil);
|
||||
RegisterTexmapProvider(nil);
|
||||
RegisterTileDataProvider(nil);
|
||||
RegisterHueProvider(nil);
|
||||
RegisterRadarProvider(nil);
|
||||
inherited Destroy;
|
||||
end;
|
||||
|
||||
procedure TMulManager.RegisterArtProvider(
|
||||
AArtProvider: TArtProvider);
|
||||
begin
|
||||
FreeAndNil(FArtProvider);
|
||||
FArtProvider := AArtProvider;
|
||||
end;
|
||||
|
||||
procedure TMulManager.RegisterGumpProvider(
|
||||
AGumpProvider: TGumpProvider);
|
||||
begin
|
||||
FreeAndNil(FGumpProvider);
|
||||
FGumpProvider := AGumpProvider;
|
||||
end;
|
||||
|
||||
procedure TMulManager.RegisterHueProvider(
|
||||
AHueProvider: THueProvider);
|
||||
begin
|
||||
FreeAndNil(FHueProvider);
|
||||
FHueProvider := AHueProvider;
|
||||
end;
|
||||
|
||||
procedure TMulManager.RegisterRadarProvider(
|
||||
ARadarProvider: TRadarProvider);
|
||||
begin
|
||||
FreeAndNil(FRadarProvider);
|
||||
FRadarProvider := ARadarProvider;
|
||||
end;
|
||||
|
||||
procedure TMulManager.RegisterTexmapProvider(
|
||||
ATexmapProvider: TTexmapProvider);
|
||||
begin
|
||||
FreeAndNil(FTexmapProvider);
|
||||
FTexmapProvider := ATexmapProvider;
|
||||
end;
|
||||
|
||||
procedure TMulManager.RegisterTileDataProvider(
|
||||
ATileDataProvider: TTileDataProvider);
|
||||
begin
|
||||
FreeAndNil(FTileDataProvider);
|
||||
FTileDataProvider := ATileDataProvider;
|
||||
end;
|
||||
|
||||
procedure TMulManager.RegisterAnimDataProvider(
|
||||
AAnimDataProvider: TAnimDataProvider);
|
||||
begin
|
||||
FreeAndNil(FAnimDataProvider);
|
||||
FAnimDataProvider := AAnimDataProvider;
|
||||
end;
|
||||
|
||||
end.
|
||||
(*
|
||||
* CDDL HEADER START
|
||||
*
|
||||
* The contents of this file are subject to the terms of the
|
||||
* Common Development and Distribution License, Version 1.0 only
|
||||
* (the "License"). You may not use this file except in compliance
|
||||
* with the License.
|
||||
*
|
||||
* You can obtain a copy of the license at
|
||||
* http://www.opensource.org/licenses/cddl1.php.
|
||||
* See the License for the specific language governing permissions
|
||||
* and limitations under the License.
|
||||
*
|
||||
* When distributing Covered Code, include this CDDL HEADER in each
|
||||
* file and include the License file at
|
||||
* http://www.opensource.org/licenses/cddl1.php. If applicable,
|
||||
* add the following below this CDDL HEADER, with the fields enclosed
|
||||
* by brackets "[]" replaced with your own identifying * information:
|
||||
* Portions Copyright [yyyy] [name of copyright owner]
|
||||
*
|
||||
* CDDL HEADER END
|
||||
*
|
||||
*
|
||||
* Portions Copyright 2009 Andreas Schneider
|
||||
*)
|
||||
unit UMulManager;
|
||||
|
||||
interface
|
||||
|
||||
uses
|
||||
SysUtils, UTileDataProvider, UArtProvider, UGumpProvider, UTexmapProvider,
|
||||
UHueProvider, URadarProvider, UAnimDataProvider;
|
||||
|
||||
type
|
||||
|
||||
{ TMulManager }
|
||||
|
||||
TMulManager = class
|
||||
destructor Destroy; override;
|
||||
protected
|
||||
FArtProvider: TArtProvider;
|
||||
FGumpProvider: TGumpProvider;
|
||||
FTexmapProvider: TTexmapProvider;
|
||||
FTileDataProvider: TTileDataProvider;
|
||||
FAnimDataProvider: TAnimDataProvider;
|
||||
FHueProvider: THueProvider;
|
||||
FRadarProvider: TRadarProvider;
|
||||
public
|
||||
procedure RegisterArtProvider(AArtProvider: TArtProvider);
|
||||
procedure RegisterGumpProvider(AGumpProvider: TGumpProvider);
|
||||
procedure RegisterTexmapProvider(ATexmapProvider: TTexmapProvider);
|
||||
procedure RegisterTileDataProvider(ATileDataProvider: TTileDataProvider);
|
||||
procedure RegisterAnimDataProvider(AAnimDataProvider: TAnimDataProvider);
|
||||
procedure RegisterHueProvider(AHueProvider: THueProvider);
|
||||
procedure RegisterRadarProvider(ARadarProvider: TRadarProvider);
|
||||
property ArtProvider: TArtProvider read FArtProvider;
|
||||
property GumpProvider: TGumpProvider read FGumpProvider;
|
||||
property TexmapProvider: TTexmapProvider read FTexmapProvider;
|
||||
property TileDataProvider: TTileDataProvider read FTileDataProvider;
|
||||
property AnimDataProvider: TAnimDataProvider read FAnimDataProvider;
|
||||
property HueProvider: THueProvider read FHueProvider;
|
||||
property RadarProvider: TRadarPRovider read FRadarProvider;
|
||||
end;
|
||||
|
||||
implementation
|
||||
|
||||
{ TMulManager }
|
||||
|
||||
destructor TMulManager.Destroy;
|
||||
begin
|
||||
RegisterArtProvider(nil);
|
||||
RegisterGumpProvider(nil);
|
||||
RegisterTexmapProvider(nil);
|
||||
RegisterTileDataProvider(nil);
|
||||
RegisterHueProvider(nil);
|
||||
RegisterRadarProvider(nil);
|
||||
inherited Destroy;
|
||||
end;
|
||||
|
||||
procedure TMulManager.RegisterArtProvider(
|
||||
AArtProvider: TArtProvider);
|
||||
begin
|
||||
FreeAndNil(FArtProvider);
|
||||
FArtProvider := AArtProvider;
|
||||
end;
|
||||
|
||||
procedure TMulManager.RegisterGumpProvider(
|
||||
AGumpProvider: TGumpProvider);
|
||||
begin
|
||||
FreeAndNil(FGumpProvider);
|
||||
FGumpProvider := AGumpProvider;
|
||||
end;
|
||||
|
||||
procedure TMulManager.RegisterHueProvider(
|
||||
AHueProvider: THueProvider);
|
||||
begin
|
||||
FreeAndNil(FHueProvider);
|
||||
FHueProvider := AHueProvider;
|
||||
end;
|
||||
|
||||
procedure TMulManager.RegisterRadarProvider(
|
||||
ARadarProvider: TRadarProvider);
|
||||
begin
|
||||
FreeAndNil(FRadarProvider);
|
||||
FRadarProvider := ARadarProvider;
|
||||
end;
|
||||
|
||||
procedure TMulManager.RegisterTexmapProvider(
|
||||
ATexmapProvider: TTexmapProvider);
|
||||
begin
|
||||
FreeAndNil(FTexmapProvider);
|
||||
FTexmapProvider := ATexmapProvider;
|
||||
end;
|
||||
|
||||
procedure TMulManager.RegisterTileDataProvider(
|
||||
ATileDataProvider: TTileDataProvider);
|
||||
begin
|
||||
FreeAndNil(FTileDataProvider);
|
||||
FTileDataProvider := ATileDataProvider;
|
||||
end;
|
||||
|
||||
procedure TMulManager.RegisterAnimDataProvider(
|
||||
AAnimDataProvider: TAnimDataProvider);
|
||||
begin
|
||||
FreeAndNil(FAnimDataProvider);
|
||||
FAnimDataProvider := AAnimDataProvider;
|
||||
end;
|
||||
|
||||
end.
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
* CDDL HEADER END
|
||||
*
|
||||
*
|
||||
* Portions Copyright 2007 Andreas Schneider
|
||||
* Portions Copyright 2009 Andreas Schneider
|
||||
*)
|
||||
unit URadarProvider;
|
||||
|
||||
@@ -33,7 +33,10 @@ uses
|
||||
SysUtils, Classes, UBufferedStreams;
|
||||
|
||||
type
|
||||
TRadarProvider = class(TObject)
|
||||
|
||||
{ TRadarProvider }
|
||||
|
||||
TRadarProvider = class
|
||||
constructor Create; overload; virtual;
|
||||
constructor Create(AData: TStream; AReadOnly: Boolean = False); overload; virtual;
|
||||
constructor Create(AData: string; AReadOnly: Boolean = False); overload; virtual;
|
||||
@@ -77,18 +80,18 @@ end;
|
||||
|
||||
destructor TRadarProvider.Destroy;
|
||||
begin
|
||||
if Assigned(FData) then FreeAndNil(FData);
|
||||
FreeAndNil(FData);
|
||||
inherited Destroy;
|
||||
end;
|
||||
|
||||
function TRadarProvider.GetColor(AID: Integer): Word;
|
||||
begin
|
||||
Result := 0;
|
||||
if (AID >= 0) and (AID < $10000) then
|
||||
begin
|
||||
FData.Position := SizeOf(Word) * AID;
|
||||
FData.Read(Result, SizeOf(Word));
|
||||
end else
|
||||
Result := 0;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TRadarProvider.SetColor(AID: Integer; AColor: Word);
|
||||
|
||||
Reference in New Issue
Block a user