⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 walker.dpr

📁 N年前有个法国小组用Delphi写了一个2D网游(AD&D类型)
💻 DPR
字号:
program Walker;

{
 projet ADK-ISO (c)2002-2003 Paul TOTH <tothpaul@free.fr>

 http://www.web-synergy.net/naug-land/

}

uses
  Windows,
  Messages,
  Classes,
  SysUtils,
  DXError in '..\..\DirectX\DXError.pas',
  MiniDX in '..\..\DirectX\MiniDX.pas',
  ADKRender in '..\..\ISO\ADKRender.pas',
  ADKCompress in '..\..\ISO\ADKCompress.pas',
  ADKImages in '..\..\ISO\ADKImages.pas',
  ADKSprites in '..\..\ISO\ADKSprites.pas',
  ADKMaps in '..\..\ISO\ADKMaps.pas',
  ADKDepth in '..\..\ISO\ADKDepth.pas',
  ADKWalkers in '..\..\ISO\ADKWalkers.pas',
  ADKData in '..\..\ISO\ADKData.pas',
  ADKIniLoader in '..\..\ISO\ADKIniLoader.pas',
  ADKObjects in '..\..\ISO\ADKObjects.pas',
  ADKScreens in '..\..\ISO\ADKScreens.pas',
  ADKPathFinder in '..\..\ISO\ADKPathFinder.pas',
  ADKParticules in '..\..\ISO\ADKParticules.pas',
  ADKVideo in 'ADKVideo.pas',
  ADKGUI in 'ADKGUI.pas',
  ADKMemo in 'ADKMemo.pas';

{$R *.res}

procedure FocusStep(Walker:TWalker);
begin
 if MouseDown then Walker.OnClick(MouseX,MouseY,MouseButton) else Walker.StepIt;
end;

var
 x,y:integer;
 sprites:TSprites;
 i,j:integer;
 s,ss:string;
 Pnj:TList;
 ticks,t:cardinal;

begin
 try
  InitData;
  LoadGUI;
  // test
  for i:=1 to 100 do
   Chat.Lines.add(IntToStr(i));

  s:=StringProperty('Path','Root');
  ss:=StringProperty('Path','Images');
  ImageLib.LoadFromFile(s+ss+StringProperty('Startup','Images'));
  ss:=StringProperty('Path','Maps');
  Map.LoadFromFile(s+ss+StringProperty('Startup','Map'));
  x:=IntegerProperty('Startup','StartX');
  y:=IntegerProperty('Startup','StartY');

  sprites:=GetSprites(StringProperty('Startup','Player'));
  Focus:=TWalker.Create(x,y,sprites,DirS);
//  Focus.OnStep:=FocusStep;

  pnj:=TList.Create;
  for i:=1 to IntegerProperty('Startup','pnj') do begin
   s:='pnj'+IntToStr(i);
   ss:=StringProperty(s,'Name');
   if ss<>'' then begin
    sprites:=GetSprites(ss);
    if sprites<>nil then begin
     for j:=0 to IntegerProperty(s,'Count')-1 do pnj.Add(TWalker.Create(x,y,sprites,DirE));
    end;
   end;
  end;

  ClientRect:=Rect(0,0,GWidth,GHeight);
  SetupDX;
  try
   ticks:=GetTickCount;
   while ProcessMessages do begin
    t:=GetTickCount;
    // mise 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -