EditorDir := ExtractFilePath(Application.ExeName);
e_InitLog(EditorDir+'Editor.log', WM_NEWFILE);
+ e_WriteLog('Doom 2D: Forever Editor version ' + EDITOR_VERSION, MSG_NOTIFY);
+ e_WriteLog('Build date: ' + EDITOR_BUILDDATE + ' ' + EDITOR_BUILDTIME, MSG_NOTIFY);
+ e_WriteLog('Build hash: ' + g_GetBuildHash(), MSG_NOTIFY);
+ e_WriteLog('Build by: ' + g_GetBuilderName(), MSG_NOTIFY);
slInvalidTextures := TStringList.Create;
uses
LCLIntf, LCLType, LMessages;
+const
+ EDITOR_VERSION = '0.667';
+ EDITOR_BUILDDATE = {$I %DATE%};
+ EDITOR_BUILDTIME = {$I %TIME%};
+
Type
String16 = String[16];
Char16 = packed array[0..15] of Char;
TDirection = (D_LEFT, D_RIGHT);
+function g_GetBuilderName (): AnsiString;
+function g_GetBuildHash (full: Boolean = True): AnsiString;
+
function g_Collide(X1, Y1: Integer; Width1, Height1: Word;
X2, Y2: Integer; Width2, Height2: Word): Boolean;
function g_CollidePoint(X, Y, X2, Y2: Integer; Width, Height: Word): Boolean;
uses
Math, g_map, MAPDEF, SysUtils;
+{$PUSH}
+{$WARN 2054 OFF} // unknwon env var
+{$WARN 6018 OFF} // unreachable code
+function g_GetBuilderName (): AnsiString;
+begin
+ if {$I %D2DF_BUILD_USER%} <> '' then
+ result := {$I %D2DF_BUILD_USER%} // custom
+ else if {$I %USER%} <> '' then
+ result := {$I %USER%} // unix username
+ else if {$I %USERNAME%} <> '' then
+ result := {$I %USERNAME%} // windows username
+ else
+ result := 'unknown'
+end;
+
+function g_GetBuildHash (full: Boolean = True): AnsiString;
+begin
+ if {$I %D2DF_BUILD_HASH%} <> '' then
+ if full then
+ result := {$I %D2DF_BUILD_HASH%}
+ else
+ result := Copy({$I %D2DF_BUILD_HASH%}, 1, 7)
+ else
+ result := 'custom build'
+end;
+{$POP}
+
procedure g_ChangeDir(var dir: TDirection);
begin
if dir = D_LEFT then
end;
procedure SetupCaptions();
-var
- i: Integer;
-
+ var i: Integer; s: AnsiString;
begin
// Главная форма:
with MainForm do
begin
// Заголовок:
- FormCaption := _lc[I_EDITOR_TITLE];
+ s := g_GetBuildHash(false);
+ if s = 'custom build' then
+ s := s + ' by ' + g_GetBuilderName() + ' ' + EDITOR_BUILDDATE + ' ' + EDITOR_BUILDTIME;
+ FormCaption := _lc[I_EDITOR_TITLE] + ' (' + s + ')';
i := Pos('-', Caption);
if i > 0 then
begin