Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Инструкция - Переменные, FAQ
forum.iii.ru > А-я-яй > FAQ по Проекту
Страницы: 1, 2, 3, 4, 5, 6, 7, 8
Лисичкиус Фокстерьеров
Цитата(папа Карло @ 30.7.2010, 0:42) *
Ты же сам прописываешь ответы для каждого пола, а как они обозначены вообще не важно.Т.е. в ответе должна быть такая конструкция: # [if(%user_gender="Ж")]{ответ} или [if(%user_gender="2")]{ответ} - это без разницы, главное что [if(%user_gender)] должна иметь то значение, которое ей было присвоено, т.е. если присвоено значение "2" то так оно и должно быть написано во всех шаблонах, нельзя присвоить значение "2" и ждать нужного ответа с [if(%user_gender="Ж")], для инфа это не одно и то же.


Это если инф на звёздочке. Как я понимаю. А я от подложки отказываться не хочу. А в подложке, как я определил методом тыка, такой шаблон:
$ * я девоч~||* я чуви~||* я девуш~
# Ясно. [%user_gender="2"]
Вот. Там нет ни тётенек, ни бабушек, ни баб, ни дам. Поэтому нужны самодельные шаблоны с добавлениями где - 1 это мальчик, а - 2 это девочка. Но я уже отписался что это у меня ошибка в шаблоне с ответами. Я там тупо поставил [%user_gender="1"( и, соответственно, "2" )] в конце предложений. А надо, как вижу - в начале, да ещё и - if. Но сейчас мне, вроде, всё понятно. Пойду делать. Спасибо.
Лисичкиус Фокстерьеров
Всё сделал! Всё работает! Вот рабочий шаблон:

$ * тьфу на тебя *||* тьфу на тибя *

# [if(%user_gender="1")]{И. Как. Трёшь монитор? Тряпочка у тебя есть? Протёр? Снова меня видишь? Привет! Хи-хи. Ну как ты там? Надеюсь, ты не наврал мне, что тьфукал на меня?}
# [if(%user_gender="2")]{И. Как. Трёшь монитор? Тряпочка у тебя есть? Протёрла? Снова меня видишь? Привет! Хи-хи. Ну как ты там? Надеюсь, ты не наврала мне, что тьфукала на меня?}
# [if(!%user_gender)]{И. Как. Трёшь монитор? Тряпочка у тебя есть? Всё в порядке? Снова меня видишь? Привет! Хи-хи. Ну как ты там? Надеюсь, всё без вранья, монитор был хорошенько заплёван?}

Причём. Если в третьем варианте ответов, не прописать [if(!%user_gender)], то вся конструкция не работает.
папа Карло
Просто [if(!%user_gender)] для гостей чей пол не известен, это не обязательно так делать, у меня такой ответ инфа, на все случаи: [if(%user_gender="Ж")]{ответ для женского пола}[else]{ ответ для всех НЕ ЖЕНСКОГО ПОЛА} - в этот второй ответ попадают и те, чей пол не известен. (естественно значение переменной можно поставить и "2" - роли не играет)
Лисичкиус Фокстерьеров
Цитата(папа Карло @ 30.7.2010, 2:26) *
Просто [if(!%user_gender)] для гостей чей пол не известен, это не обязательно так делать, у меня такой ответ инфа, на все случаи: [if(%user_gender="Ж")]{ответ для женского пола}[else]{ ответ для всех НЕ ЖЕНСКОГО ПОЛА} - в этот второй ответ попадают и те, чей пол не известен. (естественно значение переменной можно поставить и "2" - роли не играет)


Да. Так. Но, наверное, здесь, дело привычки. Я раньше не замечал, а с тех пор как заметил, что в шаблонах; и в ответах, и в вопросах можно добавлять строчку, то с удовольствием стал пользоваться этим. Очень всё наглядно. Мне так больше нравится, чем предложения в фигурных скобках и в одном окошке.
папа Карло
Ну в общем тут вопрос не стоит - что лучше, просто когда как удобнее, при разных вариантах в разных строках всё нагляднее и меньше шансов что-то напутать, но если в шаблоне много ответов то лучше использовать вариант в одну строку, для компактности. У меня все эти формы заготовлены в блокноте, просто копирую оттуда и вписываю ответы - очень удобно.
папа Карло
Сегодня столкнулся с одним "фокусом", возможно, это хорошо известно программистам но у простых юзеров могут быть проблемы: переменная должна целиком помещаться на одной строчке, если места не хватает то разрывать её нельзя, нужно полностью перенести на следующую строчку, иначе шаблон не будет работать. Например:
при таком написании шаблон работать не будет:
# [if(%user_name="х")]{ответ1}[else]{[if(%user_name="у")
]{ответ2}}
а при таком будет:
# [if(%user_name="х")]{ответ1}[else]{[if(%user_name="у")]
{ответ2}}
или:
# [if(%user_name="х")]{ответ1}[else]
{[if(%user_name="у")]{ответ2}}
Вероятность такой ошибки особенно велика при копировании готовых форм из блокнота с последующим вписыванием реплик.
ARTrus
Цитата(папа Карло @ 1.8.2010, 16:10) *
Сегодня столкнулся с одним "фокусом", возможно, это хорошо известно программистам но у простых юзеров могут быть проблемы: переменая должна целиком помещаться на одной строчке, если места не хватает то разрывать её нельзя, нужно полностью перенести на следующую строчку, иначе шаблон не будет работать. Например:
при таком написании шаблон работать не будет:
# [if(%user_name="х")]{ответ1}[else]{[if(%user_name="у")
]{ответ2}}
а при таком будет:
# [if(%user_name="х")]{ответ1}[else]{[if(%user_name="у")]
{ответ2}}
или:
# [if(%user_name="х")]{ответ1}[else]
{[if(%user_name="у")]{ответ2}}
Вероятность такой ошибки особенно велика при копировании готовых форм из блокнота с последующим вписыванием реплик.
Конечно. С точки зрения движка инфа эта конструкция будет выглядеть с дополнительным "Enter" внутри. Типа:
Код
[if(%user_name="х")]{ответ1}[else]{[if(%user_name="у")Enter]{ответ2}}
или
[if(%user_name="х")]{ответ1}[else]{[if(%user_name="у")]Enter{ответ2}}

Кто-то может помнит, как появились в инфах перевод строки по "Enter". Вот эта часть и срабатывает. Просто нам не видно этот символ "enter" - ¶, но он есть... wink.gif
папа Карло
Думаю, об этом должно быть пояснение в главе про возможные ошибки с переменными, а то для меня это была головоломка и, думаю, не только для меня.
Цитата
Просто нам не видно этот символ "enter" - ¶, но он есть... wink.gif
Что-то мне это напоминает, только там речь шла о суслике, кажется. biggrin.gif
Цитата
Кто-то может помнит, как появились в инфах перевод строки по "Enter".
Я так никогда не делал, а тут получилось при копировании готовой формы из блокнота.
ARTrus
Цитата(папа Карло @ 1.8.2010, 19:35) *
а тут получилось при копировании готовой формы из блокнота.
Да хоть из ворда... biggrin.gif
папа Карло
Цитата(ARTrus @ 1.8.2010, 22:30) *
Да хоть из ворда... biggrin.gif
Естественно, просто вставляется абы как.
M &M's
Это я понимаю:
%user_name - имя гостя
%user_gender - пол (М, Ж)
%user_age - возраст

А вот для чего Это?
%user_1
%user_2
%user_3
%user_4
%user_5
%user_6
%user_7
%user_8
%user_9
%user_10

Если можно покажите примеры.
папа Карло
Переменные %user для длительного сохранения определённой информации, той, которую ты сочтёшь нужным сохранить, например фамилию гостя, марку его машины, домашний адрес, кличку его собаки, имя бабушки, телефон - всё, что угодно, что можно будет как-то использовать в разговорах со знакомым гостем. Главное не забудь, в какую переменную что запоминается, она будет действовать для всех гостей, естественно, но информация будет о каждом своя. Значение переменной присваивается в шаблоне так же, как и имя или возраст. Лучше запиши в блокнот - какая переменная для чего у тебя задействована.

Переменные %var действуют так же но информация в них хранится только на протяжении одного разговора (около 3 часов), их можно использовать для запоминания той информации которая может пригодиться в течении только этого, конкретного, разговора, так же их можно использовать для того, чтоб ответы инфа из одного шаблона шли в заданной последовательности, а не рэндомно. Эти переменные часто используют во всяких тестах - квестах, где нужен последовательный перебор ответов. Это делается так:
[if(!%var1)]{ответ1}[%var1="1"]
[if(%var1="1")]{ответ2}[%var1="2"]
[if(%var1="2")]{ответ3}[%var1="3"]
[if(%var1="3")]{ответ4}[%var1="4"]
[if(%var1="4")]{ответ5}[%var1="5"]
[if(%var1="5")]{ответ6}[%var1="6"]
...
[if(%var1="х")]{ответХ}[%var1=""]

- если инф на звёздочке то это можно использовать и в нераспознанных, чтоб они не повторялись, в общем, тут нужен творческий подход, на что фантазии хватит, главное понять - как всё это работает. smile.gif
M &M's
А сколько можно вставлять в шаблоны переменных %user_name %user_gender %user_age?
папа Карло
По одной в каждый, ведь у гостя только одно имя, один пол, один возраст. biggrin.gif
M &M's
Цитата(папа Карло @ 6.8.2010, 17:51) *
По одной в каждый, ведь у гостя только одно имя, один пол, один возраст. biggrin.gif

Я про ответы инфа.
Ведь в ответ инфа можно добавить имя гостя или его возраст. Вот я и спрашиваю сколько можно ответов таких написать?
папа Карло
Сколько угодно. Переменной присваивается конкретное значение которое можно выводить в любом шаблоне хоть во всех ответах. Например, переменной [%user_name] значение присваивается в шаблоне знакомства (не важно каком), а потом это значение выводится в любой фразе инфа в виде имени. Можно сделать и ответы для гостя с конкретным именем, например какую нибудь безобидную дразнилку, как у Тиши встречается, для этого нужно прописать, для гостя с каким именем предназначен данный ответ, это делается так: # [if(%user_name="Петя")]{ ответ для Пети } - при этом нужно учитывать, что инф запоминает любое значение так, как написал его гость, поэтому желательно в таких шаблонах прописывать все варианты, например:
# [if(%user_name="Петя")]{ответ}[else]{[if(%user_name="петя")]{тот же ответ}}
# [if(%user_name="Пётр")]{тот же ответ}[else]{[if(%user_name="пётр")]{тот же ответ}}
# [if(%user_name="Петруха")]{тот же ответ}[else]{[if(%user_name="петруха")]{тот же ответ}}
- гости с другими именами этот ответ никогда не увидят.
M &M's
Цитата(папа Карло @ 6.8.2010, 18:21) *
Сколько угодно. Переменной присваивается конкретное значение которое можно выводить в любом шаблоне хоть во всех ответах. Например, переменной [%user_name] значение присваивается в шаблоне знакомства (не важно каком), а потом это значение выводится в любой фразе инфа в виде имени. Можно сделать и ответы для гостя с конкретным именем, например какую нибудь безобидную дразнилку, как у Тиши встречается, для этого нужно прописать, для гостя с каким именем предназначен данный ответ, это делается так: # [if(%user_name="Петя")]{ ответ для Пети } - при этом нужно учитывать, что инф запоминает любое значение так, как написал его гость, поэтому желательно в таких шаблонах прописывать все варианты, например:
# [if(%user_name="Петя")]{ответ}[else]{[if(%user_name="петя")]{тот же ответ}}
# [if(%user_name="Пётр")]{тот же ответ}[else]{[if(%user_name="пётр")]{тот же ответ}}
# [if(%user_name="Петруха")]{тот же ответ}[else]{[if(%user_name="петруха")]{тот же ответ}}
- гости с другими именами этот ответ никогда не увидят.

У меня есть еще один вопрос, а мо;но в такой переменной ([%user_'цифра'=""]) только до 10 или до скольки угодно?
папа Карло
Вот там, где написано "цифра" - только до 10
ARTrus
Вроде я тоже что-тут писал, а сейчас не вижу... blink.gif
папа Карло
Цитата(ARTrus @ 7.8.2010, 13:09) *
Вроде я тоже что-тут писал, а сейчас не вижу... blink.gif
Это было не тут, просто очень похоже. Твоё сообщение по этой теме было тут. biggrin.gif
ARTrus
Цитата(папа Карло @ 7.8.2010, 13:19) *
Это было не тут, просто очень похоже. Твоё сообщение по этой теме было тут. biggrin.gif
Ясно. А то уж я думал у меня глюки, как у Радара... laugh.gif
папа Карло
У какого Радара? Из "госпиталя МЭШ"? blink.gif
ARTrus
Цитата(папа Карло @ 7.8.2010, 15:47) *
У какого Радара? Из "госпиталя МЭШ"? blink.gif
Смотри и читай инфа в подписе... laugh.gif
папа Карло
Я, к сожалению, не читал книги серии "S.T.A.L.K.E.R."...Или я опять что-то не туда?
ARTrus
Цитата(папа Карло @ 7.8.2010, 18:50) *
Я, к сожалению, не читал книги серии "S.T.A.L.K.E.R."...Или я опять что-то не туда?
А я "госпиталя МЭШ" laugh.gif
папа Карло
"Чёртова служба в госпитале "МЭШ"" - это американский сериал про войну в Корее, по-моему, один из лучших антивоенных фильмов. Если бы не подтекст - можно было бы назвать его комедией. smile.gif
P.S - а кто тут за нами чистить будет?
ARTrus
Цитата(папа Карло @ 7.8.2010, 19:01) *
"Чёртова служба в госпитале "МЭШ"" - это американский сериал про войну в Корее, по-моему, один из лучших антивоенных фильмов. Если бы не подтекст - можно было бы назвать его комедией. smile.gif
P.S - а кто тут за нами чистить будет?
Зато всё выяснили...
Ничего... найдутся "добрые" модераторы... почистят... wink.gif
Jeka
А вот у меня вопрос, как мне сделать шаблон, чтобы инф спросил о поле собеседника один раз, и занёс его в переменные? Просто я не совсем понимаю как использовать элемент "if"!
ARTrus
Цитата(Jeka @ 20.8.2010, 11:01) *
А вот у меня вопрос, как мне сделать шаблон, чтобы инф спросил о поле собеседника один раз, и занёс его в переменные? Просто я не совсем понимаю как использовать элемент "if"!
Задайте конкретный вопрос и почитайте здесь http://forum.iii.ru/index.php?showtopic=45...amp;#entry38153
Если Вам не понятна инструкция, то, возможно, Вам ещё рано использовать подобный функционал в инфе.
папа Карло
Цитата
А вот у меня вопрос, как мне сделать шаблон, чтобы инф спросил о поле собеседника один раз, и занёс его в переменные? Просто я не совсем понимаю как использовать элемент "if"!
Этот элемент нужен для вспоминания, а не для запоминания. Пол гостя "запоминается" в переменную [%user_gender] либо в шаблоне знакомства, содержащем словарь имён, либо по окончаниям в фразе гостя. Использовать нужно все варианты. В остальные шаблоны, где нужно разделение ответов в зависимости от пола вставляешь такую форму: [if(%user_gender="Ж")]{ответ для гостя женского пола}[else]{ответ для всех не женского пола (в том числе тех, чей пол не известен).} Гости, чей пол не известен "по умолчанию" считаются мужского пола. Если обозначение пола делаешь буквами, как здесь:[if(%user_gender="Ж")] - то очень важно, чтобы везде они были в одном регистре - либо большие либо маленькие, для инфа [if(%user_gender="Ж")] и [if(%user_gender="ж")] не одно и то же. Можно пол обозначать и цифрами, как у разработчиков - не суть важно. if - это проверка инфом значения переменной, в данном случае инф проверяет, известно ли, что гость женского пола, то есть присвоено ли переменной [%user_gender] значение "Ж", если да - то выдаётся первый ответ, если нет - второй. Само это значение присваивается в соответствующем шаблоне "принудительно", самим мастером, оно не откуда не берётся, в отличии от значения переменных [%user_name] и [%user_age].
P.S. - если инф на подложке то сейчас уже нет нужды делать шаблоны на определение пола, это уже есть в подложке.
Jeka
А вот если мне к примеру надо, чтобы он спросил пол собеседника при первой встрече, и потом уже называл его с правильными окончаниями! Из ответов, я понял, как сделать так, чтоб изменялись фразы инфа в зависимости, от пола собеседника. Но вот остаётся 1 вопрос: как занести информацию о поле в базу данных? Немного уточню, можно ли сделать так, чтобы если инф не знает пол то он его тут-же спросил, а если знает, то этот вопрос больше не повторялся! И как сделать так, чтоб информация о поле была занесена в базу данных при таком-то ответе!
ARTrus
Цитата(Jeka @ 20.8.2010, 20:46) *
А вот если мне к примеру надо, чтобы он спросил пол собеседника при первой встрече, и потом уже называл его с правильными окончаниями! Из ответов, я понял, как сделать так, чтоб изменялись фразы инфа в зависимости, от пола собеседника. Но вот остаётся 1 вопрос: как занести информацию о поле в базу данных? Немного уточню, можно ли сделать так, чтобы если инф не знает пол то он его тут-же спросил, а если знает, то этот вопрос больше не повторялся! И как сделать так, чтоб информация о поле была занесена в базу данных при таком-то ответе!
Т.е. форум вообще не читаем? http://forum.iii.ru/index.php?s=&showt...ost&p=38154
папа Карло
Схема такая:
$ ....
# Какого ты пола? - якорь х

якорь х
$ Мужского
#....[%user_gender="М"]

якорь х
$ женского
# ....[%user_gender="Ж"]

Если есть шаблон знакомства с именами то делаешь так:

$ <зов~/зав~/зв~> [-{Августа / Авдотья / Аврелия /Анечка - т.д.}
# [if(!%user_name)]{Будем знакомы,[&1]!} [%user_name="[&1]"][%user_gender="Ж"]

-а потом вставляешь в шаблоны: # [if(%user_gender="Ж")]{ответ для женского пола}[else]{ответ для всех остальных}
Jeka
И ещё последний вопрос:
$ (можно ли сюда как-нибудь присобачить else, чтобы инф спрашивал "какого ты пола?", только если он не знает пола собеседника?)
# Какого ты пола? - якорь х
ARTrus
Цитата(Jeka @ 21.8.2010, 7:46) *
И ещё последний вопрос:
$ (можно ли сюда как-нибудь присобачить else, чтобы инф спрашивал "какого ты пола?", только если он не знает пола собеседника?)
# Какого ты пола? - якорь х
точно не читаем форум
$ здесь else быть не может
# [if(!%user_gender)]{Какого ты пола?}[else]{[if(%user_gender="2")]{Я знаю что ты - девочка}[else]{Я предполагаю что ты - мальчик}}
папа Карло
Или как в моём примере:

$ ....
# [if(!%user_gender)]{Какого ты пола?} - якорь х

-если пол уже известен то по второму разу инф спрашивать уже не будет. Переменные вставляются ТОЛЬКО в фразу инфа, а не гостя. $ - это обозначение фразы гостя, а # - фразы инфа, они так и в шаблонах обозначены.
Jeka
Фух... ну наконец допёрло) Огромное спс за помощь, всё работает! rolleyes.gif
Лисичкиус Фокстерьеров
У меня очень простой вопрос. Но я нигде не нашёл на него ответ. Так вот. Что нужно сказать инфу, что бы он ответил: "Я не знаю какого ты пола." Мне это нужно для проверки гендерных шаблонов. Т. е. Для проверки шаблона с гендерными ответами я говорю инфу: "я мальчик" - затем, спрашиваю какого я пола. Мне следует ответ: " ты мальчик" - Тогда я проверяю шаблон, и получаю ответ для мальчика. Затем, говорю инфу: "я девочка" - и при проверке шаблона получаю ответ для девочки. Но как проверить ответы для среднего рода, ума не приложу. Так вот. Что нужно сказать инфу, после того как я и мальчиком и девочкой назывался, чтобы затем на вопрос: "какого я пола?" - он ответил мне: "Я не знаю какого ты пола."?
XeniaMZ
Можно сделать шаблон сбрасывающий переменную...
Лисичкиус Фокстерьеров
Цитата(XeniaMZ @ 3.9.2010, 23:12) *
Можно сделать шаблон сбрасывающий переменную...


Да, нет. Про это-то можно найти где почитать. А вот, что бы, просто спросить инфа так, чтобы он принял меня за среднего рода. Вот в чём вопрос. Я имею ввиду инфа не на звёздочке.
папа Карло
Нужно сбросить все переменные. Тогда ты будешь говорить со своим инфом как новый гость, не известного пола. Иначе что это за ситуация такая, когда инфу пол известен - но он должен делать вид, что не известен? Получается такой шаблон:

$ какого я пола?
# [%user_gender="Ж"]{я не знаю}[else]{я не знаю}[%user_gender=""]- (сброс переменной для дальнейшего разговора)

- абсурд!
Лисичкиус Фокстерьеров
Цитата(папа Карло @ 4.9.2010, 0:21) *
Нужно сбросить все переменные. Тогда ты будешь говорить со своим инфом как новый гость, не известного пола. Иначе что это за ситуация такая, когда инфу пол известен - но он должен делать вид, что не известен? Получается такой шаблон:

$ какого я пола?
# [%user_gender="Ж"]{я не знаю}[else]{я не знаю}[%user_gender=""]- (сброс переменной для дальнейшего разговора)

- абсурд!


Ладно. Пойду изучать как делать шаблон для сброса переменных. Я ведь спрашивал про волшебное слово. Может кто знает. Дело в том, что если я своему инфу в последний раз назвался мальчиком, так мальчиком всегда и воспринимаюсь. И по прошествии трёх часов и более. Проверял. Выходит, как новый гость я к своему инфу зайти не смогу пока не сделаю шаблон для сброса переменных.
XeniaMZ
Цитата(Лисичкиус Фокстерьеров @ 3.9.2010, 19:45) *
Да, нет. Про это-то можно найти где почитать. А вот, что бы, просто спросить инфа так, чтобы он принял меня за среднего рода. Вот в чём вопрос. Я имею ввиду инфа не на звёздочке.

Я поняла, но, думаю, вряд ли в подложке такое есть... В реальности же нет людей среднего рода) Только сбросом переменных надо.
Лисичкиус Фокстерьеров
Цитата(XeniaMZ @ 4.9.2010, 1:27) *
Я поняла, но, думаю, вряд ли в подложке такое есть... В реальности же нет людей среднего рода) Только сбросом переменных надо.


Хи-хи-хи. Это как так нет! Есть и слово их обозначающее. На форуме, однако, нельзя это слово произносить. Ладно. Я всё равно на звёздочку перехожу. Сбросом переменных всё равно придёться заниматься. Я поприкалывался, быстренько сделал шаблончик: $ Я среднего рода # С тобой всё ясно. [!%user_gender]. Не работает. Отвечает нераспознаными, пока [!%user_gender] не убрать. А если убрать, то работает, в смысле шаблон работает, но на вопрос какого я пола отвечает :"Ты мальчик."
XeniaMZ
Цитата(Лисичкиус Фокстерьеров @ 3.9.2010, 22:01) *
Хи-хи-хи. Это как так нет! Есть и слово их обозначающее. На форуме, однако, нельзя это слово произносить.

Ну, это уже отклонения всякие blink.gif
Наверное, мужской пол по умолчанию стоит.
Лисичкиус Фокстерьеров
Цитата(XeniaMZ @ 4.9.2010, 2:08) *
Ну, это уже отклонения всякие blink.gif
Наверное, мужской пол по умолчанию стоит.


По умолчанию стоит "Я не знаю какого ты пола". Но если хозян назвался мальчиком, так мальчиком называть с этого момента и будет. Пока девочкой не назовётся. А вот что бы - "Я не знаю какого ты пола", этого, уже, хоть ты тресни, не добиться. Соответственно, хотел я заняться, в сотне шаблонах прописать гендерные реплики. Но проверять их возможность нет. Только на мальчика и девочку. А что бы нейтральные ответы услышать, надо ждать гостей. Дождёшься их. Но если никто не знает никакой хитрости по этому вопросу. Стало быть. Обнуление переменных. Всё ясно.
папа Карло
Просто говоришь инфу кодовое слово или фразу, например:

$ сброс (слово придумай своё, чтоб детишки, которые это прочитают, над Лиской не измывались biggrin.gif )
# Готово! [%user_gender=""] [%user_name=""] [%user_age=""][%var1=""][%var2=""][%var3=""][%var4=""][%var5=""][%var6=""][%var7=""][%var8=""][%var9=""][%var10=""][%user_1=""][%user_2=""][%user_3=""][%user_4=""][%user_5=""][%user_6=""][%user_7=""][%user_8=""][%user_9=""][%user_10=""][%var11=""][%var12=""][%var13=""][%var14=""][%var15=""][%var16=""][%var17=""][%var18=""][%var19=""][%var20=""] - и т.д., до [%var100=""]

Для проверки шаблонов это вещь необходимая.
А по умолчанию у них мужской пол раньше стоял,ко всем инфам они обращались в мужском роде, без различия пола, теперь они могут определять пол и сами, по именам и окончаниям.
"Средний род" это просто "я не знаю, какого ты пола"- что не одно и то же.
Цитата
Отвечает нераспознаными, пока [!%user_gender] не убрать. А если убрать, то работает, в смысле шаблон работает, но на вопрос какого я пола отвечает :"Ты мальчик."
Всё правильно, она же помнит, какого ты пола - поэтому шаблон с [!%user_gender](пол не известен) и не срабатывает. (Восклицательный знак в переменных - это отрицание, НЕ.)
Лисичкиус Фокстерьеров
Цитата(папа Карло @ 4.9.2010, 3:24) *
Просто говоришь инфу кодовое слово или фразу, например:

$ сброс (слово придумай своё, чтоб детишки, которые это прочитают, над Лиской не измывались biggrin.gif )
# Готово! [%user_gender=""] [%user_name=""] [%user_age=""][%var1=""][%var2=""][%var3=""][%var4=""][%var5=""][%var6=""][%var7=""][%var8=""][%var9=""][%var10=""][%user_1=""][%user_2=""][%user_3=""][%user_4=""][%user_5=""][%user_6=""][%user_7=""][%user_8=""][%user_9=""][%user_10=""][%var11=""][%var12=""][%var13=""][%var14=""][%var15=""][%var16=""][%var17=""][%var18=""][%var19=""][%var20=""] - и т.д., до [%var100=""]

Для проверки шаблонов это вещь необходимая.
А по умолчанию у них мужской пол раньше стоял,ко всем инфам они обращались в мужском роде, без различия пола, теперь они могут определять пол и сами, по именам и окончаниям.
"Средний род" это просто "я не знаю, какого ты пола"- что не одно и то же.
Всё правильно, она же помнит, какого ты пола - поэтому шаблон с [!%user_gender](пол не известен) и не срабатывает. (Восклицательный знак в переменных - это отрицание, НЕ.)


Со средним родом, и с [!%user_gender], это я поприкалывался. rolleyes.gif Готовый шаблон для сброса переменных. Отлично! Выглядит, во всяком случае, совсем не страшно. Пойду делать. Спасибо!
P. S. Сделал. Работает. rolleyes.gif
SunДаль
Вопрос номер раз. А есть возможность не присваивать переменной новое значение, а дописать к текущему значению некоторые символы? Например, текущее значение переменной %var1="one two", по команде пользователя "Допиши слово ёж" переменная принимает значение %var1="one two ёж", и так строка удлиняется до упора.

Вопрос номер 2. Можно ли выяснить программно, содержит ли текущее значение переменной некоторую последовательность символов? Например, пользователь спрашивает: "У тебя в копилке есть слово "еж"?". И если в строке %var1 есть это слово, инф отвечает - "да".

Помогите, люди добрые. Очень прошу.

UPD: А есть ограничение на максимальную длину строки переменной? Думала найти это в мануалах, но не нашла. Ткните меня туда носом, если плохо искала...
папа Карло
Цитата
Вопрос номер раз. А есть возможность не присваивать переменной новое значение, а дописать к текущему значению некоторые символы? Например, текущее значение переменной %var1="one two", по команде пользователя "Допиши слово ёж" переменная принимает значение %var1="one two ёж", и так строка удлиняется до упора.
Нет, так нельзя. Значение переменной либо берётся из фразы гостя либо прописывается инфоводом "принудительно", само ничего не напишется.То, что приводится в этом примере, можно осуществить только так:
$ Допиши слово *
[if(%var1="one two")]{one two [*]}[%var1="one two [*]"]
[if(%var1="one two [*]")]{one two [*] [*]}[%var1="one two [*] [*]"] - и т.д.
Цитата
Вопрос номер 2. Можно ли выяснить программно, содержит ли текущее значение переменной некоторую последовательность символов? Например, пользователь спрашивает: "У тебя в копилке есть слово "еж"?". И если в строке %var1 есть это слово, инф отвечает - "да".

Это выясняется с помощью if, но для этого каждому слову нужно присвоить значение переменной
Но присваивать значение нужно в каком-то шаблоне, в ответе инфа на фразу гостя. САМОСТОЯТЕЛЬНО инф ничего делать не станет, в том числе и искать по своей базе.
Цитата
UPD: А есть ограничение на максимальную длину строки переменной? Думала найти это в мануалах, но не нашла. Ткните меня туда носом, если плохо искала...
Я такого тоже не видел, да и зачем это? Если значение переменной берётся из звёздочки или из словаря то в нём может помещаться хоть энциклопедия, а если оно присваивается принудительно то вовсе нет нужды вписывать туда целые фразы, достаточно одного знака. Ведь суть в том, что при ответе инф проверяет , было ли переменной присвоено значение или нет. Если переменной присвоено значение 1, например, то оно может означать как цифру так и статью из журнала, просто инфовод указывает инфу, что если значение 1 было присвоено то даётся ответ А, а если не было - ответ Б.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2020 IPS, Inc.