Перейти к содержанию
АнимеФорум

NikStory

Участники
  • Постов

    14
  • Зарегистрирован

  • Посещение

Достижения NikStory

Rookie

Rookie (2/14)

  • First Post
  • Collaborator
  • Week One Done
  • One Month Later
  • One Year In

Последние значки

0

Репутация

  1. Всем привет! У меня возник вопрос по классам в ренпае, основную суть проблемы я написал в комментариях, надеюсь я правильно смог изложить суть проблемы. ################################################################################################################## ## define events = EventHandler() ## Инициализация до метки старта ## ## $ events.create_event('introduction', dict(cond1 = False), 10) ## создание события ## ## $ events.activate_event('introduction', 'cond1') ## Устанавливает True ## ## $ events.deactivate_event('introduction', 'cond1') ## Устанавливает False ## ## $ events.set_event('introduction', 'cond1', (day)) ## Активирует, устанавливает, и прыгает если все True ## ## $ events.block_event('introduction') ## Блокирует событие от дальнейшего выполнения ## ## $ events.raise_events() ## Выводит в журнал информацию о событиях ## ## $ events.raise_event('introduction') ## Выводит информацию о заданном событии ## ################################################################################################################## ## ## Прыжок осуществляется мгновенно, без проверки переменной (day) ## скорей всего я ошибся в какой либо из функций, но сам понять не могу ## т.к. RenPy отличается синтаксисом от Python и функции пишутся по разному ## ## $ events.create_event('introduction', dict(cond1 = False), 10) == из этого события следует, что оно должно ## произойти по истечению десяти дней и переместить игрока к метке introduction. ## ## $ events.set_event('introduction', 'cond1', (day)) == это событие должно запустить предыдущее, но этого не ## происходит, а просто совершается прыжок, без учета значения переменой (day) ## ## Надеюсь я смог понятно изложить проблему... ## ################################################################################################################## init -10 python: Error = Exception ## Вызов журнала трассировки для просмотра информации о событии # Инициализация системы событий class Event(object): def __init__(self, name, conditions, day, label = None): ### day - сам добавил self.name = name self.conditions = conditions self.day = day ### Добавил по правилам, но почему-то не работает self.blocked = False if label == None: self.label = name else: self.label = label # Инициализация событий class EventHandler(object): global day ### Думал поможет для вызова переменной из скрипта, но нет def __init__(self): self.events = dict() # Создает событие def create_event(self, name, conditions, day, label = None): ### day - сам добавил if name in self.events.keys(): return self.events['%s'%name] = Event(name, conditions, day, label) # Устанавливает события True, а так же проверяет события # и повторяет попытку перехода к метке, если все условия True. def set_event(self, name, condition, day): ### day - сам добавил if name not in self.events.keys(): raise Error, "Событие %s не существует!"%name if condition not in self.events[name].conditions.keys(): raise Error, "Условие %s для события %s не существует!"%(condition, name) if self.events[name].blocked == True: return self.events[name].conditions[condition] = True # Если все условия установлены как True, то совершить прыжок. if all(v == True for v in self.events[name].conditions.itervalues()): if renpy.has_label(self.events[name].label): if (day) == day: ### Вот и проблема, неправильное чтение из скрипта(???но почему???) renpy.jump(self.events[name].label) else: raise Error, "Метка %s не существует! "%self.events[name].label # Устанавливает значение true, без использования прыжка. def activate_event(self, name, condition, day): if name not in self.events.keys(): raise Error, "Событие %s не существует!"%name if condition not in self.events[name].conditions.keys(): raise Error, "Условие %s для события %s не существует!"%(condition, name) self.events[name].conditions[condition] = True # Устанавливает значение False для данного события. def deactivate_event(self, name, condition, day): if name not in self.events.keys(): raise Error, "Событие %s не существует!"%name if condition not in self.events[name].conditions.keys(): raise Error, "Условие %s для события %s не существует!"%(condition, name) self.events[name].conditions[condition] = False # Блокирует событие, применяется вместо удаления # (событие никогда не будет делать прыжок). def block_event(self, name): if name not in self.events.keys(): raise Error, "Событие %s не существует!"%name self.events[name].blocked = True
  2. У вас проблемы с пробелами, они очень большие и реплики выходят из блока Init. Вот пример решения проблемы: image hay1 = "image/hayame/hay1.png" image hay2 = "image/hayame/hay2.png" image hay3 = "image/hayame/hay3.png" image hay4 = "image/hayame/hay4.png" image hay5 = "image/hayame/hay5.png" #Объявление персонажей. $ m = DynamicCharacter(u"na") $ e = Character(u'Элис') $ n = Character(u'Нека') $ na = u"" #Объявление NVL компонентов. $ config.adv_nvl_transition = dissolve $ config.nvl_adv_transition = dissolve $ el = NVLCharacter(u'Элис', kind=nvl) $ ne = NVLCharacter(u'Мать Элис', kind=nvl) label start: $ renpy.music.stop(fadeout=1) scene road "Это был самый обычный день из моей жизни, как..." voice "nya.wav" show el1 e "Приветствую, житель Земли." e "Я первая посланница с планеты Коттия, и меня зовут Элис!" e "Сейчас я готова пообщаться, а ты?" e "Ой, я совсем забыла спросить твоё имя." $ na = renpy.input(u"Подождите-ка... а как меня зовут?", u"", length=10) if na=="": $na = u"Николас" m "Да, меня зовут %(na)s." e "Привет %(na)s, рада познакомиться, а ты?" menu: "Чёрт что же мне ответить?" "Что здесь происходит?": jump what "Тоже рад, так необычно.": jump go label what: m "Кто ты такая, и что тебе от нас нужно..." "Я заметил проезжающую неподалёку машину и бросился к ней, что бы предупредить людей о пришельцах, но..." scene bend with dissolve "Сильный удар, сначала о капот, затем об асфальт, всё плывёт перед глазами..." centered "Вы погубили своего героя, попробуйте пройти снова, возможно вам понравится." centered ".:.Ending1:Простая концовка-Под колёсами.:." return
  3. Вот список уже переведенных страниц: Cardgame DSE Multiple Language Support Renpygame SoftKeyboard HTML.zip
  4. Подскажите к кому мне обратиться, на стадии тестирования в полу машинном переводе готовы две статьи, DSE и Renpygame, на стадии перевода Cardgame и SoftKeyboard, актуально ли это для кого-нибудь и продолжать ли мне перевод.
  5. Проверил час назад дистрибутив и все в норме, распакованная новелла хорошо работает.
  6. Все есть, вот только архив можно в основном 7-zip открыть, я сам проверял перед раздачей, все работает.
  7. Скоро, трилогия Щит. Закон Честь Справедливость. Щит уже готова первая часть: ЩИТ У трилогии Щит, появилась группа в контакте, посетите пожалуйста Группа в контакте Щит
  8. Новая новелла от другого автора, его первая работа, встречайте Братья.
  9. И вот мой первый DSE проект, пусть не много простоват, но на то он и первый, надеюсь что смогу восстановить и остальные свои новеллы. Планы на лето
  10. Вот моя вторая новелла в стиле NVL, выкладываю ссылку на восстановленную версию. Выжившие
  11. Приветствую всех форумчан, доброго времени суток. Вернулся для представления своей визуалки, пока что первая, но со временем восстановлю и второй проект. Моя новелла
  12. Я вчера создал сайт, пусть там не так много материала, но я готов учесть все предложения, к тому же там находиться моя первая новелла со стихами, мой тест. Буду рад посетителям http://black-hunter.ucoz.ua
  13. В общем по DSE разобрался, не так уж и сложно оказалось, но вот возникла проблема с переводом меню и кнопок на русский. Может кто нибудь пробовал данный вариант, если да, то подскажите пожалуйста. Это ошибка кодирования формата UTF, может быть связана как с кодом, так и с самим Ren'Py. p.s.Когда у меня возникла похожая проблема, пришлось Ren'Py переустановить.
  14. Здравствуйте. Подскажите пожалуйста скрипт DSE с русскими комментариями и если возможно, то игру пример на русском. Заранее спасибо всем кто поможет.
×
×
  • Создать...

Важная информация