Fixing bug with save game, sounds, and some hints are out of screen on Android
This commit is contained in:
parent
9f812f0318
commit
6406c4f258
@ -129,8 +129,8 @@
|
|||||||
"name": "hint6b",
|
"name": "hint6b",
|
||||||
"horizontal_gravity": "right",
|
"horizontal_gravity": "right",
|
||||||
"vertical_gravity": "top",
|
"vertical_gravity": "top",
|
||||||
"width": 738.75,
|
"width": 630.4,
|
||||||
"height": 292.5,
|
"height": 249.6,
|
||||||
"x": 80,
|
"x": 80,
|
||||||
"y": 100,
|
"y": 100,
|
||||||
"texture": "resources/w/ui/img/Hint6b.png",
|
"texture": "resources/w/ui/img/Hint6b.png",
|
||||||
|
|||||||
@ -82,8 +82,8 @@
|
|||||||
"name": "hint6b",
|
"name": "hint6b",
|
||||||
"horizontal_gravity": "right",
|
"horizontal_gravity": "right",
|
||||||
"vertical_gravity": "top",
|
"vertical_gravity": "top",
|
||||||
"width": 738.75,
|
"width": 630.4,
|
||||||
"height": 292.5,
|
"height": 249.6,
|
||||||
"x": 80,
|
"x": 80,
|
||||||
"y": 100,
|
"y": 100,
|
||||||
"texture": "resources/w/ui/img/Hint6b.png",
|
"texture": "resources/w/ui/img/Hint6b.png",
|
||||||
|
|||||||
@ -60,7 +60,7 @@
|
|||||||
"horizontal_gravity": "center",
|
"horizontal_gravity": "center",
|
||||||
"vertical_gravity": "top",
|
"vertical_gravity": "top",
|
||||||
"text": "Главное Задание 1",
|
"text": "Главное Задание 1",
|
||||||
"fontSize": 56,
|
"fontSize": 40,
|
||||||
"fontPath": "resources/fonts/DroidSans.ttf",
|
"fontPath": "resources/fonts/DroidSans.ttf",
|
||||||
"textCentered": false,
|
"textCentered": false,
|
||||||
"topAligned": false,
|
"topAligned": false,
|
||||||
|
|||||||
@ -129,8 +129,8 @@
|
|||||||
"name": "hint6b",
|
"name": "hint6b",
|
||||||
"horizontal_gravity": "right",
|
"horizontal_gravity": "right",
|
||||||
"vertical_gravity": "top",
|
"vertical_gravity": "top",
|
||||||
"width": 788,
|
"width": 630.4,
|
||||||
"height": 276,
|
"height": 220.8,
|
||||||
"x": 80,
|
"x": 80,
|
||||||
"y": 100,
|
"y": 100,
|
||||||
"texture": "resources/w/ui_en/img/Hint6b.png",
|
"texture": "resources/w/ui_en/img/Hint6b.png",
|
||||||
|
|||||||
@ -82,8 +82,8 @@
|
|||||||
"name": "hint6b",
|
"name": "hint6b",
|
||||||
"horizontal_gravity": "right",
|
"horizontal_gravity": "right",
|
||||||
"vertical_gravity": "top",
|
"vertical_gravity": "top",
|
||||||
"width": 788,
|
"width": 630.4,
|
||||||
"height": 276,
|
"height": 220.8,
|
||||||
"x": 80,
|
"x": 80,
|
||||||
"y": 100,
|
"y": 100,
|
||||||
"texture": "resources/w/ui_en/img/Hint6b.png",
|
"texture": "resources/w/ui_en/img/Hint6b.png",
|
||||||
|
|||||||
@ -60,7 +60,7 @@
|
|||||||
"horizontal_gravity": "center",
|
"horizontal_gravity": "center",
|
||||||
"vertical_gravity": "top",
|
"vertical_gravity": "top",
|
||||||
"text": "",
|
"text": "",
|
||||||
"fontSize": 56,
|
"fontSize": 40,
|
||||||
"fontPath": "resources/fonts/DroidSans.ttf",
|
"fontPath": "resources/fonts/DroidSans.ttf",
|
||||||
"textCentered": false,
|
"textCentered": false,
|
||||||
"topAligned": false,
|
"topAligned": false,
|
||||||
|
|||||||
@ -106,7 +106,7 @@ void AudioPlayerAsync::playSoundAsync(const std::string& filePath, int loops, in
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
sound = Mix_LoadWAV_RW(rw, 1); // 1 means it will free rw automatically
|
sound = Mix_LoadWAV_RW(rw, 1); // 1 means it will free rw automatically
|
||||||
FRG::logger() << "sound = Mix_LoadWAV_RW(rw, 1); just fired " << std::endl;
|
//FRG::logger() << "sound = Mix_LoadWAV_RW(rw, 1); just fired " << std::endl;
|
||||||
|
|
||||||
#else
|
#else
|
||||||
sound = Mix_LoadWAV(filePath.c_str());
|
sound = Mix_LoadWAV(filePath.c_str());
|
||||||
|
|||||||
@ -1217,7 +1217,7 @@ namespace FRG
|
|||||||
|
|
||||||
if (event.type == SDL_WINDOWEVENT && event.window.event == SDL_WINDOWEVENT_RESIZED) {
|
if (event.type == SDL_WINDOWEVENT && event.window.event == SDL_WINDOWEVENT_RESIZED) {
|
||||||
const bool wasPortrait = Environment::width < Environment::height;
|
const bool wasPortrait = Environment::width < Environment::height;
|
||||||
//FRG::logger() << "Window resized" << std::endl;
|
FRG::logger() << "Window resized" << std::endl;
|
||||||
if (Environment::isHighDPIEnabled) {
|
if (Environment::isHighDPIEnabled) {
|
||||||
// Если High DPI включен, запрашиваем реальное физическое разрешение буфера
|
// Если High DPI включен, запрашиваем реальное физическое разрешение буфера
|
||||||
int drawW, drawH;
|
int drawW, drawH;
|
||||||
|
|||||||
@ -234,11 +234,11 @@ namespace FRG
|
|||||||
return file.good();
|
return file.good();
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
std::cerr << "[settings] Could not open " << filePath << " for writing" << std::endl;
|
logger() << "[settings] Could not open " << filePath << " for writing" << std::endl;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (const fs::filesystem_error& e) {
|
catch (const fs::filesystem_error& e) {
|
||||||
std::cerr << "[settings] Filesystem error: " << e.what() << std::endl;
|
logger() << "[settings] Filesystem error: " << e.what() << std::endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
@ -254,6 +254,14 @@ namespace FRG
|
|||||||
// Для Web монтируем IDBFS обычно в локальную папку /offline или /home/webuser
|
// Для Web монтируем IDBFS обычно в локальную папку /offline или /home/webuser
|
||||||
// Чтобы не усложнять иерархию в IndexedDB, можно использовать фиксированный корень
|
// Чтобы не усложнять иерархию в IndexedDB, можно использовать фиксированный корень
|
||||||
baseDir = "/offline";
|
baseDir = "/offline";
|
||||||
|
#elif defined(__ANDROID__)
|
||||||
|
char* prefPath = SDL_GetPrefPath("Fish Run Games", "Shadow Over Bishkek Demo");
|
||||||
|
if (prefPath) {
|
||||||
|
fs::path p(prefPath);
|
||||||
|
SDL_free(prefPath);
|
||||||
|
return p;
|
||||||
|
}
|
||||||
|
baseDir = fs::current_path();
|
||||||
#elif defined(_WIN32)
|
#elif defined(_WIN32)
|
||||||
wchar_t* appDataPath = nullptr;
|
wchar_t* appDataPath = nullptr;
|
||||||
if (SUCCEEDED(SHGetKnownFolderPath(FOLDERID_RoamingAppData, 0, nullptr, &appDataPath))) {
|
if (SUCCEEDED(SHGetKnownFolderPath(FOLDERID_RoamingAppData, 0, nullptr, &appDataPath))) {
|
||||||
@ -294,7 +302,7 @@ namespace FRG
|
|||||||
|
|
||||||
std::ifstream f(filePath, std::ios::in | std::ios::binary);
|
std::ifstream f(filePath, std::ios::in | std::ios::binary);
|
||||||
if (!f.is_open()) {
|
if (!f.is_open()) {
|
||||||
std::cerr << "[settings] Could not open " << filePath << " for reading" << std::endl;
|
logger() << "[settings] Could not open " << filePath << " for reading" << std::endl;
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -303,7 +311,7 @@ namespace FRG
|
|||||||
std::istreambuf_iterator<char>());
|
std::istreambuf_iterator<char>());
|
||||||
}
|
}
|
||||||
catch (const fs::filesystem_error& e) {
|
catch (const fs::filesystem_error& e) {
|
||||||
std::cerr << "[settings] Filesystem error during read: " << e.what() << std::endl;
|
logger() << "[settings] Filesystem error during read: " << e.what() << std::endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
return "";
|
return "";
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user