hedgewars/ArgParsers.inc
changeset 7151 ec15d9e1a7e3
parent 7021 0c75512a8920
child 7180 53ffc8853008
equal deleted inserted replaced
7148:c7ee9592c9a1 7151:ec15d9e1a7e3
    22 begin
    22 begin
    23     if ParamStr(3) = '--stats-only' then
    23     if ParamStr(3) = '--stats-only' then
    24         playReplayFileWithParameters()
    24         playReplayFileWithParameters()
    25     else
    25     else
    26         begin
    26         begin
    27         val(ParamStr(2), ipcPort);
    27         ipcPort:= StrToInt(ParamStr(2));
    28         GameType:= gmtLandPreview;
    28         GameType:= gmtLandPreview;
    29         if ParamStr(3) <> 'landpreview' then
    29         if ParamStr(3) <> 'landpreview' then
    30             GameType:= gmtSyntax
    30             GameType:= gmtSyntax
    31         end
    31         end
    32 end;
    32 end;
    33 
    33 
    34 procedure internalStartGameWithParameters();
    34 procedure internalStartGameWithParameters();
    35 var tmp: LongInt;
    35 var tmp: LongInt;
    36 begin
    36 begin
    37     UserPathPrefix:= ParamStr(1);
    37     UserPathPrefix:= ParamStr(1);
    38     val(ParamStr(2), cScreenWidth);
    38     cScreenWidth:= StrToInt(ParamStr(2));
    39     val(ParamStr(3), cScreenHeight);
    39     cScreenHeight:= StrToInt(ParamStr(3));
    40     val(ParamStr(4), cBits);
    40     cBits:= StrToInt(ParamStr(4));
    41     val(ParamStr(5), ipcPort);
    41     ipcPort:= StrToInt(ParamStr(5));
    42     cFullScreen:= ParamStr(6) = '1';
    42     cFullScreen:= ParamStr(6) = '1';
    43     SetSound(ParamStr(7) = '1');
    43     SetSound(ParamStr(7) = '1');
    44     SetMusic(ParamStr(8) = '1');
    44     SetMusic(ParamStr(8) = '1');
    45     val(ParamStr(9), tmp);
    45     SetVolume(StrToInt(ParamStr(9)));
    46     SetVolume(tmp);
    46     cTimerInterval:= StrToInt(ParamStr(10));
    47     val(ParamStr(10), cTimerInterval);
       
    48     PathPrefix:= ParamStr(11);
    47     PathPrefix:= ParamStr(11);
    49     cShowFPS:= ParamStr(12) = '1';
    48     cShowFPS:= ParamStr(12) = '1';
    50     cAltDamage:= ParamStr(13) = '1';
    49     cAltDamage:= ParamStr(13) = '1';
    51     UserNick:= DecodeBase64(ParamStr(14));
    50     UserNick:= DecodeBase64(ParamStr(14));
    52     val(ParamStr(15), cReducedQuality);
    51     cReducedQuality:= StrToInt(ParamStr(15));
    53     val(ParamStr(16), tmp);
    52     tmp:= StrToInt(ParamStr(16));
    54     GrayScale:= false;
    53     GrayScale:= false;
    55     if (tmp > 9) and (tmp < 16) then 
    54     if (tmp > 9) and (tmp < 16) then 
    56         begin
    55         begin
    57         GrayScale:= true;
    56         GrayScale:= true;
    58         cStereoMode:= TStereoMode(max(0, min(ord(high(TStereoMode)), tmp-9)))
    57         cStereoMode:= TStereoMode(max(0, min(ord(high(TStereoMode)), tmp-9)))
    70     cScreenHeight:= screenHeight;
    69     cScreenHeight:= screenHeight;
    71     cBits:= bitsStr
    70     cBits:= bitsStr
    72 end;
    71 end;
    73 
    72 
    74 procedure setVideoWithParameters(screenWidthParam: string; screenHeightParam: string; bitsParam: string);
    73 procedure setVideoWithParameters(screenWidthParam: string; screenHeightParam: string; bitsParam: string);
    75 var screenWidthAsInt, screenHeightAsInt, bitsStrAsInt: LongInt;
    74 var screenWidthAsInt, screenHeightAsInt, bitsStrAsInt, c: LongInt;
    76 begin
    75 begin
    77     val(screenWidthParam, screenWidthAsInt);
    76     val(screenWidthParam, screenWidthAsInt, c);
    78     val(screenHeightParam, screenHeightAsInt);
    77     val(screenHeightParam, screenHeightAsInt, c);
    79     val(bitsParam, bitsStrAsInt);
    78     val(bitsParam, bitsStrAsInt, c);
    80     setVideo(screenWidthAsInt,screenHeightAsInt,bitsStrAsInt)
    79     setVideo(screenWidthAsInt,screenHeightAsInt,bitsStrAsInt)
    81 end;
    80 end;
    82 
    81 
    83 procedure setOtherOptions(languageFile: string; fullScreen: boolean);
    82 procedure setOtherOptions(languageFile: string; fullScreen: boolean);
    84 begin
    83 begin
   106     SetMusic(musicEnabled);
   105     SetMusic(musicEnabled);
   107     SetSound(soundEnabled);
   106     SetSound(soundEnabled);
   108 end;
   107 end;
   109 
   108 
   110 procedure setAudioWithParameters(initialVolumeParam: string; musicEnabledParam: string; soundEnabledParam: string);
   109 procedure setAudioWithParameters(initialVolumeParam: string; musicEnabledParam: string; soundEnabledParam: string);
   111 var initialVolumeAsInt: LongInt;
   110 var initialVolumeAsInt, c: LongInt;
   112     musicEnabled, soundEnabled: boolean;
   111     musicEnabled, soundEnabled: boolean;
   113 begin
   112 begin
   114     val(initialVolumeParam, initialVolumeAsInt);
   113     val(initialVolumeParam, initialVolumeAsInt, c);
   115     musicEnabled:= musicEnabledParam = '1';
   114     musicEnabled:= musicEnabledParam = '1';
   116     soundEnabled:= soundEnabledParam = '1';
   115     soundEnabled:= soundEnabledParam = '1';
   117     setAudio(initialVolumeAsInt,musicEnabled, soundEnabled)
   116     setAudio(initialVolumeAsInt,musicEnabled, soundEnabled)
   118 end;
   117 end;
   119 
   118 
   137 procedure setAllOptionsWithParameters(screenWidthParam:string; screenHeightParam:string; bitsParam:string;
   136 procedure setAllOptionsWithParameters(screenWidthParam:string; screenHeightParam:string; bitsParam:string;
   138                                       initialVolumeParam:string; musicEnabledParam:string; soundEnabledParam:string;
   137                                       initialVolumeParam:string; musicEnabledParam:string; soundEnabledParam:string;
   139                                       languageFileParam:string; fullScreenParam:string; showFPSParam:string;
   138                                       languageFileParam:string; fullScreenParam:string; showFPSParam:string;
   140                                       altDamageParam:string; timeItervalParam:string; reducedQualityParam: string);
   139                                       altDamageParam:string; timeItervalParam:string; reducedQualityParam: string);
   141 var showFPS, altDamage, reducedQuality: boolean;
   140 var showFPS, altDamage, reducedQuality: boolean;
   142     timeIterval: LongInt;
   141     timeIterval, c: LongInt;
   143 begin
   142 begin
   144     setMultimediaOptionsWithParameters(screenWidthParam,screenHeightParam, bitsParam,
   143     setMultimediaOptionsWithParameters(screenWidthParam,screenHeightParam, bitsParam,
   145                                        initialVolumeParam,musicEnabledParam,soundEnabledParam,
   144                                        initialVolumeParam,musicEnabledParam,soundEnabledParam,
   146                                        languageFileParam,fullScreenParam);
   145                                        languageFileParam,fullScreenParam);
   147     showFPS := showFPSParam = '1';
   146     showFPS := showFPSParam = '1';
   148     setShowFPS(showFPS);
   147     setShowFPS(showFPS);
   149 
   148 
   150     altDamage:= altDamageParam = '1';
   149     altDamage:= altDamageParam = '1';
   151     val(timeItervalParam, timeIterval);
   150     val(timeItervalParam, timeIterval, c);
   152     reducedQuality:= reducedQualityParam = '1';
   151     reducedQuality:= reducedQualityParam = '1';
   153     setAltDamageTimerValueAndQuality(altDamage,timeIterval,reducedQuality);
   152     setAltDamageTimerValueAndQuality(altDamage,timeIterval,reducedQuality);
   154 end;
   153 end;
   155 
   154 
   156 procedure playReplayFileWithParameters();
   155 procedure playReplayFileWithParameters();