mirror of
https://github.com/libretro/scummvm.git
synced 2025-02-10 12:55:24 +00:00
BLADERUNNER: Removed compile time macros, added synch with GUI
This commit is contained in:
parent
a86625700f
commit
f101906bc2
@ -41,9 +41,7 @@
|
||||
#include "bladerunner/slice_animations.h"
|
||||
#include "bladerunner/slice_renderer.h"
|
||||
#include "bladerunner/time.h"
|
||||
#if SUBTITLES_SUPPORT
|
||||
#include "bladerunner/subtitles.h"
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
#include "bladerunner/waypoints.h"
|
||||
#include "bladerunner/zbuffer.h"
|
||||
|
||||
@ -555,11 +553,11 @@ bool Actor::tick(bool forceDraw, Common::Rect *screenRect) {
|
||||
needsUpdate = true;
|
||||
timeLeft = 0;
|
||||
}
|
||||
#if SUBTITLES_SUPPORT
|
||||
if(!isSpeeching()) {
|
||||
_vm->_subtitles->hide();
|
||||
|
||||
if (!isSpeeching()) {
|
||||
_vm->_subtitles->hide();
|
||||
}
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
|
||||
if (needsUpdate) {
|
||||
int newAnimation = 0, newFrame = 0;
|
||||
_vm->_aiScripts->updateAnimation(_id, &newAnimation, &newFrame);
|
||||
@ -1099,18 +1097,14 @@ void Actor::speechPlay(int sentenceId, bool voiceOver) {
|
||||
balance = CLIP<int>(balance, -127, 127);
|
||||
}
|
||||
|
||||
#if SUBTITLES_SUPPORT
|
||||
_vm->_subtitles->getInGameSubsText(_id, sentenceId);
|
||||
_vm->_subtitles->show();
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
|
||||
_vm->_subtitles->getInGameSubsText(_id, sentenceId);
|
||||
_vm->_subtitles->show();
|
||||
|
||||
_vm->_audioSpeech->playSpeech(name, balance);
|
||||
}
|
||||
|
||||
void Actor::speechStop() {
|
||||
#if SUBTITLES_SUPPORT
|
||||
_vm->_subtitles->hide();
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
_vm->_subtitles->hide();
|
||||
_vm->_audioSpeech->stopSpeech();
|
||||
}
|
||||
|
||||
|
@ -60,9 +60,7 @@
|
||||
#include "bladerunner/shape.h"
|
||||
#include "bladerunner/slice_animations.h"
|
||||
#include "bladerunner/slice_renderer.h"
|
||||
#if SUBTITLES_SUPPORT
|
||||
#include "bladerunner/subtitles.h"
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
#include "bladerunner/suspects_database.h"
|
||||
#include "bladerunner/text_resource.h"
|
||||
#include "bladerunner/time.h"
|
||||
@ -100,6 +98,7 @@ BladeRunnerEngine::BladeRunnerEngine(OSystem *syst, const ADGameDescription *des
|
||||
|
||||
_vqaIsPlaying = false;
|
||||
_vqaStopIsRequested = false;
|
||||
_subtitlesEnabled = false;
|
||||
|
||||
_playerLosesControlCounter = 0;
|
||||
|
||||
@ -184,9 +183,7 @@ BladeRunnerEngine::BladeRunnerEngine(OSystem *syst, const ADGameDescription *des
|
||||
_scores = nullptr;
|
||||
_elevator = nullptr;
|
||||
_mainFont = nullptr;
|
||||
#if SUBTITLES_SUPPORT
|
||||
_subtitles = nullptr;
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
_esper = nullptr;
|
||||
_vk = nullptr;
|
||||
_policeMaze = nullptr;
|
||||
@ -406,20 +403,11 @@ bool BladeRunnerEngine::startup(bool hasSavegames) {
|
||||
|
||||
_gameFlags = new GameFlags();
|
||||
_gameFlags->setFlagCount(_gameInfo->getFlagCount());
|
||||
|
||||
#if BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
// EDS flags
|
||||
_extraGameFlagsForRestoredContent = new GameFlags(); //aux flags - custom
|
||||
_extraGameFlagsForRestoredContent->setFlagCount(RESTORED_CONTENT_EXTRA_FLAGS + 1); // aux flags - custom // +1 since we don't assign something to 0 enum value
|
||||
#if SUBTITLES_SUPPORT
|
||||
#if SUBTITLES_ENABLED_BY_DEFAULT
|
||||
// subtitles enable by default:
|
||||
_extraGameFlagsForRestoredContent->set(kEDSFlagSubtitlesEnable);
|
||||
#else
|
||||
_extraGameFlagsForRestoredContent->reset(kEDSFlagSubtitlesEnable);
|
||||
#endif // SUBTITLES_ENABLED_BY_DEFAULT
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
#endif // BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
|
||||
// Assign default values to the ScummVM configuration manager, in case settings are missing
|
||||
ConfMan.registerDefault("subtitles", "true");
|
||||
// get value from the ScummVM configuration manager
|
||||
_subtitlesEnabled = ConfMan.getBool("subtitles");
|
||||
|
||||
_items = new Items(this);
|
||||
|
||||
@ -515,10 +503,8 @@ bool BladeRunnerEngine::startup(bool hasSavegames) {
|
||||
_mainFont = new Font(this);
|
||||
_mainFont->open("KIA6PT.FON", 640, 480, -1, 0, 0x252D);
|
||||
_mainFont->setSpacing(1, 0);
|
||||
|
||||
#if SUBTITLES_SUPPORT
|
||||
|
||||
_subtitles = new Subtitles(this);
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
|
||||
for (int i = 0; i != 43; ++i) {
|
||||
Shape *shape = new Shape(this);
|
||||
@ -692,13 +678,11 @@ void BladeRunnerEngine::shutdown() {
|
||||
_mainFont = nullptr;
|
||||
}
|
||||
|
||||
#if SUBTITLES_SUPPORT
|
||||
if(_subtitles) {
|
||||
delete _subtitles;
|
||||
_subtitles = nullptr;
|
||||
if (_subtitles) {
|
||||
delete _subtitles;
|
||||
_subtitles = nullptr;
|
||||
}
|
||||
#endif // SUBTITLES_SUPPORT//
|
||||
|
||||
|
||||
delete _items;
|
||||
_items = nullptr;
|
||||
|
||||
@ -968,9 +952,9 @@ void BladeRunnerEngine::gameTick() {
|
||||
if (_debugger->_viewObstacles) {
|
||||
_obstacles->draw();
|
||||
}
|
||||
#if SUBTITLES_SUPPORT
|
||||
|
||||
_subtitles->tick(_surfaceFront);
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
|
||||
blitToScreen(_surfaceFront);
|
||||
_system->delayMillis(10);
|
||||
}
|
||||
@ -1699,6 +1683,21 @@ bool BladeRunnerEngine::isArchiveOpen(const Common::String &name) const {
|
||||
return false;
|
||||
}
|
||||
|
||||
void BladeRunnerEngine::syncSoundSettings() {
|
||||
Engine::syncSoundSettings();
|
||||
|
||||
_subtitlesEnabled = ConfMan.getBool("subtitles");
|
||||
}
|
||||
|
||||
bool BladeRunnerEngine::isSubtitlesEnabled() {
|
||||
return _subtitlesEnabled;
|
||||
}
|
||||
|
||||
void BladeRunnerEngine::setSubtitlesEnabled(bool newVal) {
|
||||
_subtitlesEnabled = newVal;
|
||||
ConfMan.setBool("subtitles", newVal);
|
||||
}
|
||||
|
||||
Common::SeekableReadStream *BladeRunnerEngine::getResourceStream(const Common::String &name) {
|
||||
for (int i = 0; i != kArchiveCount; ++i) {
|
||||
if (!_archives[i].isOpen()) {
|
||||
|
@ -39,13 +39,7 @@
|
||||
#define BLADERUNNER_DEBUG_CONSOLE 0
|
||||
#define BLADERUNNER_DEBUG_GAME 0
|
||||
|
||||
#define SUBTITLES_SUPPORT 1
|
||||
#if SUBTITLES_SUPPORT
|
||||
#define SUBTITLES_EXTERNAL_FONT 1
|
||||
#define SUBTITLES_ENABLED_BY_DEFAULT 1
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
#define BLADERUNNER_RESTORED_CONTENT_GAME 1 // needed for checkbox setting for subtitles enable/disable
|
||||
#define RESTORED_CONTENT_EXTRA_FLAGS 1 // needed for checkbox setting for subtitles enable/disable
|
||||
#define BLADERUNNER_SUBTITLES_EXTERNAL_FONT 1
|
||||
|
||||
namespace Common {
|
||||
struct Event;
|
||||
@ -96,9 +90,7 @@ class Shape;
|
||||
class SliceAnimations;
|
||||
class SliceRenderer;
|
||||
class Spinner;
|
||||
#if SUBTITLES_SUPPORT
|
||||
class Subtitles;
|
||||
#endif
|
||||
class SuspectsDatabase;
|
||||
class TextResource;
|
||||
class Time;
|
||||
@ -139,19 +131,13 @@ public:
|
||||
EndCredits *_endCredits;
|
||||
ESPER *_esper;
|
||||
GameFlags *_gameFlags;
|
||||
#if BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
// EDS flags
|
||||
GameFlags *_extraGameFlagsForRestoredContent;
|
||||
#endif // BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
GameInfo *_gameInfo;
|
||||
ItemPickup *_itemPickup;
|
||||
Items *_items;
|
||||
KIA *_kia;
|
||||
Lights *_lights;
|
||||
Font *_mainFont;
|
||||
#if SUBTITLES_SUPPORT
|
||||
Subtitles *_subtitles;
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
Mouse *_mouse;
|
||||
Music *_music;
|
||||
Obstacles *_obstacles;
|
||||
@ -209,6 +195,7 @@ public:
|
||||
bool _sceneIsLoading;
|
||||
bool _vqaIsPlaying;
|
||||
bool _vqaStopIsRequested;
|
||||
bool _subtitlesEnabled; // tracks the state of whether subtitles are enabled or disabled from ScummVM GUI option or KIA checkbox (the states are synched)
|
||||
|
||||
int _walkSoundId;
|
||||
int _walkSoundVolume;
|
||||
@ -286,6 +273,11 @@ public:
|
||||
bool closeArchive(const Common::String &name);
|
||||
bool isArchiveOpen(const Common::String &name) const;
|
||||
|
||||
void syncSoundSettings();
|
||||
bool isSubtitlesEnabled();
|
||||
void setSubtitlesEnabled(bool newVal);
|
||||
|
||||
|
||||
Common::SeekableReadStream *getResourceStream(const Common::String &name);
|
||||
|
||||
bool playerHasControl();
|
||||
|
@ -37,11 +37,10 @@ Font::~Font() {
|
||||
close();
|
||||
}
|
||||
|
||||
#if SUBTITLES_SUPPORT
|
||||
#if SUBTITLES_EXTERNAL_FONT
|
||||
#if BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
// for external FON font file / subtitles support
|
||||
bool Font::openFromStream(Common::ScopedPtr<Common::SeekableReadStream> &stream, int screenWidth, int screenHeight, int spacing1, int spacing2, uint16 color) {
|
||||
reset();
|
||||
reset();
|
||||
|
||||
_screenWidth = screenWidth;
|
||||
_screenHeight = screenHeight;
|
||||
@ -53,7 +52,7 @@ bool Font::openFromStream(Common::ScopedPtr<Common::SeekableReadStream> &stream,
|
||||
return false;
|
||||
}
|
||||
_characterCount = stream->readUint32LE();
|
||||
debug("Font's character count: %d", _characterCount);
|
||||
debug("Font's character count: %d", _characterCount);
|
||||
_maxWidth = stream->readUint32LE();
|
||||
_maxHeight = stream->readUint32LE();
|
||||
_dataSize = stream->readUint32LE();
|
||||
@ -76,8 +75,7 @@ bool Font::openFromStream(Common::ScopedPtr<Common::SeekableReadStream> &stream,
|
||||
}
|
||||
return true;
|
||||
}
|
||||
#endif // SUBTITLES_EXTERNAL_FONT
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
#endif // BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
|
||||
bool Font::open(const Common::String &fileName, int screenWidth, int screenHeight, int spacing1, int spacing2, uint16 color) {
|
||||
reset();
|
||||
@ -110,28 +108,23 @@ bool Font::open(const Common::String &fileName, int screenWidth, int screenHeigh
|
||||
_characters[i].width = stream->readUint32LE();
|
||||
_characters[i].height = stream->readUint32LE();
|
||||
_characters[i].dataOffset = stream->readUint32LE();
|
||||
#if SUBTITLES_SUPPORT
|
||||
#if !SUBTITLES_EXTERNAL_FONT
|
||||
#if !BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
// special explicit alignment fixes for TAHOMA18 (INTERNAL) font
|
||||
if(fileName == "TAHOMA18.FON") {
|
||||
// fix P -> i = 81 (ascii code 80 + 1)
|
||||
if(i == 81 || i == 72 || i == 74 || i == 75 // P, G, I, J
|
||||
|| i == 46 // '-'
|
||||
)
|
||||
{
|
||||
_characters[i].x = 0;// from 1
|
||||
}
|
||||
if(i == 81 // P
|
||||
|| i == 83 || i == 84 // R, S,
|
||||
|| i == 86 // U
|
||||
|| i == 87 || i == 88 || i == 89 || i == 90 || i == 91 // V, W, X, Y ,Z
|
||||
) {
|
||||
_characters[i].y = 7;// from 6 // bring down a pixel
|
||||
}
|
||||
}
|
||||
if (fileName == "TAHOMA18.FON") {
|
||||
// fix P -> i = 81 (ascii code 80 + 1)
|
||||
if (i == 81 || i == 72 || i == 74 || i == 75 // P, G, I, J
|
||||
|| i == 46) { // '-'
|
||||
_characters[i].x = 0; // original value was 1
|
||||
}
|
||||
if (i == 81 // P
|
||||
|| i == 83 || i == 84 // R, S,
|
||||
|| i == 86 // U
|
||||
|| i == 87 || i == 88 || i == 89 || i == 90 || i == 91) { // V, W, X, Y ,Z
|
||||
_characters[i].y = 7; // original value was 6 -- bring them down for one (1) pixel
|
||||
}
|
||||
}
|
||||
//debug("char::%d character x: %d, y: %d, w: %d, h:%d, do: %d", i, _characters[i].x, _characters[i].y, _characters[i].width, _characters[i].height, _characters[i].dataOffset);
|
||||
#endif // SUBTITLES_EXTERNAL_FONT
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
#endif // !BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
}
|
||||
for (int i = 0; i < _dataSize; i++) {
|
||||
_data[i] = stream->readUint16LE();
|
||||
@ -240,20 +233,21 @@ void Font::replaceColor(uint16 oldColor, uint16 newColor) {
|
||||
}
|
||||
}
|
||||
|
||||
#if SUBTITLES_SUPPORT
|
||||
#if !BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
// This was needed as a hack for using a duplicate of the font to act as shadow effect for the glyphs
|
||||
// Mainly needed for the internal font, since an external font can have shadow already drawn for the glyphs
|
||||
void Font::setBlackColor() {
|
||||
// to create a font that can be used as a shadow effect
|
||||
if (!_data || !_dataSize) {
|
||||
return;
|
||||
}
|
||||
for (int i = 0; i < _dataSize; i++) {
|
||||
//debug("COLOR EXISTING: %d", _data[i]);
|
||||
if(_data[i] != 32768) { // 0x8000 transparent
|
||||
_data[i] = 0x0000; // black
|
||||
}
|
||||
//debug("COLOR EXISTING: %d", _data[i]);
|
||||
if (_data[i] != 32768) { // 0x8000 is transparent
|
||||
_data[i] = 0x0000; // black
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
#endif // !BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
|
||||
void Font::drawCharacter(const uint8 character, Graphics::Surface &surface, int x, int y) const {
|
||||
uint8 characterIndex = character + 1;
|
||||
@ -271,14 +265,18 @@ void Font::drawCharacter(const uint8 character, Graphics::Surface &surface, int
|
||||
|
||||
int endY = height + y - 1;
|
||||
int currentY = y;
|
||||
|
||||
#if BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
// Temp Bug fix - Return if w h unnaturally big: -- the INTERNAL tahoma18 font is corrupted so it could cause crashes
|
||||
if(width > 100 || height > 100) {
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
// FIXME/TODO
|
||||
// This width and height check were added as a temporary bug fix -- a sanity check which is only needed for the internal TAHOMA18.FON font.
|
||||
// That font's glyph properties table is corrupted - the start of the file states that there are 0xF7 (=247) entries in the char properties table
|
||||
// but that table get corrupted past the 176th entry. The image data glyph part of the FON file also only covers the 176 entries.
|
||||
// So the following if clause-check will return here if the width and height values are unnaturally big.
|
||||
// The bug only affects debug cases where all character glyph need to be displayed...
|
||||
// ...or potential custom dialogue / translations that reference characters that are not within the range of Ascii values for the normal Latin characters.
|
||||
if (width > 100 || height > 100) {
|
||||
return;
|
||||
}
|
||||
|
||||
while (currentY <= endY && currentY < _screenHeight) {
|
||||
int currentX = x;
|
||||
int endX = width + x - 1;
|
||||
|
@ -24,9 +24,7 @@
|
||||
#define BLADERUNNER_FONT_H
|
||||
|
||||
#include "bladerunner/bladerunner.h" // needed for definition of Common::ScopedPtr (subtitles font external font file support) -- and for the subtitles relevant macro defines
|
||||
#if SUBTITLES_SUPPORT
|
||||
#include "common/util.h"
|
||||
#endif
|
||||
#include "common/str.h"
|
||||
|
||||
namespace Graphics {
|
||||
@ -65,19 +63,17 @@ public:
|
||||
Font(BladeRunnerEngine *vm);
|
||||
~Font();
|
||||
|
||||
#if SUBTITLES_SUPPORT
|
||||
#if SUBTITLES_EXTERNAL_FONT
|
||||
#if BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
bool openFromStream(Common::ScopedPtr<Common::SeekableReadStream> &s, int screenWidth, int screenHeight, int spacing1, int spacing2, uint16 color);
|
||||
#endif // SUBTITLES_EXTERNAL_FONT
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
#endif // BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
bool open(const Common::String &fileName, int screenWidth, int screenHeight, int spacing1, int spacing2, uint16 color);
|
||||
void close();
|
||||
|
||||
void setSpacing(int spacing1, int spacing2);
|
||||
void setColor(uint16 color);
|
||||
#if SUBTITLES_SUPPORT
|
||||
void setBlackColor(); // for subtitles
|
||||
#endif
|
||||
#if !BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
void setBlackColor(); // for subtitles (when using internal font) - emulate shadows
|
||||
#endif // !BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
|
||||
void draw(const Common::String &text, Graphics::Surface &surface, int x, int y) const;
|
||||
void drawColor(const Common::String &text, Graphics::Surface &surface, int x, int y, uint16 color);
|
||||
|
@ -547,14 +547,6 @@ enum Variables {
|
||||
kVariableNextTvNews = 52
|
||||
};
|
||||
|
||||
#if BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
// Aux enum from added/ restored content
|
||||
// EDS Flags
|
||||
enum _extraGameFlagsForRestoredContent {
|
||||
kEDSFlagSubtitlesEnable = 1
|
||||
};
|
||||
#endif // BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
|
||||
enum Outtakes {
|
||||
kOuttakeIntro = 0,
|
||||
kOuttakeMovieA = 1,
|
||||
|
@ -23,9 +23,7 @@
|
||||
#include "bladerunner/outtake.h"
|
||||
|
||||
#include "bladerunner/bladerunner.h"
|
||||
#if SUBTITLES_SUPPORT
|
||||
#include "bladerunner/subtitles.h"
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
#include "bladerunner/vqa_player.h"
|
||||
|
||||
#include "common/debug.h"
|
||||
@ -46,12 +44,8 @@ void OuttakePlayer::play(const Common::String &name, bool noLocalization, int co
|
||||
}
|
||||
|
||||
resName = resName + ".VQA";
|
||||
|
||||
#if SUBTITLES_SUPPORT
|
||||
VQAPlayer vqa_player(_vm, &_vm->_surfaceBack); // fix for subtitles rendering properly
|
||||
#else
|
||||
VQAPlayer vqa_player(_vm, &_vm->_surfaceFront); // original
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
|
||||
VQAPlayer vqa_player(_vm, &_vm->_surfaceBack); // surfaceBack is needed here for subtitles rendering properly, original was _surfaceFront here
|
||||
|
||||
vqa_player.open();
|
||||
|
||||
@ -63,17 +57,13 @@ void OuttakePlayer::play(const Common::String &name, bool noLocalization, int co
|
||||
return;
|
||||
|
||||
int frame = vqa_player.update();
|
||||
#if SUBTITLES_SUPPORT
|
||||
blit(_vm->_surfaceBack, _vm->_surfaceFront); // new tha hack - helps to make subtitles disappear if the proper video is rendered in surface back and then pushed to the front surface
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
blit(_vm->_surfaceBack, _vm->_surfaceFront); // This helps to make subtitles disappear properly, if the video is rendered in surface back and then pushed to the front surface
|
||||
if (frame == -3)
|
||||
break;
|
||||
|
||||
if (frame >= 0) {
|
||||
#if SUBTITLES_SUPPORT
|
||||
_vm->_subtitles->getOuttakeSubsText(resName + ".TRE" , frame);
|
||||
_vm->_subtitles->getOuttakeSubsText(resName + ".TRE" , frame);
|
||||
_vm->_subtitles->tickOuttakes(_vm->_surfaceFront);
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
_vm->blitToScreen(_vm->_surfaceFront);
|
||||
}
|
||||
|
||||
|
@ -22,13 +22,10 @@
|
||||
|
||||
#include "bladerunner/subtitles.h"
|
||||
|
||||
#if SUBTITLES_SUPPORT
|
||||
|
||||
#include "bladerunner/bladerunner.h"
|
||||
#include "bladerunner/font.h"
|
||||
#include "bladerunner/text_resource.h"
|
||||
#include "bladerunner/audio_speech.h"
|
||||
//#include "bladerunner/script/scene_script.h" // for Game_Flag_Query declaration (actually script.h, but this seems to be included in other source files instead)
|
||||
#include "bladerunner/game_flags.h" // for Game_Flag_Query declaration (actually script.h, but this seems to be included in other source files instead)
|
||||
#include "bladerunner/game_constants.h" // for EDS flags - for subtitle checkbox flag state
|
||||
#include "common/debug.h"
|
||||
@ -68,7 +65,7 @@ namespace BladeRunner {
|
||||
* DONE - OK - CHECK what happens in VQA when no corresponding TRE subs file?
|
||||
*/
|
||||
|
||||
#if SUBTITLES_EXTERNAL_FONT
|
||||
#if BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
const Common::String Subtitles::SUBTITLES_FONT_FILENAME = "SUBTITLES.FON";
|
||||
#else
|
||||
const Common::String Subtitles::SUBTITLES_FONT_FILENAME = "TAHOMA18.FON";
|
||||
@ -120,13 +117,13 @@ Subtitles::Subtitles(BladeRunnerEngine *vm) {
|
||||
_gameSubsFdEntries[i] = nullptr;
|
||||
_vqaSubsTextResourceEntries[i] = nullptr;
|
||||
}
|
||||
#if SUBTITLES_EXTERNAL_FONT
|
||||
#if BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
_gameSubsFontsFd = nullptr;
|
||||
_subsFont = nullptr;
|
||||
#else
|
||||
_subsFont = nullptr;
|
||||
_subsBgFont = nullptr;
|
||||
#endif // SUBTITLES_EXTERNAL_FONT
|
||||
#endif // BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
reset();
|
||||
// Done - Subtitles Reset
|
||||
//
|
||||
@ -147,7 +144,7 @@ Subtitles::Subtitles(BladeRunnerEngine *vm) {
|
||||
// Done - Loading text resources
|
||||
//
|
||||
// Initializing/Loading Subtitles' Fonts
|
||||
#if SUBTITLES_EXTERNAL_FONT
|
||||
#if BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
// Open external fonts file (FON file) and load fonts
|
||||
_gameSubsFontsFd = new Common::File();
|
||||
_subsFont = new Font(_vm);
|
||||
@ -172,7 +169,7 @@ Subtitles::Subtitles(BladeRunnerEngine *vm) {
|
||||
} else {
|
||||
_subsFontsLoaded = false;
|
||||
}
|
||||
#endif // SUBTITLES_EXTERNAL_FONT
|
||||
#endif // BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
//Done - Initializing/Loading Subtitles' Fonts
|
||||
//
|
||||
// calculate the Screen Y position of the subtitle lines
|
||||
@ -205,7 +202,7 @@ Subtitles::~Subtitles() {
|
||||
_gameSubsFdEntries[i] = nullptr;
|
||||
}
|
||||
}
|
||||
#if SUBTITLES_EXTERNAL_FONT
|
||||
#if BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
if (_subsFont != nullptr) {
|
||||
_subsFont->close();
|
||||
delete _subsFont;
|
||||
@ -229,7 +226,7 @@ Subtitles::~Subtitles() {
|
||||
delete _subsBgFont;
|
||||
_subsBgFont = nullptr;
|
||||
}
|
||||
#endif // SUBTITLES_EXTERNAL_FONT
|
||||
#endif // BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
}
|
||||
|
||||
/**
|
||||
@ -334,7 +331,7 @@ Common::SeekableReadStream *Subtitles::createReadStreamForGameSubs(int subTreIdx
|
||||
return new Common::SafeSeekableSubReadStream(_gameSubsFdEntries[subTreIdx], 0, _gameSubsFdEntries[subTreIdx]->size(), DisposeAfterUse::YES); // TODO changed to YES from NO is this ok?
|
||||
}
|
||||
|
||||
#if SUBTITLES_EXTERNAL_FONT
|
||||
#if BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
//
|
||||
// EXTERN FONT MANAGEMENT - Font Open/ Create Read Stream / Load / Close methods
|
||||
//
|
||||
@ -414,7 +411,7 @@ bool Subtitles::loadSubsFont() {
|
||||
//
|
||||
// END OF EXTERNAL FONT MANAGEMENT
|
||||
//
|
||||
#endif // SUBTITLES_EXTERNAL_FONT
|
||||
#endif // BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
|
||||
/**
|
||||
* Get the active subtitle text by searching with actor ID and speech ID
|
||||
@ -517,11 +514,9 @@ void Subtitles::tickOuttakes(Graphics::Surface &s) {
|
||||
} else {
|
||||
_vm->_subtitles->show();
|
||||
}
|
||||
#if BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
if (!_vm->_extraGameFlagsForRestoredContent->query(kEDSFlagSubtitlesEnable)) {
|
||||
if (!_vm->isSubtitlesEnabled()) {
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
if (!_isVisible) { // keep it as a separate if
|
||||
return;
|
||||
}
|
||||
@ -534,13 +529,10 @@ void Subtitles::tickOuttakes(Graphics::Surface &s) {
|
||||
void Subtitles::tick(Graphics::Surface &s) {
|
||||
if (!_vm->_audioSpeech->isPlaying()) {
|
||||
_vm->_subtitles->hide(); // TODO might need a better system. Don't call it always.
|
||||
|
||||
}
|
||||
#if BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
if (!_vm->_extraGameFlagsForRestoredContent->query(kEDSFlagSubtitlesEnable)) {
|
||||
if (!_vm->isSubtitlesEnabled()) {
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
if (!_isVisible) { // keep it as a separate if
|
||||
return;
|
||||
}
|
||||
@ -559,7 +551,7 @@ void Subtitles::draw(Graphics::Surface &s) {
|
||||
_subtitlesQuoteChanged = false;
|
||||
}
|
||||
|
||||
#if SUBTITLES_EXTERNAL_FONT
|
||||
#if BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
for (int i = 0; i < _currentSubtitleLines; ++i) {
|
||||
_subsFont->draw(_subtitleLineQuote[i], s, _subtitleLineScreenX[i], _subtitleLineScreenY[i]);
|
||||
}
|
||||
@ -576,7 +568,7 @@ void Subtitles::draw(Graphics::Surface &s) {
|
||||
}
|
||||
_subsFont->draw(_subtitleLineQuote[i], s, _subtitleLineScreenX[i], _subtitleLineScreenY[i]);
|
||||
}
|
||||
#endif // SUBTITLES_EXTERNAL_FONT
|
||||
#endif // BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
}
|
||||
|
||||
/**
|
||||
@ -745,7 +737,7 @@ void Subtitles::reset() {
|
||||
}
|
||||
}
|
||||
|
||||
#if SUBTITLES_EXTERNAL_FONT
|
||||
#if BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
if (_subsFont != nullptr) {
|
||||
_subsFont->close();
|
||||
delete _subsFont;
|
||||
@ -770,9 +762,9 @@ void Subtitles::reset() {
|
||||
delete _subsBgFont;
|
||||
_subsBgFont = nullptr;
|
||||
}
|
||||
#endif // SUBTITLES_EXTERNAL_FONT
|
||||
#endif // BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
_subsFontsLoaded = false;
|
||||
}
|
||||
|
||||
} // End of namespace BladeRunner
|
||||
#endif
|
||||
|
||||
|
@ -24,7 +24,6 @@
|
||||
#define BLADERUNNER_SUBTITLES_H
|
||||
|
||||
#include "bladerunner/bladerunner.h"
|
||||
#if SUBTITLES_SUPPORT
|
||||
|
||||
#include "common/str.h"
|
||||
#include "graphics/surface.h"
|
||||
@ -58,9 +57,9 @@ class Subtitles {
|
||||
|
||||
TextResource *_vqaSubsTextResourceEntries[kMaxTextResourceEntries];
|
||||
Font *_subsFont;
|
||||
#if !SUBTITLES_EXTERNAL_FONT
|
||||
#if !BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
Font *_subsBgFont; // needed for internal font to be used as a shadow effect and make subtitles more legible in certain situations
|
||||
#endif // SUBTITLES_EXTERNAL_FONT
|
||||
#endif // BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
|
||||
bool _isVisible;
|
||||
Common::String _currentSubtitleTextFull;
|
||||
@ -74,9 +73,9 @@ class Subtitles {
|
||||
Common::File *_gameSubsFdEntries[kMaxTextResourceEntries]; // an array of pointers to TRE FILEs
|
||||
bool _gameSubsFdEntriesFound[kMaxTextResourceEntries]; // false if a TRE file did not open successfully
|
||||
bool _subsFontsLoaded; // false if external fonts did not load, or internal fonts (fore and background) did not load
|
||||
#if SUBTITLES_EXTERNAL_FONT
|
||||
#if BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
Common::File *_gameSubsFontsFd; // the file for the external FONT for subtitles
|
||||
#endif // SUBTITLES_EXTERNAL_FONT
|
||||
#endif // BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
|
||||
public:
|
||||
Subtitles(BladeRunnerEngine *vm);
|
||||
@ -102,13 +101,13 @@ private:
|
||||
bool loadGameSubsText(int subTreIdx); // populate a GAME SUBS TextResource with subtitles
|
||||
//
|
||||
//
|
||||
#if SUBTITLES_EXTERNAL_FONT
|
||||
#if BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
Common::SeekableReadStream *createReadStreamForSubFonts();
|
||||
bool openSubsFontFile();
|
||||
void closeSubsFontFile();
|
||||
bool isOpenSubsFontFile() const; //
|
||||
bool loadSubsFont(); // create a the font object from a FON file (external)
|
||||
#endif // SUBTITLES_EXTERNAL_FONT
|
||||
#endif // BLADERUNNER_SUBTITLES_EXTERNAL_FONT
|
||||
|
||||
|
||||
void draw(Graphics::Surface &s);
|
||||
@ -123,6 +122,5 @@ private:
|
||||
};
|
||||
|
||||
} // End of namespace BladeRunner
|
||||
#endif
|
||||
|
||||
#endif
|
||||
#endif // BLADERUNNER_SUBTITLES_H
|
||||
|
@ -43,7 +43,6 @@ TextResource::~TextResource() {
|
||||
delete[] _strings;
|
||||
}
|
||||
|
||||
#if SUBTITLES_SUPPORT
|
||||
// for TRE subtitles support
|
||||
bool TextResource::openFromStream(Common::ScopedPtr<Common::SeekableReadStream> &s) {
|
||||
|
||||
@ -85,7 +84,6 @@ bool TextResource::openFromStream(Common::ScopedPtr<Common::SeekableReadStream>
|
||||
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
|
||||
bool TextResource::open(const Common::String &name) {
|
||||
assert(name.size() <= 8);
|
||||
@ -142,19 +140,17 @@ const char *TextResource::getText(uint32 id) const {
|
||||
return "";
|
||||
}
|
||||
|
||||
#if SUBTITLES_SUPPORT
|
||||
const char *TextResource::getOuttakeTextByFrame(uint32 frame) const {
|
||||
for (uint32 i = 0; i != _count; ++i) {
|
||||
//debug("Checking %d - so within: %d , %d", _ids[i], (0x0000FFFF & _ids[i]), ((_ids[i] >> 16) & 0x0000FFFF ) );
|
||||
//debug("Checking %d - so within: %d , %d", _ids[i], (0x0000FFFF & _ids[i]), ((_ids[i] >> 16) & 0x0000FFFF ) );
|
||||
if ((frame >= (0x0000FFFF & _ids[i]) ) && (frame < ((_ids[i] >> 16) & 0x0000FFFF ) )){
|
||||
// we found an id with lower 16bits smaller or equal to our frame key
|
||||
// and with higher 16 bits higher than the frame key
|
||||
// we found an id with lower 16bits smaller or equal to our frame key
|
||||
// and with higher 16 bits higher than the frame key
|
||||
return _strings + _offsets[i];
|
||||
}
|
||||
}
|
||||
return "";
|
||||
}
|
||||
#endif
|
||||
|
||||
int TextResource::getCount() const {
|
||||
return _count;
|
||||
|
@ -23,10 +23,8 @@
|
||||
#ifndef BLADERUNNER_TEXT_RESOURCE_H
|
||||
#define BLADERUNNER_TEXT_RESOURCE_H
|
||||
|
||||
#include "bladerunner/bladerunner.h" // needed for definition of Common::ScopedPtr (subtitles font external font file support) -- and for the subtitles relevant macro defines
|
||||
#if SUBTITLES_SUPPORT
|
||||
#include "bladerunner/bladerunner.h" // needed for definition of Common::ScopedPtr (subtitles font external font file support)
|
||||
#include "common/util.h"
|
||||
#endif
|
||||
#include "common/str.h"
|
||||
|
||||
namespace BladeRunner {
|
||||
@ -47,14 +45,10 @@ public:
|
||||
~TextResource();
|
||||
|
||||
bool open(const Common::String &name);
|
||||
#if SUBTITLES_SUPPORT
|
||||
bool openFromStream(Common::ScopedPtr<Common::SeekableReadStream> &s);
|
||||
#endif
|
||||
|
||||
|
||||
const char *getText(uint32 id) const;
|
||||
#if SUBTITLES_SUPPORT
|
||||
const char *getOuttakeTextByFrame(uint32 frame) const;
|
||||
#endif
|
||||
int getCount() const;
|
||||
};
|
||||
|
||||
|
@ -32,9 +32,7 @@
|
||||
#include "bladerunner/time.h"
|
||||
#include "bladerunner/ui/ui_image_picker.h"
|
||||
#include "bladerunner/vqa_player.h"
|
||||
#if SUBTITLES_SUPPORT
|
||||
#include "bladerunner/subtitles.h"
|
||||
#endif
|
||||
|
||||
#include "common/rect.h"
|
||||
#include "common/str.h"
|
||||
@ -229,9 +227,8 @@ void Elevator::tick() {
|
||||
_imagePicker->draw(_vm->_surfaceFront);
|
||||
_vm->_mouse->draw(_vm->_surfaceFront, p.x, p.y);
|
||||
|
||||
#if SUBTITLES_SUPPORT
|
||||
_vm->_subtitles->tick(_vm->_surfaceFront);
|
||||
#endif
|
||||
_vm->_subtitles->tick(_vm->_surfaceFront);
|
||||
|
||||
_vm->blitToScreen(_vm->_surfaceFront);
|
||||
tickDescription();
|
||||
_vm->_system->delayMillis(10);
|
||||
|
@ -38,9 +38,7 @@
|
||||
#include "bladerunner/time.h"
|
||||
#include "bladerunner/ui/ui_image_picker.h"
|
||||
#include "bladerunner/vqa_player.h"
|
||||
#if SUBTITLES_SUPPORT
|
||||
#include "bladerunner/subtitles.h"
|
||||
#endif
|
||||
|
||||
#include "common/rect.h"
|
||||
#include "common/str.h"
|
||||
@ -233,9 +231,7 @@ void ESPER::tick() {
|
||||
drawMouse(_vm->_surfaceFront);
|
||||
|
||||
tickSound();
|
||||
#if SUBTITLES_SUPPORT
|
||||
_vm->_subtitles->tick(_vm->_surfaceFront);
|
||||
#endif
|
||||
_vm->_subtitles->tick(_vm->_surfaceFront);
|
||||
_vm->blitToScreen(_vm->_surfaceFront);
|
||||
|
||||
// TODO: implement 60hz lock for smoother experience
|
||||
|
@ -53,9 +53,7 @@
|
||||
#include "bladerunner/ui/kia_shapes.h"
|
||||
#include "bladerunner/ui/ui_image_picker.h"
|
||||
#include "bladerunner/vqa_player.h"
|
||||
#if SUBTITLES_SUPPORT
|
||||
#include "bladerunner/subtitles.h"
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
|
||||
#include "common/str.h"
|
||||
#include "common/keyboard.h"
|
||||
@ -374,9 +372,7 @@ void KIA::tick() {
|
||||
}
|
||||
_vm->_mouse->draw(_vm->_surfaceFront, mouse.x, mouse.y);
|
||||
|
||||
#if SUBTITLES_SUPPORT
|
||||
_vm->_subtitles->tick(_vm->_surfaceFront);
|
||||
#endif
|
||||
_vm->_subtitles->tick(_vm->_surfaceFront);
|
||||
|
||||
_vm->blitToScreen(_vm->_surfaceFront);
|
||||
_vm->_system->delayMillis(10);
|
||||
|
@ -55,14 +55,8 @@ KIASectionSettings::KIASectionSettings(BladeRunnerEngine *vm)
|
||||
_ambientSoundVolume = new UISlider(_vm, sliderCallback, this, Common::Rect(180, 210, 460, 220), 101, 0);
|
||||
_speechVolume = new UISlider(_vm, sliderCallback, this, Common::Rect(180, 235, 460, 245), 101, 0);
|
||||
_gammaCorrection = new UISlider(_vm, sliderCallback, this, Common::Rect(180, 260, 460, 270), 101, 0);
|
||||
#if BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
_directorsCut = new UICheckBox(_vm, checkBoxCallback, this, Common::Rect(180, 364, 270, 374), 0, false);
|
||||
#if SUBTITLES_SUPPORT
|
||||
_subtitlesEnable = new UICheckBox(_vm, checkBoxCallback, this, Common::Rect(291, 364, 360, 374), 0, false);
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
#else
|
||||
_directorsCut = new UICheckBox(_vm, checkBoxCallback, this, Common::Rect(180, 364, 460, 374), 0, false); // original
|
||||
#endif // BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
_subtitlesEnable = new UICheckBox(_vm, checkBoxCallback, this, Common::Rect(291, 364, 360, 374), 0, false);
|
||||
_playerAgendaSelector = new UIImagePicker(_vm, 5);
|
||||
|
||||
_uiContainer->add(_musicVolume);
|
||||
@ -71,11 +65,7 @@ KIASectionSettings::KIASectionSettings(BladeRunnerEngine *vm)
|
||||
_uiContainer->add(_speechVolume);
|
||||
_uiContainer->add(_gammaCorrection);
|
||||
_uiContainer->add(_directorsCut);
|
||||
#if BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
#if SUBTITLES_SUPPORT
|
||||
_uiContainer->add(_subtitlesEnable);
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
#endif // BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
|
||||
_learyPos = 0;
|
||||
}
|
||||
@ -88,11 +78,7 @@ KIASectionSettings::~KIASectionSettings() {
|
||||
delete _speechVolume;
|
||||
delete _gammaCorrection;
|
||||
delete _directorsCut;
|
||||
#if BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
#if SUBTITLES_SUPPORT
|
||||
delete _subtitlesEnable;
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
#endif // BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
delete _playerAgendaSelector;
|
||||
}
|
||||
|
||||
@ -108,11 +94,7 @@ void KIASectionSettings::open() {
|
||||
_playerAgendaSelector->activate(mouseInCallback, nullptr, nullptr, mouseUpCallback, this);
|
||||
|
||||
_directorsCut->enable();
|
||||
#if BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
#if SUBTITLES_SUPPORT
|
||||
_subtitlesEnable->enable();
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
#endif // BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
}
|
||||
|
||||
void KIASectionSettings::close() {
|
||||
@ -126,11 +108,8 @@ void KIASectionSettings::draw(Graphics::Surface &surface) {
|
||||
_speechVolume->setValue(_vm->_audioSpeech->getVolume());
|
||||
_gammaCorrection->setValue(100.0f);
|
||||
_directorsCut->setChecked(_vm->_gameFlags->query(kFlagDirectorsCut));
|
||||
#if BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
#if SUBTITLES_SUPPORT
|
||||
_subtitlesEnable->setChecked(_vm->_extraGameFlagsForRestoredContent->query(kEDSFlagSubtitlesEnable));
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
#endif // BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
|
||||
_subtitlesEnable->setChecked(_vm->isSubtitlesEnabled());
|
||||
|
||||
const char *textConversationChoices = _vm->_textOptions->getText(0);
|
||||
const char *textMusic = _vm->_textOptions->getText(2);
|
||||
@ -143,11 +122,8 @@ void KIASectionSettings::draw(Graphics::Surface &surface) {
|
||||
const char *textDark = _vm->_textOptions->getText(14);
|
||||
const char *textLight = _vm->_textOptions->getText(15);
|
||||
const char *textDesignersCut = _vm->_textOptions->getText(18);
|
||||
#if BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
#if SUBTITLES_SUPPORT
|
||||
// TODO REPLACE THIS STRING LITERAL MAYBE WITH A TEXT RESOURCE ITEM?
|
||||
const char *textSubtitles = "Subtitles";
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
#endif // BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
|
||||
int posConversationChoices = 320 - _vm->_mainFont->getTextWidth(textConversationChoices) / 2;
|
||||
int posMusic = 320 - _vm->_mainFont->getTextWidth(textMusic) / 2;
|
||||
@ -184,11 +160,7 @@ void KIASectionSettings::draw(Graphics::Surface &surface) {
|
||||
_vm->_mainFont->drawColor(textLight, surface, 462, 261, 0x6EEE);
|
||||
|
||||
_vm->_mainFont->drawColor(textDesignersCut, surface, 192, 365, 0x7751);
|
||||
#if BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
#if SUBTITLES_SUPPORT
|
||||
_vm->_mainFont->drawColor(textSubtitles, surface, 303, 365, 0x7751);
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
#endif // BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
|
||||
_playerAgendaSelector->drawTooltip(surface, _mouseX, _mouseY);
|
||||
}
|
||||
@ -264,17 +236,9 @@ void KIASectionSettings::checkBoxCallback(void *callbackData, void *source) {
|
||||
self->_vm->_gameFlags->reset(kFlagDirectorsCut);
|
||||
}
|
||||
}
|
||||
#if BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
#if SUBTITLES_SUPPORT
|
||||
else if (source == self->_subtitlesEnable) {
|
||||
if (self->_subtitlesEnable->_isChecked) {
|
||||
self->_vm->_extraGameFlagsForRestoredContent->set(kEDSFlagSubtitlesEnable);
|
||||
} else {
|
||||
self->_vm->_extraGameFlagsForRestoredContent->reset(kEDSFlagSubtitlesEnable);
|
||||
}
|
||||
self->_vm->setSubtitlesEnabled(self->_subtitlesEnable->_isChecked);
|
||||
}
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
#endif // BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
}
|
||||
|
||||
void KIASectionSettings::mouseInCallback(int buttonId, void *callbackData) {
|
||||
|
@ -44,11 +44,7 @@ class KIASectionSettings : public KIASectionBase {
|
||||
UISlider *_speechVolume;
|
||||
UISlider *_gammaCorrection;
|
||||
UICheckBox *_directorsCut;
|
||||
#if BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
#if SUBTITLES_SUPPORT
|
||||
UICheckBox *_subtitlesEnable;
|
||||
#endif
|
||||
#endif // BLADERUNNER_RESTORED_CONTENT_GAME
|
||||
UIImagePicker *_playerAgendaSelector;
|
||||
|
||||
int _mouseX;
|
||||
|
@ -41,9 +41,7 @@
|
||||
#include "bladerunner/time.h"
|
||||
#include "bladerunner/ui/ui_image_picker.h"
|
||||
#include "bladerunner/vqa_player.h"
|
||||
#if SUBTITLES_SUPPORT
|
||||
#include "bladerunner/subtitles.h"
|
||||
#endif
|
||||
|
||||
#include "common/str.h"
|
||||
#include "common/keyboard.h"
|
||||
@ -199,9 +197,7 @@ void VK::tick() {
|
||||
|
||||
draw();
|
||||
|
||||
#if SUBTITLES_SUPPORT
|
||||
_vm->_subtitles->tick(_vm->_surfaceFront);
|
||||
#endif // SUBTITLES_SUPPORT
|
||||
_vm->_subtitles->tick(_vm->_surfaceFront);
|
||||
|
||||
_vm->blitToScreen(_vm->_surfaceFront);
|
||||
_vm->_system->delayMillis(10);
|
||||
|
Loading…
x
Reference in New Issue
Block a user