X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fgame%2Fg_options.pas;h=dc45df447807a0bf31c342d080e46b10d975cffe;hb=dcd27af126da1388ac89979cf34b657cd240c262;hp=9cd3cbf59e4c1d27723e4b664b0a4c13e11a80ce;hpb=86d45dd42fd3cf9c183883e4ab1abe5b607e1779;p=d2df-sdl.git diff --git a/src/game/g_options.pas b/src/game/g_options.pas index 9cd3cbf..dc45df4 100644 --- a/src/game/g_options.pas +++ b/src/game/g_options.pas @@ -62,15 +62,13 @@ var gsSDLSampleRate: Integer; gsSDLBufferSize: Integer; gDefaultMegawadStart: AnsiString; - gBerserkAutoswitch: Boolean; - gWeaponAutoswitch: Boolean; glNPOTOverride: Boolean = false; (* Latched game settings *) gsMap: String; gsGameMode: String; gsTimeLimit: Word; - gsGoalLimit: Word; + gsScoreLimit: Word; gsMaxLives: Byte; gsPlayers: Byte; gsGameFlags: LongWord; @@ -78,16 +76,51 @@ var gsItemRespawnTime: Word = 60; gsWarmupTime: Word = 30; +{$IFDEF HEADLESS} + e_NoGraphics: Boolean = True; +{$ELSE} + e_NoGraphics: Boolean = False; +{$ENDIF} + e_FastScreenshots: Boolean = true; // it's REALLY SLOW with `false` + g_dbg_scale: Single = 1.0; + r_pixel_scale: Single = 1.0; + + gwin_has_stencil: Boolean = false; + gwin_k8_enable_light_experiments: Boolean = false; + g_dbg_aimline_on: Boolean = false; + g_dbg_input: Boolean = False; + + {--- Read-only dirs ---} + GameWAD: string; + DataDirs: SSArray; + ModelDirs: SSArray; + MegawadDirs: SSArray; + MapDirs: SSArray; + WadDirs: SSArray; + AllMapDirs: SSArray; // Maps + Megawads + + {--- Read-Write dirs ---} + LogFileName: string; + LogDirs: SSArray; + SaveDirs: SSArray; + CacheDirs: SSArray; + ConfigDirs: SSArray; + ScreenshotDirs: SSArray; + StatsDirs: SSArray; + MapDownloadDirs: SSArray; + WadDownloadDirs: SSArray; + + GameWADName: string = 'GAME'; + implementation uses - {$INCLUDE ../nogl/noGLuses.inc} {$IFDEF USE_SDL2} SDL2, {$ENDIF} - e_log, e_input, g_console, g_window, g_sound, g_gfx, g_player, Math, - g_map, g_net, g_netmaster, SysUtils, CONFIG, g_game, g_main, e_texture, - g_items, wadreader, e_graphics, g_touch, envvars, g_system; + e_log, e_input, g_console, g_sound, g_gfx, g_player, Math, + g_map, g_net, g_netmaster, SysUtils, CONFIG, g_game, + g_items, wadreader, g_touch, envvars, g_system; var machine: Integer; @@ -116,7 +149,7 @@ begin gScreenHeight := 480; gWinSizeX := 640; gWinSizeY := 480; - //gBPP := SDL_BITSPERPIXEL(dispaly.format); + //gBPP := SDL_BITSPERPIXEL(display.format); gBPP := 32; {$IFDEF ANDROID} gFullScreen := True; (* rotation not allowed? *) @@ -255,8 +288,6 @@ begin wadoptFast := False; e_FastScreenshots := True; gDefaultMegawadStart := DF_Default_Megawad_Start; - gBerserkAutoswitch := True; - gWeaponAutoswitch := True; g_dbg_scale := 1.0; gSaveStats := False; @@ -266,7 +297,7 @@ begin gsMap := ''; gsGameMode := _lc[I_MENU_GAME_TYPE_DM]; gsTimeLimit := 0; - gsGoalLimit := 0; + gsScoreLimit := 0; gsMaxLives := 0; gsPlayers := 1; gsSpawnInvul := 0; @@ -281,7 +312,7 @@ begin g_Options_ApplyGameSettings; (* section MasterServer *) - NetMasterList := 'mpms.doom2d.org:25665, deadsoftware.ru:25665'; + NetMasterList := 'mpms.doom2d.org:25665, deadsoftware.ru:25665, terminalcorner.ru:25665'; g_Net_Slist_Set(NetMasterList); (* section Server *) @@ -315,7 +346,7 @@ begin if GameMode = GM_SINGLE then GameMode := GM_COOP; TimeLimit := gsTimeLimit; - GoalLimit := gsGoalLimit; + ScoreLimit := gsScoreLimit; MaxLives := gsMaxLives; SpawnInvul := gsSpawnInvul; ItemRespawnTime := gsItemRespawnTime; @@ -338,6 +369,8 @@ initialization conRegVar('r_texfilter', @gTextureFilter, '', ''); conRegVar('r_npot', @glNPOTOverride, '', ''); conRegVar('r_interp', @gLerpActors, '', 'interpolate actors'); + conRegVar('r_scale', @g_dbg_scale, 0.01, 100.0, 'render scale', '', false); + conRegVar('r_resolution_scale', @r_pixel_scale, 0.01, 100.0, 'upscale factor', '', false); (* Sound *) conRegVar('s_nosound', @gNoSound, '', ''); @@ -371,4 +404,6 @@ initialization conRegVar('g_save_stats', @gSaveStats, '', ''); conRegVar('g_screenshot_stats', @gScreenshotStats, '', ''); conRegVar('g_lastmap', @gsMap, '', ''); + + conRegVar('d_input', @g_dbg_input, '', '') end.