1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-12-29 19:40:35 +00:00

texture:: 'paint textures' in main menu now starts Canvas automatically

This commit is contained in:
Zeno Rogue 2019-01-03 15:16:12 +01:00
parent cd2fa33bbc
commit 9ccf82d9dc
3 changed files with 23 additions and 19 deletions

View File

@ -3268,6 +3268,7 @@ namespace texture {
extern bool texture_aura; extern bool texture_aura;
bool using_aura(); bool using_aura();
void start_editor();
} }
#endif #endif

View File

@ -755,18 +755,19 @@ void showStartMenu() {
#if CAP_TEXTURE && CAP_EDIT #if CAP_TEXTURE && CAP_EDIT
else if(uni == 'T') { else if(uni == 'T') {
popScreenAll(); popScreenAll();
pushScreen(texture::showMenu);
resetModes('c'); resetModes('c');
stop_game();
firstland = specialland = laCanvas;
cheater = true;
patterns::canvasback = 0xFFFFFF;
mapeditor::drawplayer = false;
start_game();
clearMessages(); clearMessages();
welcomeMessage(); welcomeMessage();
using namespace texture; calcparam();
if(config.data.whitetexture() && config.data.loadTextureGL()) { drawthemap();
config.tstate = config.tstate_max = tsActive; texture::start_editor();
config.perform_mapping();
config.finish_mapping();
mapeditor::initdraw(cwt.at);
pushScreen(showMenu);
pushScreen(mapeditor::showDrawEditor);
}
} }
#endif #endif
else if(uni == 'g') { else if(uni == 'g') {

View File

@ -1056,6 +1056,17 @@ string texturehelp =
"(these probably work best with the 'large picture' setting in geometry selection). " "(these probably work best with the 'large picture' setting in geometry selection). "
"Again, tesselations can have their geometry changed.\n\n"; "Again, tesselations can have their geometry changed.\n\n";
void start_editor() {
addMessage("white");
if(config.data.whitetexture() && config.data.loadTextureGL()) {
config.tstate = config.tstate_max = tsActive;
config.perform_mapping();
config.finish_mapping();
mapeditor::initdraw(cwt.at);
pushScreen(mapeditor::showDrawEditor);
}
}
void showMenu() { void showMenu() {
cmode = sm::SIDE | sm::MAYDARK | sm::DIALOG_STRICT_X; cmode = sm::SIDE | sm::MAYDARK | sm::DIALOG_STRICT_X;
gamescreen(0); gamescreen(0);
@ -1215,16 +1226,7 @@ void showMenu() {
pushScreen(mapeditor::showDrawEditor); pushScreen(mapeditor::showDrawEditor);
} }
else if(uni == 'n' && config.tstate == tsOff) { else if(uni == 'n' && config.tstate == tsOff) start_editor();
addMessage("white");
if(config.data.whitetexture() && config.data.loadTextureGL()) {
config.tstate = config.tstate_max = tsActive;
config.perform_mapping();
config.finish_mapping();
mapeditor::initdraw(cwt.at);
pushScreen(mapeditor::showDrawEditor);
}
}
#endif #endif
else if(uni == 't' && config.tstate == tsOff) else if(uni == 't' && config.tstate == tsOff)