Бьюсь тут над анализатором вводимых игроком команд. Поскольку я не гений, то приходится делать некоторые ограничения игрокам при составлении предложений, а именно следующие:
1. Глагол должен всегда идти первым:
"возьми яблоко", а не "яблоко возьми"
2. Характеристики действия и объектов должны идти перед объектами:
"возьми красное яблоко", а не "возьми яблоко красное"
"осторожно положи камень на тумбу", а не "положи осторожно камень на тумбу"
По-моему, это не критично и, в принципе, естественно. Какие будут замечания или дополнения?
Неактивен
Olegus t.Gl. написал:
С предлогами-то как раз проблем нет, но вот числительные - та еще штучка...
С числительными я как-то разбирался.
Если не ошибаюсь, то всё, что кончается на 1, кроме 11, имеет И.п. (Именительный падеж).
Всё, что на 2, кроме 12, - В.п.
Всё на 3-9, кроме 13-19, - В.п.
А 11-19 - Р.п.
Ой, кажется я что-то напутал. Ну, думаю, мои мысли понятны. Или тебе не это нужно?
Неактивен
Olegus t.Gl. написал:
Пишу-то я на Паскале.
Что касается расположения глаголов и пр., а если в предложении два действия: "возьми камень и кинь его в гоблина"? Хотя все это решаемо.
Что касается помощи, то пока справляюсь. Хотя характеристики еще не реализованы. Структура команды по Olegus'у такова:
глагол + осн.объект + всп.объект + доп.объект
"привяжи лошадь к забору веревкой"
Порядок следования объектов и предлоги роли не играют, то есть тем же самым для компьютера будет: "привяжи с помощью веревки лошадь к забору". Хотя все это требует нехилой словарной базы. К тому же возможно использования нескольких команд (см. пример выше про бедного гоблина), а также нескольких объектов: "возьми камень, пилу, топор и пожрать".
В любом случае, работа идет и, хвала небесам!, останавливаться не собирается! ;D
А может реализовать всё через маски? Как в Inform`у.
Неактивен
Olegus t.Gl. написал:
В каком смысле? Можно поподробнее насчет масок в Inform'е?...
В Inform`е же используются маски для парсинга введённой строки
Неактивен
Olegus t.Gl. написал:
В самом скором времени (до 8 февраля) выложу алгоритм анализа фразы игрока. Он прост, но хорош. Я его использую в "Наследство Мути...".
Это кому-либо интересно?
Да-да, интересно было бы посмотреть.
Неактивен