Справка:string_widthstring_heightdraw_set_halign (Опционально)//draw_set_halign(fa_left);
//draw_set_color(color);
draw_roundrect(x, y, x + string_width(string), y + string_height(string), false);
// string - рисуемый вами текст.
// x, y - координаты рисуемого вами текста.
Надеюсь вы разберётесь в данном методе.
Дело в том, что draw_text_ext рисует текст в установленной ширине и сам переносит текст на следующую строку. По вашему методу GM измерит весь текст в 1 строку и нарисует прямоугольник в одну строку, т к string_height(string) получается равен 1
var ww = string_width(text);
var hh = string_height(text);
if point_in_rectangle(mouse_x, mouse_y, x + 25, y, x + ww + 25, y + hh)
{
draw_set_color(c_aqua);
draw_set_halign(fa_left);
draw_roundrect_colour(x, y, x + ww, y + hh, #2B2E4A, #2B2E4A, false);
draw_text_ext(x + 25, y, text, stringHeight, boxWidth);
} else {
draw_set_color(c_white);
draw_set_halign(fa_left);
draw_roundrect_colour(x, y, x + ww, y + hh, #2B2E4A, #2B2E4A, false);
draw_text_ext(x + 25, y, text, stringHeight, boxWidth);
}
[вложение удалено Администратором]