Как сделать?
…
evp,
evp:
Включает в себя интервал 12:00…14:59
Эт уже я затупил,ты все верно написал!
Я прошу прощения,еще один тупой вопрос.
Допустим 2 перса разговаривают, как сделать так чтоб если я например 5й раз нажимаю действие “поговорить” второй перс сказал чтоб я отвалил.Чтобы не читерить отношения например.
Я так понимаю нужно сделать локацию с заглушкой,где второй перс говорит чтоб я отстал,а как сделать так чтоб именно на 5й раз эта заглушка открылась?
aplesin:
если я например 5й раз нажимаю действие “поговорить” второй перс сказал чтоб я отвалил
act 'Поговорить':
Kol_blabla+=1
if Kol_blabla<5:
'Бла-бла'
else
'Отвали, задолбал.'
end
end
Правда, тебе еще надо придумать как сбросить эту переменную в 0. А иначе это будет одноразовое ограничение.
Как-то так:
act "Поговорить":
if время_последнего_разговора: счетчик_разговоров = iif(время - время_последнего_разговора >= 24*60, 0, счетчик_разговоров + 1)
время_последнего_разговора = время
if счетчик_разговоров < 5:
!разговор
else
*nl 'Отвали!'
end
end
Через сутки можно будет поговорить снова. Можно, разумеется поменять интервал “неразговорчивости”. Даже сделать его случайным по продолжительности в разумных пределах.
Доброго времени суток. Скажите, как в диалоговое окно засунуть несколько условий? Если сделать так:
if a=1 : MSG ‘a’
if b=1 : MSG ‘b’
то вылезет 2 окна по очереди. А если сделать так:
MSG:
if a=1 : ‘a’
if b=1 : ‘b’
то будет ошибка синтаксиса. Как в одно диалоговое окно запихать несколько условий?
прохожий,
if a=1 : $messaga+='a'
if b=1 : $messaga+='b'
if a=1 or b=1: msg $messaga
если я правильно понял.
Aleks Versus, спасибо большое, именно то, что было нужно.
St-john,
evp,
Спасибо большое за помощь :)
evp,
Это нужно ввести “счетчик_разговоров” и “время_последнего_разговора”,вот если с “счетчик_разговоров” проблем нет,а “время_последнего_разговора” как вычислить ?
aplesin,
У тебя календарь в игре как реализован? Время как отсчитывается?
St-john,
St-john:
aplesin,
У тебя календарь в игре как реализован? Время как отсчитывается?
Календаря нет,не нужен пока,а время.
!время
время=время
дни=время/(24*60)
часы=(время-дни*24*60)/60
минуты=время-часы*60-дни*24*60
минуты_прошедшие_с_начала_суток = время - дни*(24*60)
aplesin, я тебе дал готовый код, в котором вычисляется время последнего разговора. Ничего дополнительно делать не надо. Если тебе что-то не понятно в примере, надо просто прочитать справку по использованным операторам, а если это не поможет - задать вопрос.
Конкретно время_последнего_разговора определяется, внезапно, в этой строчке:
время_последнего_разговора = время
evp,
Я может чего не понимаю и вообще не в свое дело лезу, но просто логику понять не могу. Не правильнее ли будет вариант:
act "Поговорить":
счетчик_разговоров = iif(время - время_последнего_разговора >= 24*60, 0, счетчик_разговоров + 1)
if счетчик_разговоров < 5:
!разговор
время_последнего_разговора = время
else
*nl 'Отвали!'
end
end
А в твоем варианте условие может не выполнится никогда, если регулярно на действие жать.
evp,
evp:
aplesin, я тебе дал готовый код, в котором вычисляется время последнего разговора. Ничего дополнительно делать не надо. Если тебе что-то не понятно в примере, надо просто прочитать справку по использованным операторам, а если это не поможет - задать вопрос.
я дико извиняюсь…я только учусь! Спасибо!
St-john:
А в твоем варианте условие может не выполнится никогда, если регулярно на действие жать.
а оно так и не выполняется пока раз 5 не нажмешь =) Я подкорректировал маленько,работает как надо)
St-john:
А в твоем варианте условие может не выполнится никогда, если регулярно на действие жать.
То есть, вы утверждаете, что у меня логическая ошибка? Докажите.
aplesin, вас это тоже касается.
Вы оба вводите в заблуждение читателей.
Вот мой код:
Spoiler
time = 1
act "Поговорить":
if lasttime: counter = iif(time - lasttime >= 24*60, 0, counter + 1)
lasttime = time
if counter < 5:
time += 5
*nl 'разговор ' & counter
else
time += 1
*nl 'Отвали!'
end
end
Вот результат:
Spoiler
разговор 0
разговор 1
разговор 2
разговор 3
разговор 4
Отвали!
Отвали!
Отвали!
Отвали!
Отвали!
Отвали!
Что же касается время_последнего_разговора = время, то расположение этого оператора зависит исключительно от того, что вы хотите получить. В моем варианте NPC не будет с вами говорить, если с момента вашего последнего обращения к нему прошло меньше суток. В вашем варианте NPC учитывает только состоявшийсяразговор. Мой NPC менее лоялен к бессмысленному троллингу :)