Перейти к содержимому
Ktlo

[CC] Object API

Рекомендуемые сообщения

Object API

(Работаю над названием)

Представляю вам третью версию Object API, которое я начал писать ещё давно, первых двух версий вы здесь не найдёте. Это библиотека работает только на Computer Craft, так что возможно зря я её писал...  :unsure: В любом случае, я надеюсь, что вы оцените. Сейчас в этой библиотеке есть следующие элементы: Button, CheckBox, Graph, Image, Label, Process, Registry, TextBox (не доделано). Планирую написать ещё очень много.
 
Скачать можно с pastebin:

pastebin get 3Bq2Sgvi object

Устанавливается стандартной функцией os.loadAPI("object") или с помощью require. Под мою функцию она изначально была лучше адаптированна. Но не подумайте, со стандартной функцией работает.



 
Изображение


Получение объекта изображения:

Image = Object.Image{xPos=number, yPos=number, Image=table or string[, Term=table, Width=number, Height=number, xOffset=number, yOffset=number, BackgroundColor=number, BorderStyle=string, BorderColor=number, LinesColor=number, Visible=boolean]} 

Обязательные аргументы:

  • xPos и yPos — положение верхнего, левого угла изображения,
  • Image — таблица изображения или путь до него, можно загружать изображение стандартной программы paint с помощью paintutils.loadImage или изображение формата nft с помощью функции Object.Image.LoadNFT.

Необязательные аргументы:

  • Term — объект окна или монитора, где будет отображаться изображение,
  • Width, Height — ширина и высота изображения,
  • xOffset, yOffset — смещение изображения по x и y соответственно,
  • BackgroundColor — цвет за изображением, если равен нулю, то не используется,
  • BorderStyle — стиль рамки вокруг изображения, может быть "none", "box" или "lines",
  • BorderColor — цвет рамки,
  • LinesColor — цвет линий на рамке,
  • Visible — ели false, не рисует изображение автоматически,
  • Key — номер кнопки.

Таблица Object.Image также содержит функцию для загрузки nft изображений:

tImage = Object.Image.LoadNFT( "path" ) 

Загрузка изображений отдельно от объекта может понадобиться для хранения всех изображений в одном файле и последующего смещения в каждом объекте, чтобы не создавать несколько одинаковых таблиц.

 

Все параметры объекта можно поменять, например:

Image.xOffset = Image.xOffset+4 

Также объект содержит только читаемый параметр Image.Path, который устанавливается при указании пути до файла.

 

Методы:

  • Image.Draw() — рисует объект,
  • Image.Detect(event=string, tEvent=table) — детектирует следующие действия, связанные с изображением: "mouse_click", "mouse_up", "mouse_drag", "mouse_scroll", "monitor_touch" и "key", где event — ожидаемое действие, а tEvent — таблица с информацией действия полученной от os.pullEvent (tEvent = { os.pullEvent() }), если tEvent не указано, будет прослушивать действие сам.

 

 

 

Потом напишу про остальные объекты.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Если хочешь, чтобы пригодилось, и еще долго писать не зря - переноси на OC.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


×
×
  • Создать...