Розділ 4. Довідник розробника для Killbots

Зацікавлені особи можуть підлаштувати Killbots у два основних способи: теми і набори правил.

Створення власних тем Killbots

Як і у більшості інших ігор для KDE, тема Killbots складається з трьох файлів.

Файл .desktop

У файлі desktop використовується стандартний синтаксис INI. У парах ключ-значення зберігаються відомості про тему та вказуються інші файли, включені до теми. Наведений нижче приклад взято з типової теми.

Приклад 4.1. Приклад файла .desktop теми

[KGameTheme]
Name=Example Theme
Description=An example theme used to demonstrate theme creation. This one features pirates.
Author=Mr. Artist
AuthorEmail=mrartist@example.com
Type=SVG
FileName=example.svg
Preview=example.png
        

Перші чотири параметри містять метадані, що стосуються теми, вони є достатньо очевидними з назв параметрів. Для тем Killbots параметр Type (тип) слід завжди встановлювати у значення SVG. У останніх двох параметрах містяться назви файлів двох інших файлів теми. Хоча це і не є обов’язковим, ми наполегливо рекомендуємо, щоб з міркувань послідовності всі три файли мали однакову базову назву.

Файл попереднього перегляду

Файлом попереднього перегляду має бути звичайний файл PNG з зображенням вікна програми з застосованою темою. Зображення попереднього перегляду повинно мати розміни 240 на 140 пікселів і має якомога точніше відповідати компонуванню попереднього перегляду типової теми, щоб теми у інструменті вибору теми було легко порівняти.

Файл SVG

Файл SVG — це файл масштабованої векторної графіки, у якому містяться графічні елементи, використані для побудови теми. Файл можна зберігати як у форматі .svg, так і у стиснутому форматі .svgz. У файлі SVG кожен з елементів визначається унікальним ідентифікатором. Створення нової теми найпростіше розпочати з наявної теми, у якій послідовно замінити елементи, аж до завершення створення теми. У файлі SVG мають бути такі елементи:

background

Зображення, яке буде показано під ґраткою у основній області гри.

status

Панель, яку буде використано для показу відомостей про поточний раунд, кількість ворогів і енергію.

textcolor

Цей елемент має бути однотонним прямокутником. Його колір буде використано для розфарбування тексту на панелях стану.

cell

Окрема комірка ґратки.

hero

Герой, яким керуватиме гравець.

enemy

Основний ворог.

fastenemy

Пришвидшений ворог.

junkheap

Залишки від зіткнення між ворогами.

cursor0

Курсор, який вказує рух праворуч.

cursor1

Курсор, який вказує рух вгору і праворуч.

cursor2

Курсор, який вказує рух вгору.

cursor3

Курсор, який вказує діагональний рух вгору і ліворуч.

cursor4

Курсор, який вказує рух ліворуч.

cursor5

Курсор, який вказує діагональний рух вниз і ліворуч.

cursor6

Курсор, який вказує рух вниз.

cursor7

Курсор, який вказує рух вниз і праворуч.

cursor8

Курсор, який вказує на нерухомість.

Встановлення власних тем

Для того, щоб програма Killbots виявила і змогла використовувати нову тему, ці файли слід скопіювати до відповідного каталогу. Щоб встановити тему лише для поточного користувача, скопіюйте файли стільниці (desktop), попереднього перегляду (preview) і SVG до підкаталогу killbots/themes у локальному каталозі, що визначається командою qtpaths --paths GenericDataLocation . Щоб тема стала доступною для всіх користувачів системи, скопіюйте ці файли до підкаталогу killbots/themes у загальносистемному каталозі (з виведених результатів попередньої команди, наприклад, /usr/share або щось подібне). Не забувайте, що для виконання цієї операції вам будуть потрібні права доступу адміністратора системи.