--- a/hedgewars/hwengine.pas Fri Nov 30 22:23:26 2012 -0500
+++ b/hedgewars/hwengine.pas Fri Nov 30 23:04:10 2012 -0500
@@ -543,21 +543,37 @@
procedure GetParams;
var tmpInt: LongInt;
begin
- if (ParamCount < 3) then
- begin
- DisplayUsage();
- GameType:= gmtSyntax;
- end
+ if (ParamCount < 2) then
+ GameType:= gmtSyntax
else
- if (ParamCount = 3) and (ParamStr(3) = 'landpreview') then
+ if (ParamCount >= 2) then
+ begin
+ UserPathPrefix:= ParamStr(1);
+ PathPrefix:= ParamStr(2)
+ end;
+ if (ParamCount >= 3) then
+ recordFileName:= ParamStr(3);
+ if (ParamCount = 2) or
+ ((ParamCount >= 3) and (Copy(recordFileName,1,2) = '--')) then
+ begin
+ recordFileName := PathPrefix;
+ PathPrefix := UserPathPrefix;
+ startIndex := 3;
+ WriteLn(stdout,'defaulting UserPathPrefix')
+ end
+ else
+ startIndex := 4;
+ if (ParamCount = startIndex) and
+ (ParamStr(startIndex) = 'landpreview') then
begin
ipcPort:= StrToInt(ParamStr(2));
GameType:= gmtLandPreview;
end
else
begin
- if (ParamCount = 3) and (ParamStr(3) = '--stats-only') then
- playReplayFileWithParameters()
+ if (ParamCount = startIndex) and
+ (ParamStr(startIndex) = '--stats-only') then
+ playReplayFileWithParameters(startIndex)
else
if ParamCount = cDefaultParamNum then
internalStartGameWithParameters()
@@ -566,7 +582,7 @@
internalStartVideoRecordingWithParameters()
{$ENDIF}
else
- playReplayFileWithParameters();
+ playReplayFileWithParameters(startIndex);
end
end;