From 121ea431707eca83720b70ae9c7879b5dba6c362 Mon Sep 17 00:00:00 2001
From: "p.kosyh"
Date: Fri, 17 Jun 2011 13:55:56 +0000
Subject: [PATCH] ua added
---
games/tutorial2-ua/main.lua | 289 ++++++++++++++++++++++++++++++++++++
lang/ua.ini | 142 ++++++++++++++++++
2 files changed, 431 insertions(+)
create mode 100644 games/tutorial2-ua/main.lua
create mode 100644 lang/ua.ini
diff --git a/games/tutorial2-ua/main.lua b/games/tutorial2-ua/main.lua
new file mode 100644
index 0000000..bf3233c
--- /dev/null
+++ b/games/tutorial2-ua/main.lua
@@ -0,0 +1,289 @@
+-- $Name:Навчання$
+
+instead_version "1.3.1"
+
+require "dash" -- '--' replace :)
+require "para" -- be more "Russian"
+require "quotes"
+
+game.act = 'Не виходить.';
+game.inv = "Гм.. Не то..";
+game.use = 'Не зработає...';
+
+game.pic = '../tutorial2/instead.png';
+
+set_music('../tutorial2/ramparts.mod');
+
+main = room {
+ nam = 'Навчання',
+ act = function() -- only one vobj, no check, just goto
+ goto('r1');
+ end,
+ dsc = txtc("Вітаємо в режимі навчання INSTEAD.")..[[^^
+ Гра складається з сцен. Кожна сцена гри має опис,
+ що складається зі статичної та динамічної частини. Динамічна частина включає об'єкти,
+ персонажів и т.і. С динамічною частиною ігрок може взаємодіяти за допомогою миши,
+ нажимаючи на підсвічені посилання.^^
+
+ Дана сцена має назву "Навчання" і зараз Ви читаєте статичну частину її опису.
+ Єдиним об'єктом сцени є об'єкт "Далі", котрий Ви бачите внизу тексту.
+ Отже, для продовження навчання Ви можете натиснути на "Далі".]],
+ obj = {
+ vobj('continue', '{Далі}'),
+ },
+};
+
+paper = obj {
+ nam = 'папір',
+ dsc = 'Перше, що Ви помічаєте в кімнаті -- {аркуш папіру}.',
+ tak = 'Ви взяли папір.',
+ var { seen = false, haswriting = false },
+ inv = function(s)
+ if here() == r2 then
+ s.seen = true;
+ end
+ if not s.haswriting then
+ return 'Чистий аркуш картатого папіру. Схоже, його вирвали з зошиту.';
+ end
+ p 'Аркуш картатого папіру, на якому написано Ваше ім`я.';
+ end,
+ used = function(s, w)
+ if w == pencil and here() == r4 then
+ s.haswriting = true;
+ p 'Ви пишите на аркуші своє ім`я.';
+ end
+ end,
+};
+
+pencil = obj {
+ nam = 'олівець',
+ dsc = 'На підлозі лежить {олівець}.',
+ tak = 'Ви підібрали олівець.',
+ var { seen = false },
+ inv = function(s)
+ if here() == r2 then
+ s.seen = true;
+ end
+ p 'Звичайний дерев`яний олівець.';
+ end,
+};
+
+r1 = room {
+ nam = 'Урок 1',
+ enter = code [[ lifeon('r1') ]],
+ life = function(s)
+ if not have 'paper' or not have 'pencil' then
+ return
+ end
+ put(vway('continue',
+ [[Відмінно!^Ви швидше за все помітили, що статична частина опису сцени
+ зникла, поступівшися місцем опису предметів, котрі Ви взяли.
+ Щоб знову подивитись повний опис сцени, можно нажати на її
+ назву, відображаєму в верхній частині вікна -- "Урок 1". Окрім того,
+ можно нажати клавішу F5 на клавіатурі, результат буде таким же.^^
+ {Далі}]], 'r2'));
+ lifeoff('r1');
+ end,
+ dsc = [[Урок 1. Взаємодія з об`єктами^^
+ Продовжимо урок. Зараз Ви знаходитесь в кімнаті. Візьміть обидва предмети,
+ котрі Ви бачите. Нагадаємо, що для цього Ви можете просто
+ використовувати мишу. Якщо Вам зручніше використовувати клавіатуру -- можно
+ обрати потрібний предмет за допомоги клавіш зі стрілками и натиснути "Введення" для
+ взаємодії з ними.]],
+ obj = { 'paper', 'pencil'},
+};
+
+r2 = room {
+ nam = 'Урок 2',
+ enter = code [[ lifeon('r2') ]],
+ life = function(s)
+ if not paper.seen or not pencil.seen then
+ return
+ end
+ put(vway("continue", "Гарно!^^{Далі}", 'r3'));
+ lifeoff('r2');
+ end,
+ dsc = [[Урок 2. Використування інвентарю - Частина I^^
+ Тепер у Вас з'явилися предмети, котрі можно використовувати чи вивчати.
+ Для цього призначений інвентар. Ви можете подивитися на будь-який предмет
+ інвентарю двічи клацнувши мишею по цьому предмету. Те ж саме можна
+ зробити за допомогою клавіатури: нажміть "Tab", щоб перемкнутися на панель
+ інвентарю, оберіть потрібний предмет и двічі
+ нажміть "Введення". Щоб повернутися назад до опису сцени, нажмить "Tab" ще раз.^^
+
+ Отже, подивитесь на папір. Потім, повторіть цю операцію з олівцем.]],
+};
+
+apple = obj {
+ nam = 'яблуко',
+ dsc = 'На столі лежить {яблуко}.',
+ tak = 'Ви взяли яблуко зі столу.',
+ var { knife = false },
+ inv = function(s)
+ if here() == r4 then
+ remove(s, me());
+ return 'Вы з`їдаєте яблуко.';
+ end
+ p 'Виглядить апетитно.';
+ end,
+};
+
+desk = obj {
+ nam = 'стіл',
+ dsc = 'В цьому уроці ви бачите дерев`яний {письмовий стіл}.',
+ var { haswriting = false, seen = false },
+ act = function(s)
+ if s.haswriting then
+ s.seen = true;
+ return 'Великий дубовий письмовий стіл. На стільниці видно дрібний напис олівцем: "Любіть Україну".';
+ end
+ p 'Великий дубовий письмовий стіл.';
+ end,
+ used = function(s, w)
+ if w == pencil and not s.haswriting then
+ s.haswriting = true;
+ p 'Ви пишете на столешні декілька букв.';
+ end
+ end,
+ obj = { 'apple' },
+};
+
+r3 = room {
+ nam = 'Урок 3',
+ enter = code [[ lifeon('r3') ]],
+ life = function(s)
+ if not desk.seen or not have('apple') then
+ return
+ end
+ put(vway("continue", "^^{Далі}", 'r4'));
+ lifeoff('r3');
+ end,
+ dsc = [[Урок 3. Використання інвентаря - Частина II^^
+ Ви можете задіяти предмети інвентарю на інші предмети сцени чи інвентарю.
+ В цій комнаті ви бачите стіл. Спробуйте задіяти олівець на стіл.^^
+
+ Для цього клацніть мишей на олівець, а потім на стіл. Те ж саме можна зробити
+ за допомогою клавіатури: використовуючи клавіши "Tab", "Введення" и "стрілки".^^
+
+ Потім подивиться на стіл. І не забудьте взяти яблуко, воно нам знадобиться в наступному уроці.]],
+ obj = { 'desk' },
+};
+
+r4 = room {
+ nam = 'Урок 4',
+ enter = function()
+ apple.knife = false;
+ lifeon('r4');
+ end,
+ life = function(s)
+ if not paper.haswriting or have('apple') then
+ return
+ end
+ put(vway("continue", "Гаразд.^^{Далі}", 'r5'));
+ lifeoff('r4');
+ end,
+ dsc = [[Урок 4. Використання інвентарю - Частина III^^
+ Гаразд, тепер вивчимо ще декілька дій з предметами.^^
+
+ По-перше, напішить що-небудь на папірі. Для цього нажміть мишею
+ на олівець, а потім на папір. Після цього ви можете подивитись
+ на папір, щоб побачити ваш запис.^^
+
+ По-друге, з'їште яблуко, котре Ви взяли зі столу в попередній кімнаті.
+ Для цього двічи клацніть по яблуку в інвентарі.^^
+
+ Всі описані дії можна виконати за допомогою клавіатури так само,
+ як показано в попередньому уроці.]],
+};
+
+r5 = room {
+ nam = 'Урок 5',
+ exit = function(s, t)
+ if t ~= r6 then
+ return 'Цей урок ми вже пройшли.^ Будь ласка, перейдіть на урок 6.', false;
+ end
+ end,
+ dsc = [[Урок 5. Переміщення - Частина I^^
+ Тепер вивчим переходи між кімнатами. В цій кімнате Ви бачите п'ять
+ допоміжних посилань з номерами уроків. Перейдіть на урок 6. ^^
+
+ Для цього натисніть мишей на відповідне посилання. Ви також можете використати
+ клавиатуру -- виберіть потрібне посилання за допомогою клавіш зі стрілками
+ та нажміть "Введення" для переходу.]],
+ way = { 'r1', 'r2', 'r3', 'r4', 'r6'},
+};
+
+r6 = room {
+ nam = 'Урок 6',
+ exit = function(s, t)
+ if t ~= theend then
+ p 'Цей урок ми вже пройшли.^ Будь ласка, перейдіть на останній урок.'
+ return false; -- same as return "text", false
+ end
+ end,
+ dsc = [[Урок 6. Переміщення - Частина II^^
+ Тепер перейдіть на останній урок.]],
+ way = { 'r1', 'r2', 'r3', 'r4', 'r6', 'theend'},
+};
+
+theend = room {
+ nam = 'Останній урок',
+ dsc = [[Ви можете вибрати гру, зберегати и загружати її стан і виповняти
+ інші дії за допомогою меню. Для визову меню натисніть клавішу "Esc" або
+ натисніть мишею на символ меню (справа знизу).^^
+ Тепер Ви готові до гри. Хай щастить!!!^^
+ Ігри для INSTEAD можно завантажити тут: ]]..txtu("http://instead.syscall.ru")..[[^^
+ Для навчення використан трек Ramparts от Scorpion.]],
+ obj = { vway('keys', 'Подивитись {список клавіш}.', 'help')},
+};
+
+help = room {
+ nam = 'Список клавіш',
+ dsc = [[
+ Esc - Виклик меню;^
+ Alt+Q - Вихід;^
+ Alt+Enter - Півноекранний/віконний режим;^
+ F5 - Оновлення сцени;^
+ Пробел/Backspace - Прокрутка опису сцени;^
+ Tab/Shift+Tab - Переключення між активними зонами;^
+ PgUp/PgDn - Прокрутка активної зони;^
+ Стрілки вліво/вправо - Вибір посиланнь в активній зоні;^
+ F2 - Збереження гри;^
+ F3 - Завантаження гри;^
+ F8 - Швидке збереження гри;^
+ F9 - Швидке завантаження гри.^^
+
+ Клавіши, поведінка яких залежить від обраного режиму клавіатури
+ (див. Меню -> Налаштування -> Режим клавіатури):^^
+
+ Стрілки вгору/вниз:^
+ - В режимі "Прокрутка": прокрутка активної зони;^
+ - В режимі "Посилання": вибір посиланнь в активній зоні;^
+ - В режимі "Розумний": одночасний вибір посиланнь та прокрутка активної зони.^^
+
+ Стрілки вгору/вниз + Shift або Alt:^
+ - В режимі "Прокрутка": вибір посиланнь в активній зоні;^
+ - В режимі "Посилання": прокрутка активної зони;^
+ - В режимі "Розумний": прокрутка активної зони.
+ ]],
+ obj = { vway('cmdline', 'Подивитись {параметри командного рядка}.', 'help2')},
+};
+
+help2 = room {
+ nam = 'Параметри командного рядка',
+ dsc = [[
+ -nosound - запуск без звуку;^
+ -alsa - примусове використання alsa (тільки для Linux);^
+ -debug - режим налагоджування для розробників ігр;^
+ -theme <тема> - вибір теми;^
+ -game <гра> - вибір гри;^
+ -themespath <шлях> - додатковий шлях до тем;^
+ -gamespath <шлях> - додатковий шлях до ігр;^
+ -windows - віконний режим;^
+ -fullscreen - повноекранний режим;^
+ -noautosave - відключити автозбереження/автозагрузку;^
+ -encode [encoded.lua] - закодувати вихідний текст lua (використовуйте doencfile для загрузки такого файла);^
+ -mode [ШИРИНАxВИСОТА] - встановити вимір екрану.
+ ]],
+ obj = { vway('keys', 'Подивитись {список клавіш}.', 'help')},
+};
diff --git a/lang/ua.ini b/lang/ua.ini
new file mode 100644
index 0000000..d792363
--- /dev/null
+++ b/lang/ua.ini
@@ -0,0 +1,142 @@
+;$Name:Українська$
+UNKNOWN_ERROR = Невідома помилка.
+ERROR_MENU = Під час ініціалізації виникла невідома помилка:\n\
+'%s'\n\
+\n\
+Так
+
+WARNING_MENU = Під час роботи гри виникла помилка:\n\
+'%s'\n\
+\n\
+Так
+
+SAVE_SLOT_EMPTY = пусто
+SELECT_LOAD_MENU = Завантажте гру\n\n
+AUTOSAVE_SLOT = Автозбереження
+BROKEN_SLOT = помилка
+SELECT_SAVE_MENU = Збережить гру\n\n
+
+MAIN_MENU = \
+Продовжити гру\n\
+Вибір гри\n\
+Вибір теми\n\
+Розпочати заново\n\
+Завантажити гру\n\
+Зберегти гру\n\
+ІнформацІя\n\
+Налаштування\n\
+Вихід
+
+ABOUT_MENU = \
+INSTEAD SDL - %s\n\
+\n\
+Інтерпретатор простих\n\
+текстових пригод:\n\
+Косих П.О. '2009-2011\n\
+\n\
+Адаптація для Windows:\n\
+Риндін І.В. '2009\n\
+\n\
+Сайт проекта:\n\
+http://instead.googlecode.com\n\
+\n\
+Назад
+
+BACK_MENU = Назад
+ON = Так
+OFF = Ні
+
+KBD_MODE_LINKS = Посилання
+KBD_MODE_SMART = Розумний
+KBD_MODE_SCROLL = Прокрутка
+
+FROM_THEME = Тема
+
+SETTINGS_SND_MENU = \
+[Графіка][Звук][Інше]\n\
+\n\
+Гучність: <<< %d%% >>>\n\
+\n\
+Якість: << %dГц >>\n\
+\n\
+Музика: %s\n\
+Звук клацання: %s\n\
+\n\
+Застосувати
+
+SETTINGS_GFX_MENU = \
+[Графіка][Звук][Інше]\n\
+\n\
+Розмір вікна: <<%s>>\n\
+Повний екран: %s\n\
+Масштаб шрифту: <<%d>>\n\
+\n\
+Підсвітка посиланнь: %s\n\
+Власні теми ігр: %s\n\
+\n\
+Застосувати
+
+SETTINGS_OTH_MENU = \
+[Графіка][Звук][Інше]\n\
+\n\
+Режим прокрутки: %s\n\
+Фільтр миши: %s\n\
+Режим клавіатури: %s\n\
+\n\
+Мова: <<%s>>\n\
+Автозбереження: %s\n\
+\n\
+Застосувати
+
+CUSTOM_THEME_MENU = \
+Увага!!!\n\
+\n\
+Гра містить власну тему, але підтримка власних тем відключена в налаштуваннях. \
+Гра може виглядати не так, як задумував її автор.\n\
+\n\
+Ви можете дозволити можливість перевизначення тем в налаштуваннях.\n\
+\n\
+Так
+
+OWN_THEME_MENU = \
+Увага!!!\n\
+\n\
+Вибрана гра перевизначає тему. Зміни не вступять до сили.\n\
+\n\
+Ви можете заборонити можливість перевизначення тем в налаштуваннях.\n\
+\n\
+Так
+
+QUIT_MENU = \
+Насправді вийти?\n\
+\n\
+Так | Ні
+
+SELECT_GAME_MENU = Вибір гри\n\n
+SELECT_THEME_MENU = Вибір теми\n\n
+SAVED_MENU = \
+Гра збережена!\n\
+\n\
+Так
+
+NOGAMES_MENU = \
+Не знайдено жодної гри.\n\
+Будь ласка, скопіруйте хоча б одну гру до каталогу:\n'%s'
+
+NOTHEMES_MENU = \
+Не знайдено жодної теми.\n\
+Будь ласка, скопіруйте хоча б одну тему до каталогу:\n'%s'\n
+
+CANCEL_MENU = Відміна
+
+DISABLED_SAVE_MENU = \
+Збереження заборонено грою.\n
+
+BROWSE_MENU = \
+[...]
+
+REMOVE_MENU = \
+Видалити гру?\n\
+%s\n\
+\n\
+Так | Ні