SCI: Add game option for enabling/disabling LarryScale in LSL7
All other SCI games continue using the default scaler.
This commit is contained in:
parent
f8c32b07e7
commit
999cf71dcf
6 changed files with 18 additions and 3 deletions
|
@ -84,6 +84,7 @@ const struct GameOpt {
|
|||
// "gameOption10" would be invalid here because it contains "gameOption1"
|
||||
{ GUIO_GAMEOPTIONS10, "gameOptionA" },
|
||||
{ GUIO_GAMEOPTIONS11, "gameOptionB" },
|
||||
{ GUIO_GAMEOPTIONS12, "gameOptionC" },
|
||||
|
||||
{ GUIO_NONE, 0 }
|
||||
};
|
||||
|
|
|
@ -76,6 +76,7 @@
|
|||
#define GUIO_GAMEOPTIONS9 "\060"
|
||||
#define GUIO_GAMEOPTIONS10 "\061"
|
||||
#define GUIO_GAMEOPTIONS11 "\062"
|
||||
#define GUIO_GAMEOPTIONS12 "\063"
|
||||
|
||||
#define GUIO0() (GUIO_NONE)
|
||||
#define GUIO1(a) (a)
|
||||
|
|
|
@ -436,6 +436,16 @@ static const ADExtraGuiOptionsMap optionsList[] = {
|
|||
},
|
||||
#endif
|
||||
|
||||
{
|
||||
GAMEOPTION_LARRYSCALE,
|
||||
{
|
||||
_s("Use high-quality \"LarryScale\" cel scaling"),
|
||||
_s("Use special cartoon scaler for drawing character sprites"),
|
||||
"enable_larryscale",
|
||||
true
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
GAMEOPTION_PREFER_DIGITAL_SFX,
|
||||
{
|
||||
|
|
|
@ -2733,11 +2733,12 @@ static const struct ADGameDescription SciGameDescriptions[] = {
|
|||
#define GUIO_LSL7_DEMO GUIO3(GUIO_NOASPECT, \
|
||||
GUIO_NOMIDI, \
|
||||
GUIO_NOLAUNCHLOAD)
|
||||
#define GUIO_LSL7 GUIO5(GUIO_NOASPECT, \
|
||||
#define GUIO_LSL7 GUIO6(GUIO_NOASPECT, \
|
||||
GUIO_NOMIDI, \
|
||||
GAMEOPTION_ENABLE_BLACK_LINED_VIDEO, \
|
||||
GAMEOPTION_ORIGINAL_SAVELOAD, \
|
||||
GAMEOPTION_HQ_VIDEO)
|
||||
GAMEOPTION_HQ_VIDEO, \
|
||||
GAMEOPTION_LARRYSCALE)
|
||||
|
||||
// Larry 7 - English DOS Demo (provided by richiefs in bug report #2670691)
|
||||
// SCI interpreter version 2.100.002
|
||||
|
|
|
@ -32,6 +32,7 @@
|
|||
#include "sci/engine/workarounds.h"
|
||||
#include "sci/util.h"
|
||||
#include "graphics/larryScale.h"
|
||||
#include "common/config-manager.h"
|
||||
|
||||
namespace Sci {
|
||||
#pragma mark CelScaler
|
||||
|
@ -201,7 +202,7 @@ struct SCALER_Scale {
|
|||
|
||||
const CelScalerTable &table = CelObj::_scaler->getScalerTable(scaleX, scaleY);
|
||||
|
||||
const bool useLarryScale = true;
|
||||
const bool useLarryScale = ConfMan.getBool("enable_larryscale");
|
||||
if (useLarryScale) {
|
||||
// LarryScale is an alternative, high-quality cel scaler implemented
|
||||
// for ScummVM. Due to the nature of smooth upscaling, it does *not*
|
||||
|
|
|
@ -58,6 +58,7 @@ namespace Sci {
|
|||
#define GAMEOPTION_ENABLE_BLACK_LINED_VIDEO GUIO_GAMEOPTIONS9
|
||||
#define GAMEOPTION_HQ_VIDEO GUIO_GAMEOPTIONS10
|
||||
#define GAMEOPTION_ENABLE_CENSORING GUIO_GAMEOPTIONS11
|
||||
#define GAMEOPTION_LARRYSCALE GUIO_GAMEOPTIONS12
|
||||
|
||||
struct EngineState;
|
||||
class Vocabulary;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue