Language fixes
This commit is contained in:
parent
7718fe5b12
commit
61a4b203b5
|
@ -744,6 +744,52 @@ static std::string AppPlatform_linux_getDateString_injection(__attribute__((unus
|
||||||
template <typename... Args>
|
template <typename... Args>
|
||||||
static void nop(__attribute__((unused)) Args... args) {
|
static void nop(__attribute__((unused)) Args... args) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static GLfloat color[4] = {1.f, 0.f, 0.f, 1.f};
|
||||||
|
HOOK(glFogfv, void, (GLenum pname, const GLfloat *params)) {
|
||||||
|
if (pname == GL_FOG_COLOR) {
|
||||||
|
params = color;
|
||||||
|
}
|
||||||
|
ensure_glFogfv();
|
||||||
|
real_glFogfv(pname, params);
|
||||||
|
}
|
||||||
|
HOOK(glClearColor, void, (__attribute__((unused)) GLfloat red, __attribute__((unused)) GLfloat green, __attribute__((unused)) GLfloat blue, __attribute__((unused)) GLfloat alpha)) {
|
||||||
|
ensure_glClearColor();
|
||||||
|
real_glClearColor(color[0], color[1], color[2], color[3]);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void Language_injection() {
|
||||||
|
// Fix language strings
|
||||||
|
I18n::_strings.insert(std::make_pair("tile.waterStill.name", "Still Water"));
|
||||||
|
I18n::_strings.insert(std::make_pair("tile.lavaStill.name", "Still Lava"));
|
||||||
|
I18n::_strings.insert(std::make_pair("tile.grassCarried.name", "Carried Grass"));
|
||||||
|
I18n::_strings.insert(std::make_pair("tile.leavesCarried.name", "Carried Leaves"));
|
||||||
|
I18n::_strings.insert(std::make_pair("tile.invBedrock.name", "Invisible Bedrock"));
|
||||||
|
// Missing language strings
|
||||||
|
I18n::_strings.insert(std::make_pair("item.camera.name", "Camera"));
|
||||||
|
I18n::_strings.insert(std::make_pair("item.seedsMelon.name", "Melon Seeds"));
|
||||||
|
I18n::_strings.insert(std::make_pair("tile.pumpkinStem.name", "Pumpkin Stem"));
|
||||||
|
I18n::_strings.insert(std::make_pair("tile.stoneSlab.name", "Double Stone Slab"));
|
||||||
|
}
|
||||||
|
|
||||||
|
Tile *Tile_init_invBedrock_injection(Tile *t) {
|
||||||
|
Tile *ret = Tile_init(t);
|
||||||
|
// Fix invisible bedrock's name
|
||||||
|
std::string invBedrock = "invBedrock";
|
||||||
|
t->vtable->setDescriptionId(t, &invBedrock);
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
void copy_with_still(std::string *into, char *from) {
|
||||||
|
*into = from;
|
||||||
|
*into += "Still";
|
||||||
|
}
|
||||||
|
|
||||||
|
void copy_with_carried(std::string *into, char *from) {
|
||||||
|
*into = std::string(from);
|
||||||
|
*into += "Carried";
|
||||||
|
}
|
||||||
|
|
||||||
void init_misc() {
|
void init_misc() {
|
||||||
// Remove Invalid Item Background (A Red Background That Appears For Items That Are Not Included In The gui_blocks Atlas)
|
// Remove Invalid Item Background (A Red Background That Appears For Items That Are Not Included In The gui_blocks Atlas)
|
||||||
if (feature_has("Remove Invalid Item Background", server_disabled)) {
|
if (feature_has("Remove Invalid Item Background", server_disabled)) {
|
||||||
|
@ -993,4 +1039,15 @@ void init_misc() {
|
||||||
overwrite_calls(Gui_onConfigChanged, nop<Gui_onConfigChanged_t, Gui *, Config *>);
|
overwrite_calls(Gui_onConfigChanged, nop<Gui_onConfigChanged_t, Gui *, Config *>);
|
||||||
overwrite_calls(LevelRenderer_generateSky, nop<LevelRenderer_generateSky_t, LevelRenderer *>);
|
overwrite_calls(LevelRenderer_generateSky, nop<LevelRenderer_generateSky_t, LevelRenderer *>);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Fix/update lang strings
|
||||||
|
misc_run_on_language_setup(Language_injection);
|
||||||
|
// Water/lava flowing lang
|
||||||
|
overwrite_call((void *) 0xc3b54, (void *) copy_with_still);
|
||||||
|
overwrite_call((void *) 0xc3c7c, (void *) copy_with_still);
|
||||||
|
// Carried tile lang
|
||||||
|
patch_address((void *) 0xc6674, (void *) "grassCarried");
|
||||||
|
patch_address((void *) 0xc6684, (void *) "leavesCarried");
|
||||||
|
// InvBedrock lang
|
||||||
|
overwrite_call((void *) 0xc5f04, (void *) Tile_init_invBedrock_injection);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user