1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/WuHuiSai-GMS2-SIUI

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

GMS2-SIUI

Введение

Проект GameMaker Studio2
UI-фреймворк от студии «Маленький жук».

Инструкция по использованию

Есть два метода использования.

Метод использования отдельного View

  1. Создайте объект, который наследуется от sai_oView.
  2. Перепишите или измените соответствующие события.
  3. Перетащите объект в комнату.

Метод использования вложенного View

  1. Выполните метод 1 для создания пользовательского view.
  2. Создайте элемент управления с помощью функции sai_scrViewNew.

Краткое описание UI-фреймворка

Этот UI-фреймворк основан на sai_oView, и все view наследуются от него.

Создание кода view

При создании верхнего уровня view укажите noone в качестве параметра parent:

//Создаём верхний уровень view в координатах (100, 100) игры
page_root = sai_scrViewNew(noone, sai_oView, 100, 100);

Создавая дочерний view, укажите id в качестве параметра parent:

//Создаем кнопку под page_root, её координаты относительно (20, 20)
var btn = sai_scrViewNew(page_root, sai_oButton, 20, 20);

Пользовательский view

Создайте пустой объект, наследуйте от sai_oView и определите свойства в событии create. Затем перепишите user_event0 для рисования самого себя, например, для sai_oTextView:

/// @description Рисование текста
// Вы можете написать свой код в этом редакторе

// Наследуем родительское событие
event_inherited();

//Очищаем поверхность
draw_clear_alpha(c_white, 0);

//Рисуем текст
draw_set_valign(fa_top);
draw_set_halign(fa_left);
draw_text(0, 0, text);

Свойства view

//Тип view для различения типов и экземпляров
view_type = "view";
view_id = 0;

//Является ли это элементом GUI, действует только для родительского элемента
view_is_gui = true;

//Фокус view, по умолчанию нет
view_focus = false;

//Список дочерних view
view_child_list = ds_list_create();

//Родительский view
view_parent = noone;

//Отображается ли view
view_show = true;

//Ширина и высота view
view_width = sprite_width;
view_height = sprite_height;
view_width_ = sprite_width;
view_height_ = sprite_height;

view_width = view_width>0?view_width:1;
view_height = view_height>0?view_height:1;

//Поверхность view
view_surface = surface_create(view_width,view_height);

//Идентификатор события view
enum VIEW_EVE
{
	DRAW = 0,			//Рисование
	RESIZE,				//Изменение размера
	MB_L_DOWN = 2,		//Левая кнопка мыши
	MB_L_PRES,
	MB_L_RELE,
	MB_R_DOWN = 5,		//Правая кнопка мыши
	MB_R_PRES,
	MB_R_RELE,
	MB_M_DOWN = 8,		//Средняя кнопка мыши
	MB_M_PRES,
	MB_M_RELE
};

//Возвращаемое значение события, по умолчанию true
for(var i=0;i<20;i++)
{
	//Перехватываем ли мы события мыши
	view_mb_event_inter[i] = true;
	view_event_re[i] = true;
	
	//Событие соответствует user_event_id
	view_event_id[i] = i;
}

//Тип события мыши
view_mb_event_type = VIEW_EVE.MB_L_DOWN;


//Координаты касания хранятся
tap_x = 0;
tap_y = 0;

//Цвет фона
view_clear_bkg = false;
view_bkg_color = 0x83AF9B;

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Самостоятельно созданная UI-рамка для GameMaker Studio 2. Развернуть Свернуть
GPL-3.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/WuHuiSai-GMS2-SIUI.git
git@api.gitlife.ru:oschina-mirror/WuHuiSai-GMS2-SIUI.git
oschina-mirror
WuHuiSai-GMS2-SIUI
WuHuiSai-GMS2-SIUI
master