mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2024-11-27 06:27:17 +00:00
XLAT refactor continued
This commit is contained in:
parent
c0002da574
commit
0f767e16b6
@ -1391,9 +1391,9 @@ EX void edit_sightrange() {
|
|||||||
|
|
||||||
EX void menuitem_sightrange_style(char c IS('c')) {
|
EX void menuitem_sightrange_style(char c IS('c')) {
|
||||||
dialog::addSelItem(XLAT("draw range based on"),
|
dialog::addSelItem(XLAT("draw range based on"),
|
||||||
XLAT(vid.use_smart_range == 0 ? "distance" :
|
vid.use_smart_range == 0 ? XLAT("distance") :
|
||||||
vid.use_smart_range == 1 ? "size (no gen)" :
|
vid.use_smart_range == 1 ? XLAT("size (no gen)") :
|
||||||
"size"),
|
XLAT("size"),
|
||||||
c
|
c
|
||||||
);
|
);
|
||||||
dialog::add_action_push([] {
|
dialog::add_action_push([] {
|
||||||
@ -1791,7 +1791,7 @@ EX void showJoyConfig() {
|
|||||||
dialog::addSelItem(XLAT("first joystick position (movement)"), its(joyx)+","+its(joyy), 0);
|
dialog::addSelItem(XLAT("first joystick position (movement)"), its(joyx)+","+its(joyy), 0);
|
||||||
dialog::addSelItem(XLAT("second joystick position (panning)"), its(panjoyx)+","+its(panjoyy), 0);
|
dialog::addSelItem(XLAT("second joystick position (panning)"), its(panjoyx)+","+its(panjoyy), 0);
|
||||||
|
|
||||||
dialog::addSelItem(XLAT("joystick mode"), XLAT(autojoy ? "automatic" : "manual"), 'p');
|
dialog::addSelItem(XLAT("joystick mode"), autojoy ? XLAT("automatic") : XLAT("manual"), 'p');
|
||||||
if(getcstat == 'p') {
|
if(getcstat == 'p') {
|
||||||
if(autojoy)
|
if(autojoy)
|
||||||
mouseovers = XLAT("joystick mode: automatic (release the joystick to move)");
|
mouseovers = XLAT("joystick mode: automatic (release the joystick to move)");
|
||||||
|
@ -346,7 +346,7 @@ struct debugScreen {
|
|||||||
gamescreen(0);
|
gamescreen(0);
|
||||||
getcstat = '-';
|
getcstat = '-';
|
||||||
|
|
||||||
dialog::init(XLAT(show_debug_data ? "debug values" : "internal details"));
|
dialog::init(show_debug_data ? XLAT("debug values") : XLAT("internal details"));
|
||||||
|
|
||||||
for(auto& p: drawbugs)
|
for(auto& p: drawbugs)
|
||||||
drawBug(p.first, p.second);
|
drawBug(p.first, p.second);
|
||||||
|
@ -640,7 +640,7 @@ EX void viewdist_configure_dialog() {
|
|||||||
dialog::addItem(XLAT("move the player"), 'm');
|
dialog::addItem(XLAT("move the player"), 'm');
|
||||||
dialog::add_action([] () { show_distance_lists = false; popScreenAll(); });
|
dialog::add_action([] () { show_distance_lists = false; popScreenAll(); });
|
||||||
|
|
||||||
dialog::addItem(XLAT(distance_from ? "show number of descendants by distance" : "show number of cells by distance"), 'l');
|
dialog::addItem(distance_from ? XLAT("show number of descendants by distance") : XLAT("show number of cells by distance"), 'l');
|
||||||
dialog::add_action([] () { show_distance_lists = true; popScreenAll(); });
|
dialog::add_action([] () { show_distance_lists = true; popScreenAll(); });
|
||||||
|
|
||||||
dialog::display();
|
dialog::display();
|
||||||
|
18
geom-exp.cpp
18
geom-exp.cpp
@ -302,11 +302,11 @@ void set_or_configure_geometry(eGeometry g) {
|
|||||||
else {
|
else {
|
||||||
if(among(g, gProduct, gRotSpace)) {
|
if(among(g, gProduct, gRotSpace)) {
|
||||||
if(WDIM == 3 || (g == gRotSpace && euclid)) {
|
if(WDIM == 3 || (g == gRotSpace && euclid)) {
|
||||||
addMessage(XLAT(
|
addMessage(
|
||||||
g == gRotSpace ?
|
g == gRotSpace ?
|
||||||
"Only works with 2D non-Euclidean geometries"
|
XLAT("Only works with 2D non-Euclidean geometries")
|
||||||
: "Only works with 2D geometries"
|
: XLAT("Only works with 2D geometries")
|
||||||
));
|
);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(g == gRotSpace) {
|
if(g == gRotSpace) {
|
||||||
@ -980,10 +980,10 @@ EX void showEuclideanMenu() {
|
|||||||
auto r = rots::underlying_scale;
|
auto r = rots::underlying_scale;
|
||||||
dialog::addSelItem(XLAT("view the underlying geometry"), r > 0 ? fts(r)+"x" : ONOFF(false), '6');
|
dialog::addSelItem(XLAT("view the underlying geometry"), r > 0 ? fts(r)+"x" : ONOFF(false), '6');
|
||||||
dialog::add_action([] {
|
dialog::add_action([] {
|
||||||
dialog::editNumber(rots::underlying_scale, 0, 1, 0.05, 0.25, XLAT("view the underlying geometry"),
|
dialog::editNumber(rots::underlying_scale, 0, 1, 0.05, 0.25, XLAT("view the underlying geometry"),
|
||||||
XLAT(
|
geometry == gRotSpace ?
|
||||||
geometry == gRotSpace ? "The space you are currently in is the space of rotations of the underlying hyperbolic or spherical geometry. "
|
XLAT("The space you are currently in is the space of rotations of the underlying hyperbolic or spherical geometry. ")
|
||||||
: "You are currently in a product space.") +
|
: XLAT("You are currently in a product space.") +
|
||||||
XLAT(
|
XLAT(
|
||||||
"This option lets you see the underlying space. Lands and some walls (e.g. in the Graveyard) are based on "
|
"This option lets you see the underlying space. Lands and some walls (e.g. in the Graveyard) are based on "
|
||||||
"the respective features in the underlying world, but details such as monsters or items are ignored."
|
"the respective features in the underlying world, but details such as monsters or items are ignored."
|
||||||
@ -1022,7 +1022,7 @@ EX void showEuclideanMenu() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(geometry_has_alt_mine_rule()) {
|
if(geometry_has_alt_mine_rule()) {
|
||||||
dialog::addSelItem(XLAT("adjacency rule"), XLAT(mine_adjacency_rule ? "vertex" : WDIM == 3 ? "face" : "edge"), 'M');
|
dialog::addSelItem(XLAT("adjacency rule"), mine_adjacency_rule ? XLAT("vertex") : WDIM == 3 ? XLAT("face") : XLAT("edge"), 'M');
|
||||||
dialog::add_action([] {
|
dialog::add_action([] {
|
||||||
stop_game();
|
stop_game();
|
||||||
mine_adjacency_rule = !mine_adjacency_rule;
|
mine_adjacency_rule = !mine_adjacency_rule;
|
||||||
|
@ -760,10 +760,10 @@ EX namespace gp {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
dialog::lastItem().value = S3 == 3 ? "GP(1,1)" : XLAT(BITRUNCATED ? "ON" : "OFF");
|
dialog::lastItem().value = S3 == 3 ? "GP(1,1)" : ONOFF(BITRUNCATED);
|
||||||
|
|
||||||
if(min_quality == 0 || min_quality_chess) {
|
if(min_quality == 0 || min_quality_chess) {
|
||||||
dialog::addBoolItem(XLAT(S3 == 3 ? "chamfered" : "expanded"), univ_param() == loc(2,0) && GOLDBERG, 'c');
|
dialog::addBoolItem(S3 == 3 ? XLAT("chamfered") : XLAT("expanded"), univ_param() == loc(2,0) && GOLDBERG, 'c');
|
||||||
dialog::lastItem().value = "GP(2,0)";
|
dialog::lastItem().value = "GP(2,0)";
|
||||||
dialog::add_action_confirmed([] {
|
dialog::add_action_confirmed([] {
|
||||||
whirl_set(loc(2, 0));
|
whirl_set(loc(2, 0));
|
||||||
|
@ -5190,8 +5190,8 @@ EX void gamescreen(int _darken) {
|
|||||||
drawCircle(xfire, yb, rad/2, 0xFF0000FF);
|
drawCircle(xfire, yb, rad/2, 0xFF0000FF);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if(!haveMobileCompass()) displayabutton(-1, +1, XLAT(andmode == 0 && useRangedOrb ? "FIRE" : andmode == 0 && WDIM == 3 && wclick ? "WAIT" : "MOVE"), andmode == 0 ? BTON : BTOFF);
|
if(!haveMobileCompass()) displayabutton(-1, +1, andmode == 0 && useRangedOrb ? XLAT("FIRE") : andmode == 0 && WDIM == 3 && wclick ? XLAT("WAIT") : XLAT("MOVE"), andmode == 0 ? BTON : BTOFF);
|
||||||
displayabutton(+1, +1, rug::rugged ? "RUG" : XLAT(andmode == 1 ? "BACK" : GDIM == 3 ? "CAM" : "DRAG"), andmode == 1 ? BTON : BTOFF);
|
displayabutton(+1, +1, rug::rugged ? XLAT("RUG") :andmode == 1 ? XLAT("BACK") : GDIM == 3 ? XLAT("CAM") : XLAT("DRAG"), andmode == 1 ? BTON : BTOFF);
|
||||||
}
|
}
|
||||||
displayabutton(-1, -1, XLAT("INFO"), andmode == 12 ? BTON : BTOFF);
|
displayabutton(-1, -1, XLAT("INFO"), andmode == 12 ? BTON : BTOFF);
|
||||||
displayabutton(+1, -1, XLAT("MENU"), andmode == 3 ? BTON : BTOFF);
|
displayabutton(+1, -1, XLAT("MENU"), andmode == 3 ? BTON : BTOFF);
|
||||||
@ -5244,7 +5244,7 @@ EX void normalscreen() {
|
|||||||
keyhandler = handleKeyNormal;
|
keyhandler = handleKeyNormal;
|
||||||
|
|
||||||
if(!playerfound && !anims::any_on() && !sphere && !no_find_player && mapeditor::drawplayer)
|
if(!playerfound && !anims::any_on() && !sphere && !no_find_player && mapeditor::drawplayer)
|
||||||
displayButton(current_display->xcenter, current_display->ycenter, XLAT(mousing ? "find the player" : "press SPACE to find the player"), ' ', 8);
|
displayButton(current_display->xcenter, current_display->ycenter, mousing ? XLAT("find the player") : XLAT("press SPACE to find the player"), ' ', 8);
|
||||||
|
|
||||||
describeMouseover();
|
describeMouseover();
|
||||||
}
|
}
|
||||||
|
4
help.cpp
4
help.cpp
@ -408,7 +408,7 @@ EX string generateHelpForItem(eItem it) {
|
|||||||
for(int i=0; i<ittypes; i++) {
|
for(int i=0; i<ittypes; i++) {
|
||||||
eItem it2 = eItem(i);
|
eItem it2 = eItem(i);
|
||||||
if(isEmpathyOrb(it2)) {
|
if(isEmpathyOrb(it2)) {
|
||||||
help += XLAT(cnt ? ", %1" : " %1", it2);
|
help += cnt ? XLAT(", %1", it2) : XLAT(" %1", it2);
|
||||||
cnt++;
|
cnt++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -465,7 +465,7 @@ EX string generateHelpForItem(eItem it) {
|
|||||||
for(int i=0; i<landtypes; i++) {
|
for(int i=0; i<landtypes; i++) {
|
||||||
eLand land = eLand(i);
|
eLand land = eLand(i);
|
||||||
if(isLuckyLand(land)) {
|
if(isLuckyLand(land)) {
|
||||||
help += XLAT(cnt ? ", %1" : " %1", land);
|
help += cnt ? XLAT(", %1", land) : XLAT(" %1", land);
|
||||||
cnt++;
|
cnt++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -56,7 +56,7 @@ EX string index_pointer(void *v) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#if HDR
|
#if HDR
|
||||||
inline string ONOFF(bool b) { return XLAT(b ? "ON" : "OFF"); }
|
inline string ONOFF(bool b) { return b ? XLAT("ON") : XLAT("OFF"); }
|
||||||
|
|
||||||
struct hstream {
|
struct hstream {
|
||||||
virtual void write_char(char c) = 0;
|
virtual void write_char(char c) = 0;
|
||||||
|
@ -505,7 +505,7 @@ EX namespace inv {
|
|||||||
orbmap.clear();
|
orbmap.clear();
|
||||||
which = itNone;
|
which = itNone;
|
||||||
|
|
||||||
if(plain) dialog::init(XLAT(mirroring ? "mirror what?" : "inventory"), forecolor, 150, 100);
|
if(plain) dialog::init(mirroring ? XLAT("mirror what?") : XLAT("inventory"), forecolor, 150, 100);
|
||||||
|
|
||||||
int j = 0, oc = 6;
|
int j = 0, oc = 6;
|
||||||
|
|
||||||
|
@ -957,7 +957,7 @@ void show_gridmaker() {
|
|||||||
for(int i=0; i<5; i++)
|
for(int i=0; i<5; i++)
|
||||||
dialog::addInfo(status[i]);
|
dialog::addInfo(status[i]);
|
||||||
dialog::addBreak(100);
|
dialog::addBreak(100);
|
||||||
dialog::addSelItem(XLAT("activate"), XLAT(runlevel == 10 ? "ready" : "wait..."), 'f');
|
dialog::addSelItem(XLAT("activate"), runlevel == 10 ? XLAT("ready") : XLAT("wait..."), 'f');
|
||||||
if(runlevel == 10) dialog::add_action(start_game_on_created_map);
|
if(runlevel == 10) dialog::add_action(start_game_on_created_map);
|
||||||
dialog::addItem(XLAT("cancel"), 'c');
|
dialog::addItem(XLAT("cancel"), 'c');
|
||||||
dialog::add_action(cancel_map_creation);
|
dialog::add_action(cancel_map_creation);
|
||||||
|
@ -1845,14 +1845,14 @@ EX namespace mapeditor {
|
|||||||
displayButton(8, 8+fs*2, line2 + XLAT(" (r = complex tesselations)"), 'r', 0);
|
displayButton(8, 8+fs*2, line2 + XLAT(" (r = complex tesselations)"), 'r', 0);
|
||||||
else
|
else
|
||||||
displayfr(8, 8+fs*2, 2, vid.fsize, line2, 0xC0C0C0, 0);
|
displayfr(8, 8+fs*2, 2, vid.fsize, line2, 0xC0C0C0, 0);
|
||||||
displayButton(8, 8+fs*3, XLAT(GDIM == 3 ? "l = color group: %1" : "l = layers: %1", its(dslayer)), 'l', 0);
|
displayButton(8, 8+fs*3, GDIM == 3 ? XLAT("l = color group: %1", its(dslayer)) : XLAT("l = layers: %1", its(dslayer)), 'l', 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(us && isize(us->d[dslayer].list)) {
|
if(us && isize(us->d[dslayer].list)) {
|
||||||
usershapelayer& ds(us->d[dslayer]);
|
usershapelayer& ds(us->d[dslayer]);
|
||||||
if(!EDITING_TRIANGLES) {
|
if(!EDITING_TRIANGLES) {
|
||||||
displayButton(8, 8+fs*4, XLAT("1-9 = rotations: %1", its(ds.rots)), '1' + (ds.rots % 9), 0);
|
displayButton(8, 8+fs*4, XLAT("1-9 = rotations: %1", its(ds.rots)), '1' + (ds.rots % 9), 0);
|
||||||
displayButton(8, 8+fs*5, XLAT(ds.sym ? "0 = symmetry" : "0 = asymmetry"), '0', 0);
|
displayButton(8, 8+fs*5, ds.sym ? XLAT("0 = symmetry") : XLAT("0 = asymmetry"), '0', 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
displayfr(8, 8+fs*7, 2, vid.fsize, XLAT("%1 vertices", its(isize(ds.list))), 0xC0C0C0, 0);
|
displayfr(8, 8+fs*7, 2, vid.fsize, XLAT("%1 vertices", its(isize(ds.list))), 0xC0C0C0, 0);
|
||||||
@ -1866,7 +1866,7 @@ EX namespace mapeditor {
|
|||||||
displayButton(8, 8+fs*9, XLAT("m = move v"), 'm', 0);
|
displayButton(8, 8+fs*9, XLAT("m = move v"), 'm', 0);
|
||||||
displayButton(8, 8+fs*10, XLAT("d = delete v"), 'd', 0);
|
displayButton(8, 8+fs*10, XLAT("d = delete v"), 'd', 0);
|
||||||
}
|
}
|
||||||
displaymm('c', 8, 8+fs*11, 2, vid.fsize, XLAT(autochoose ? "autochoose" : "c = choose"), 0);
|
displaymm('c', 8, 8+fs*11, 2, vid.fsize, autochoose ? XLAT("autochoose") : XLAT("c = choose"), 0);
|
||||||
displayButton(8, 8+fs*12, XLAT("b = switch auto"), 'b', 0);
|
displayButton(8, 8+fs*12, XLAT("b = switch auto"), 'b', 0);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@ -1888,7 +1888,7 @@ EX namespace mapeditor {
|
|||||||
}
|
}
|
||||||
#if CAP_TEXTURE
|
#if CAP_TEXTURE
|
||||||
else if(freedraw) {
|
else if(freedraw) {
|
||||||
displayButton(8, 8+fs*2, XLAT(texture::texturesym ? "0 = symmetry" : "0 = asymmetry"), '0', 0);
|
displayButton(8, 8+fs*2, texture::texturesym ? XLAT("0 = symmetry") : XLAT("0 = asymmetry"), '0', 0);
|
||||||
if(mousekey == 'g')
|
if(mousekey == 'g')
|
||||||
displayButton(8, 8+fs*16, XLAT("p = grid color"), 'p', 0);
|
displayButton(8, 8+fs*16, XLAT("p = grid color"), 'p', 0);
|
||||||
else
|
else
|
||||||
@ -1916,11 +1916,11 @@ EX namespace mapeditor {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(GDIM == 3)
|
if(GDIM == 3)
|
||||||
displayfr(8, 8+fs*19, 2, vid.fsize, XLAT(front_config == eFront::sphere_camera ? "z = camera" : front_config == eFront::sphere_center ? "z = spheres" :
|
displayfr(8, 8+fs*19, 2, vid.fsize, (front_config == eFront::sphere_camera ? XLAT("z = camera") : front_config == eFront::sphere_center ? XLAT("z = spheres") :
|
||||||
nonisotropic && front_config == eFront::equidistants ? "Z =" :
|
nonisotropic && front_config == eFront::equidistants ? XLAT("Z =") :
|
||||||
nonisotropic && front_config == eFront::const_x ? "X =" :
|
nonisotropic && front_config == eFront::const_x ? XLAT("X =") :
|
||||||
nonisotropic && front_config == eFront::const_y ? "Y =" :
|
nonisotropic && front_config == eFront::const_y ? XLAT("Y =") :
|
||||||
"z = equi") + " " + fts(front_edit), 0xC0C0C0, 0);
|
XLAT("z = equi")) + " " + fts(front_edit), 0xC0C0C0, 0);
|
||||||
|
|
||||||
displaymm('g', vid.xres-8, 8+fs*4, 2, vid.fsize, XLAT("g = grid"), 16);
|
displaymm('g', vid.xres-8, 8+fs*4, 2, vid.fsize, XLAT("g = grid"), 16);
|
||||||
|
|
||||||
@ -2399,7 +2399,7 @@ EX namespace mapeditor {
|
|||||||
dialog::add_action([] { front_config = eFront::sphere_camera; });
|
dialog::add_action([] { front_config = eFront::sphere_camera; });
|
||||||
dialog::addBoolItem(XLAT("place points at fixed radius"), front_config == eFront::sphere_center, 'B');
|
dialog::addBoolItem(XLAT("place points at fixed radius"), front_config == eFront::sphere_center, 'B');
|
||||||
dialog::add_action([] { front_config = eFront::sphere_center; });
|
dialog::add_action([] { front_config = eFront::sphere_center; });
|
||||||
dialog::addBoolItem(XLAT(nonisotropic ? "place points on surfaces of const Z" : "place points on equidistant surfaces"), front_config == eFront::equidistants, 'C');
|
dialog::addBoolItem(nonisotropic ? XLAT("place points on surfaces of const Z") : XLAT("place points on equidistant surfaces"), front_config == eFront::equidistants, 'C');
|
||||||
dialog::add_action([] { front_config = eFront::equidistants; });
|
dialog::add_action([] { front_config = eFront::equidistants; });
|
||||||
if(nonisotropic) {
|
if(nonisotropic) {
|
||||||
dialog::addBoolItem(XLAT("place points on surfaces of const X"), front_config == eFront::const_x, 'D');
|
dialog::addBoolItem(XLAT("place points on surfaces of const X"), front_config == eFront::const_x, 'D');
|
||||||
|
@ -693,11 +693,11 @@ EX namespace models {
|
|||||||
dialog::init("models & projections");
|
dialog::init("models & projections");
|
||||||
|
|
||||||
if(GDIM == 2 && !euclid) {
|
if(GDIM == 2 && !euclid) {
|
||||||
dialog::addItem(XLAT(hyperbolic ? "Gans model" : "orthographic projection"), '1');
|
dialog::addItem(hyperbolic ? XLAT("Gans model") : XLAT("orthographic projection"), '1');
|
||||||
dialog::add_action([] { if(rug::rugged) rug::close(); pconf.alpha = 999; pconf.scale = 998; pconf.xposition = pconf.yposition = 0; popScreen(); });
|
dialog::add_action([] { if(rug::rugged) rug::close(); pconf.alpha = 999; pconf.scale = 998; pconf.xposition = pconf.yposition = 0; popScreen(); });
|
||||||
dialog::addItem(XLAT(hyperbolic ? "Poincaré model" : "stereographic projection"), '2');
|
dialog::addItem(hyperbolic ? XLAT("Poincaré model") : XLAT("stereographic projection"), '2');
|
||||||
dialog::add_action([] { if(rug::rugged) rug::close(); pconf.alpha = 1; pconf.scale = 1; pconf.xposition = pconf.yposition = 0; popScreen(); });
|
dialog::add_action([] { if(rug::rugged) rug::close(); pconf.alpha = 1; pconf.scale = 1; pconf.xposition = pconf.yposition = 0; popScreen(); });
|
||||||
dialog::addItem(XLAT(hyperbolic ? "Beltrami-Klein model" : "gnomonic projection"), '3');
|
dialog::addItem(hyperbolic ? XLAT("Beltrami-Klein model") : XLAT("gnomonic projection"), '3');
|
||||||
dialog::add_action([] { if(rug::rugged) rug::close(); pconf.alpha = 0; pconf.scale = 1; pconf.xposition = pconf.yposition = 0; popScreen(); });
|
dialog::add_action([] { if(rug::rugged) rug::close(); pconf.alpha = 0; pconf.scale = 1; pconf.xposition = pconf.yposition = 0; popScreen(); });
|
||||||
if(sphere) {
|
if(sphere) {
|
||||||
dialog::addItem(XLAT("stereographic projection") + " " + XLAT("(zoomed out)"), '4');
|
dialog::addItem(XLAT("stereographic projection") + " " + XLAT("(zoomed out)"), '4');
|
||||||
|
36
multi.cpp
36
multi.cpp
@ -211,14 +211,14 @@ bool configdead;
|
|||||||
void handleConfig(int sym, int uni);
|
void handleConfig(int sym, int uni);
|
||||||
|
|
||||||
EX string player_count_name(int p) {
|
EX string player_count_name(int p) {
|
||||||
return XLAT(
|
return
|
||||||
p == 2 ? "two players" :
|
p == 2 ? XLAT("two players") :
|
||||||
p == 3 ? "three players" :
|
p == 3 ? XLAT("three players") :
|
||||||
p == 4 ? "four players" :
|
p == 4 ? XLAT("four players") :
|
||||||
p == 5 ? "five players" :
|
p == 5 ? XLAT("five players") :
|
||||||
p == 6 ? "six players" :
|
p == 6 ? XLAT("six players") :
|
||||||
p == 7 ? "seven players" :
|
p == 7 ? XLAT("seven players") :
|
||||||
"one player");
|
XLAT("one player");
|
||||||
}
|
}
|
||||||
|
|
||||||
struct key_configurer {
|
struct key_configurer {
|
||||||
@ -304,15 +304,15 @@ EX reaction_t get_key_configurer(int sc, vector<string>& sct, string caption) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
EX reaction_t get_key_configurer(int sc, vector<string>& sct) {
|
EX reaction_t get_key_configurer(int sc, vector<string>& sct) {
|
||||||
return key_configurer(sc, sct, XLAT(sc == 1 ? "configure player 1" :
|
return key_configurer(sc, sct, sc == 1 ? XLAT("configure player 1") :
|
||||||
sc == 2 ? "configure player 2" :
|
sc == 2 ? XLAT("configure player 2") :
|
||||||
sc == 3 ? "configure panning" :
|
sc == 3 ? XLAT("configure panning") :
|
||||||
sc == 4 ? "configure player 3" :
|
sc == 4 ? XLAT("configure player 3") :
|
||||||
sc == 5 ? "configure player 4" :
|
sc == 5 ? XLAT("configure player 4") :
|
||||||
sc == 6 ? "configure player 5" :
|
sc == 6 ? XLAT("configure player 5") :
|
||||||
sc == 7 ? "configure player 6" :
|
sc == 7 ? XLAT("configure player 6") :
|
||||||
sc == 8 ? "configure player 7" : ""
|
sc == 8 ? XLAT("configure player 7") : ""
|
||||||
));
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if CAP_SDLJOY
|
#if CAP_SDLJOY
|
||||||
@ -395,7 +395,7 @@ struct shmup_configurer {
|
|||||||
if(players > 1)
|
if(players > 1)
|
||||||
dialog::addItem(XLAT("configure player 2"), '2');
|
dialog::addItem(XLAT("configure player 2"), '2');
|
||||||
else if(players == 1 && !shmup::on)
|
else if(players == 1 && !shmup::on)
|
||||||
dialog::addSelItem(XLAT("input"), XLAT(multi::alwaysuse ? "config" : "default"), 'a');
|
dialog::addSelItem(XLAT("input"), multi::alwaysuse ? XLAT("config") : XLAT("default"), 'a');
|
||||||
else
|
else
|
||||||
dialog::addBreak(100);
|
dialog::addBreak(100);
|
||||||
if(players > 2)
|
if(players > 2)
|
||||||
|
@ -425,7 +425,7 @@ EX namespace dual {
|
|||||||
EX void add_choice() {
|
EX void add_choice() {
|
||||||
if(!state) return;
|
if(!state) return;
|
||||||
dialog::addSelItem(XLAT("subgame affected"),
|
dialog::addSelItem(XLAT("subgame affected"),
|
||||||
XLAT(affect_both ? "both" : main_side == 0 ? "left" : "right"), '`');
|
affect_both ? XLAT("both") : main_side == 0 ? XLAT("left") : XLAT("right"), '`');
|
||||||
dialog::add_action([] () {
|
dialog::add_action([] () {
|
||||||
affect_both = !affect_both;
|
affect_both = !affect_both;
|
||||||
if(!affect_both) {
|
if(!affect_both) {
|
||||||
|
@ -1536,9 +1536,9 @@ EX namespace hybrid {
|
|||||||
if(rotspace) {
|
if(rotspace) {
|
||||||
int e_steps = cgi.psl_steps / gcd(cgi.single_step, cgi.psl_steps);
|
int e_steps = cgi.psl_steps / gcd(cgi.single_step, cgi.psl_steps);
|
||||||
bool ubounded = PIU(bounded);
|
bool ubounded = PIU(bounded);
|
||||||
dialog::addSelItem( XLAT(sphere ? "elliptic" : "PSL(2,R)"), its(e_steps), 'P');
|
dialog::addSelItem( sphere ? XLAT("elliptic") : XLAT("PSL(2,R)"), its(e_steps), 'P');
|
||||||
dialog::add_action(set_s(e_steps, true));
|
dialog::add_action(set_s(e_steps, true));
|
||||||
dialog::addSelItem( XLAT(sphere ? "sphere" : "SL(2,R)"), its(2*e_steps), 'P');
|
dialog::addSelItem( sphere ? XLAT("sphere") : XLAT("SL(2,R)"), its(2*e_steps), 'P');
|
||||||
dialog::add_action(set_s(2*e_steps, true));
|
dialog::add_action(set_s(2*e_steps, true));
|
||||||
if(sl2 && !ubounded) {
|
if(sl2 && !ubounded) {
|
||||||
dialog::addSelItem( XLAT("universal cover"), its(0), 'P');
|
dialog::addSelItem( XLAT("universal cover"), its(0), 'P');
|
||||||
|
13
quit.cpp
13
quit.cpp
@ -291,7 +291,7 @@ EX hint hints[] = {
|
|||||||
EX int hinttoshow;
|
EX int hinttoshow;
|
||||||
|
|
||||||
string contstr() {
|
string contstr() {
|
||||||
return XLAT(canmove ? "continue" : "see how it ended");
|
return canmove ? XLAT("continue") : XLAT("see how it ended");
|
||||||
}
|
}
|
||||||
|
|
||||||
eLand nextHyperstone() {
|
eLand nextHyperstone() {
|
||||||
@ -412,11 +412,10 @@ EX void showMission() {
|
|||||||
else if(landUnlocked(laHell) && ls::any_order()) {
|
else if(landUnlocked(laHell) && ls::any_order()) {
|
||||||
eLand l = nextHyperstone();
|
eLand l = nextHyperstone();
|
||||||
if(l)
|
if(l)
|
||||||
dialog::addInfo(
|
dialog::addInfo(
|
||||||
XLAT(
|
l ? XLAT("Hyperstone Quest: collect at least %3 points in %the2", treasureType(l), l, its(R10))
|
||||||
l ? "Hyperstone Quest: collect at least %3 points in %the2" :
|
: XLAT("Hyperstone Quest: collect at least %3 %1 in %the2", treasureType(l), l, its(R10))
|
||||||
"Hyperstone Quest: collect at least %3 %1 in %the2",
|
);
|
||||||
treasureType(l), l, its(R10)));
|
|
||||||
else
|
else
|
||||||
dialog::addInfo(XLAT("Hyperstone Quest completed!"), iinf[itHyperstone].color);
|
dialog::addInfo(XLAT("Hyperstone Quest completed!"), iinf[itHyperstone].color);
|
||||||
}
|
}
|
||||||
@ -448,7 +447,7 @@ EX void showMission() {
|
|||||||
if(canmove) {
|
if(canmove) {
|
||||||
if(sphere) {
|
if(sphere) {
|
||||||
dialog::addItem(XLAT("return to your game"), '1');
|
dialog::addItem(XLAT("return to your game"), '1');
|
||||||
dialog::addItem(XLAT(pconf.alpha < 2 ? "orthogonal projection" : "stereographic projection"), '3');
|
dialog::addItem(pconf.alpha < 2 ? XLAT("orthogonal projection") : XLAT("stereographic projection"), '3');
|
||||||
}
|
}
|
||||||
else if(euclid) {
|
else if(euclid) {
|
||||||
dialog::addItem(XLAT("return to your game"), '2');
|
dialog::addItem(XLAT("return to your game"), '2');
|
||||||
|
@ -1024,7 +1024,7 @@ void race_projection() {
|
|||||||
});
|
});
|
||||||
|
|
||||||
if(true) {
|
if(true) {
|
||||||
dialog::addSelItem(XLAT("point of view"), XLAT(player_relative ? "player" : "track"), 'p');
|
dialog::addSelItem(XLAT("point of view"), player_relative ? XLAT("player") : XLAT("track"), 'p');
|
||||||
if(racing::use_standard_centering())
|
if(racing::use_standard_centering())
|
||||||
dialog::lastItem().value = XLAT("N/A");
|
dialog::lastItem().value = XLAT("N/A");
|
||||||
dialog::add_action([] () {
|
dialog::add_action([] () {
|
||||||
|
@ -737,9 +737,9 @@ EX namespace yendor {
|
|||||||
dialog::addBreak(60);
|
dialog::addBreak(60);
|
||||||
if (yendor::on)
|
if (yendor::on)
|
||||||
dialog::addItem(XLAT("Return to the normal game"), '0');
|
dialog::addItem(XLAT("Return to the normal game"), '0');
|
||||||
dialog::addSelItem(XLAT(
|
dialog::addSelItem(
|
||||||
easy ? "Challenges do not get harder" : "Each challenge gets harder after each victory"),
|
easy ? XLAT("Challenges do not get harder") : XLAT("Each challenge gets harder after each victory"),
|
||||||
" " + XLAT(easy ? "easy" : "challenge"), '1');
|
" " + easy ? XLAT("easy") : XLAT("challenge"), '1');
|
||||||
|
|
||||||
dialog::addBack();
|
dialog::addBack();
|
||||||
dialog::addHelp();
|
dialog::addHelp();
|
||||||
|
Loading…
Reference in New Issue
Block a user