Среда, 27 Ноября 2024, 16:57

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Проблема с рисование меню
Quad69Дата: Понедельник, 31 Августа 2015, 14:15 | Сообщение # 1
заслуженный участник
Сейчас нет на сайте
Здравствуйте.
Возникла проблема с меню и нажатием кнопок на ней, хотя раньше у меня проблем с этим не было(перешёл на gms и вот)
Я использую немного другие настройки вида(скрин ниже в спойлере), это скорее всего и есть проблема, потому что при использовании данных настроек с mouse_x/y и другими похожими функция выдают странные значения
(что то типо мышь стоит на координатах 32, а выдаёт 341 и т.д)

Мой код:
//Global mouse pressed
Код
var xx=22;
var yy=44;
var i=0;
while(i<21)
{
if (window_mouse_get_x()>view_xview[0]+622 && window_mouse_get_y()>view_yview[0]+44 && window_mouse_get_x()<view_xview[0]+778 && window_mouse_get_y()<view_yview[0]+408)
{
if (window_mouse_get_x()>view_xview[0]+(600+xx) && window_mouse_get_y()>view_yview[0]+yy && window_mouse_get_x()<view_xview[0]+(600+xx+52) && window_mouse_get_y()<view_yview[0]+yy+52){
      if (mouse_check_button_pressed(mb_left))
      {
          show_message(string(i))//Выводит номер ячейки по которой я нажал.
      }
}
}
if xx<126 {xx+=52}else{xx=22;yy+=52}
i++;
}


P.s Если вид находится в стандартной позиции(0,0) то всё прекрасно работает.
P.s.s Меню само рисую в draw gui


Сообщение отредактировал maksim1221232 - Понедельник, 31 Августа 2015, 14:15
YellowAfterlifeДата: Понедельник, 31 Августа 2015, 17:37 | Сообщение # 2
Сейчас нет на сайте
Если добавлять view_x\yview, нужно использовать mouse_x\y (что учитывают смещение вида в комнате).
Если не добавлять, то нужно использовать window_mouse_get_x\y (или device_mouse_x\y_to_gui).
Сейчас у тебя смешаны относительные и абсолютные координаты и потому не работает.

Ещё можно занести координаты мыши в локальные переменные и\или использовать point_in_rectangle для сокращения кода.


Quad69Дата: Понедельник, 31 Августа 2015, 18:42 | Сообщение # 3
заслуженный участник
Сейчас нет на сайте
YellowAfterlife, Спасибо, проблему решил.
Убрал все view_x/yview и всё заработало.
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг