void DisplayAtY (int ypos, char *texx) { if ((ypos < -1) || (ypos >= GetMaxScreenHeight())) quitprintf("!DisplayAtY: invalid Y co-ordinate supplied (used: %d; valid: 0..%d)", ypos, GetMaxScreenHeight()); // Display("") ... a bit of a stupid thing to do, so ignore it if (texx[0] == 0) return; if (ypos > 0) ypos = multiply_up_coordinate(ypos); if (game.options[OPT_ALWAYSSPCH]) DisplaySpeechAt(-1, (ypos > 0) ? divide_down_coordinate(ypos) : ypos, -1, game.playercharacter, texx); else { // Normal "Display" in text box if (screen_is_dirty) { // erase any previous DisplaySpeech play.disabled_user_interface ++; mainloop(); play.disabled_user_interface --; } _display_at(-1,ypos,scrnwid/2+scrnwid/4,get_translation(texx),1,0, 0, 0, false); } }
/* *** SCRIPT SYMBOL: [GUI] GUI::SetSize^2 *** */ void GUI_SetSize(ScriptGUI *sgui, int widd, int hitt) { if ((widd < 1) || (hitt < 1) || (widd > BASEWIDTH) || (hitt > GetMaxScreenHeight())) quitprintf("!SetGUISize: invalid dimensions (tried to set to %d x %d)", widd, hitt); GUIMain *tehgui = sgui->gui; multiply_up_coordinates(&widd, &hitt); if ((tehgui->wid == widd) && (tehgui->hit == hitt)) return; tehgui->wid = widd; tehgui->hit = hitt; recreate_guibg_image(tehgui); guis_need_update = 1; }