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\ +Так | Ні