В общем сделал так

use = function(s, w)
        if string.find(w.nam,'Дверь') == nil then 
            p 'Не открыл'
        else
            p 'Открыл!'
        end;
    end;

Главное не забывать про регистр.
Всем спасибо.

Ну как вариант можно, но тогда если что-то менять, надо будет каждую дверь проверять заново.
Думал еще сделать через OR 
if w == door_1 or w == door_2 then
Но условие длинное получиться тогда.

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

key_good_room = obj {
    nam = [[Ключ от комнаты]];
    inv = [[Обычный ключ, со странной гравировкой.]];
    act = [[Ключ, как ключ]];
  tak = [[Вы получили ключ от комнаты]];
  use = function(s, w)
        if w == door_1 then
            p 'Открыл!'
        else
            p 'Не открыл'
        end;
    end;
};

Вопрос в том как в условии "w == door_1", сделать так чтобы если объект начинается на слово door (door_1, door_bar), то условие выполнялось.
Хотел сделать через find, но что-то не идет.
Заранее спасибо.

Доброго времени суток. Решил применить в диалогах "Группу фраз", все получилось хорошо, только я пропустил, что он выдает все фразы которые в нем есть сразу. Вопрос можно ли сделать так, чтобы он выводились фразы по порядку, а не всем скопом сразу. Чувствую что нет, но мало ли  big_smile

5

(57 replies, posted in Разработка)

Доброго времени суток. Сейчас есть недописанная первая глава игры. Без музыки, без графического оформления. Стоит ли напрягаться и дописывать ее за выходные, чтобы участвовать в Инстедоз?

Косяк, почему то пропустил here().

Всем привет и снова простой вопрос. Как мне узнать в какой комнате я нахожусь?
Использую объект в разных комнатах, и описание в dsc различается.
Пытался сделать так

station_larkes= obj{
    nam = 'Станция Ларкес';
    dsc = function(s)
            if objs([комната]) ==  platform_larkes --'Перрон станции Ларкес'
            then p [[Перед вами стоит, проверенная временем, {station_larkes|станция}.]];
            else p [[Перед вами стоит, проверенная временем111111111, {station_larkes|станция}.]];
            end;
        end,
    act = [[Станция в плачевном состоянии, и кажется уже не используеться.]];        
};

Но был непонят программой. Как правильно написать условие для функции?
Заранее спасибо.

Спасибо, я подразумевал что все просто до безобразия  smile

Доброго времени суток. Понимаю, что проблема решается легко, но я так и не решил.

Имеется глобальная переменная name_pl

global { 
    name_pl = 'Нет';
    surname_pl = 'Данных';
    housetop_var = 2;
}

При выходе из комнаты хочу ее переназначить

prolog = room {
    nam = 'Пролог',
    dsc = [[{chapter12|Дальше1}
             {chapter13|Дальше2}
             {chapter14|Дальше3}]],
    obj = {
        xact('chapter12',code[[name_pl='Шон'; walk(wagon);]]),
        xact('chapter13',code[[name_pl='Брандон'; walk(wagon);]]),
        xact('chapter14',code[[name_pl='Энди'; walk(wagon);]]),
    };
};

Возможно такой синтаксис в корне неправильный 
" code[[name_pl='Шон'; walk(wagon);]] ",
я основывался на коде из диалога, где он срабатывал
" [25] = _phr('Спасибо Саша. Вы сделали шаг вперед.', '', [[housetop_var=2; walk(housetop)]]); "

Переменную я пытался принять и посмотреть таким образом

wagon = room {
    nam = 'Поезд',
    dsc = name_pl,
    obj = {vway('Пролог', txtc('{Далее}.'), 'prolog')},
};

Всегда возвращает значение "Нет".

И еще как можно в dsc вывести переменную например "Это человек по имени *тут располагается значение из переменной*". Думал сделать объектом, но с этим именем я пока не планирую никаких действий.

Заранее спасибо.

Наткнулся недавно в AppStore на текстовую игру "Город Туманов". http://itunes.apple.com/ru/app/gorod-tu … 71392?mt=8
Игра писалась под платформу QSP. К чему я это, может тогда портировать на IOS не сам INSTEAD, а игры с него?

Спасибо большое Петр.

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

man_copter_dlg = dlg{
    var {
        man_parametr = true;
    };
    forcedsc = true;
    nam = 'Разговор с человеком в вертолете';
    dsc = function (s)
        if s.man_parametr == true
            then 
                p[[Вы слегка наклонились, к своему соседу и спросили у него...]];
            else
                p[[Вас пробил холодный пот. Сонность, вялость все улетучилось в один момент.]];
        end;
    end,    
    obj = {
    [1] =  phr('-Где мы?', '-Как можешь догадаться, по шуму, мы в вертолете. И судя по времени уже минут десять как летим над Мертвой зоной.', [[pon(2); man_parametr = false;]]); 
    [2] = _phr('-Мертвая зона?', '-Мертвая зона, мертвый город, город мертвых. Как хочешь так и называй суть от этого не меняется. ',[[pon(3);]]);
    };
};

Диалог идет дальше, может и параметр изменяется, но текст выводимый dsc не меняется.
И сразу еще вопрос , каким способом можно отслеживать значения в переменной?

Доброго времени суток. Не стал читать всю ветку, за что прошу прощения, но попрошу помощи. Как в реакции диалога то есть phr('Вопрос','Ответ',[[Реакция]]) присвоить переменной новое значения.

Здравствуйте. Для Notepad++ ссылка мертва. Можно ее как то обновить?  smile

15

(143 replies, posted in Игры)

Peter wrote:
Нужно изучить пробирку с анализом. Использовать предмет - двойной щелчок в инвентаре.

Спасибо. Странно что не сделал этого действия.

Я все пытался применить пробирки на стол с оборудованием.

16

(143 replies, posted in Игры)

Всем доброго времени суток. Прошу помощи при прохождении интро.

Значит забрал аптечку из нее извлек шприцы и наполнил все пробирки. Взял карандаш. Автоклав беру и ставлю туда сюда. Толку нет. Пробирки ставлю на стол и беру обратно. Но ничего не происходит. Я так понимаю что чужой должен убежать. Но как это сделать. Пнуть его что ли?  big_smile

Надеюсь на вашу помощь. Без интро не охота проходить игру дальше.