А для чего это нужно?Эль_Терри писал(а):Здравствуйте. А как сделать так, чтобы в определённые моменты игры определённые файлы сами удалялись(не чтобы их кто-то посторонний удалял!)?
Вопросы-ответы по RenPy
Re: Вопросы-ответы по RenPy
- 
				
				VladProBloger4
- Сообщений: 1
- Зарегистрирован: 26 июн 2022, 11:43
Вопросы-ответы по RenPy
Пж скажите а как импортировать и использовать модули math и random?
			
									
									
						Re: Вопросы-ответы по RenPy
VladProBloger4 писал(а):Пж скажите а как импортировать и использовать модули math и random?
Поищите import math в модуле из дистрибутива RenPy
...\common\00definitions.rpy
и будем вам образец.
Re: Вопросы-ответы по RenPy
Доброго времени суток.
1.В игре должы быть штук 30 карт, разных для разных эпизодов, но для всех используется одна картинка.
Вопрос: сколько памяти это будет занимать? Размер одного файла или в 30 раз больше?
2. Как сделать чтобы нажатие игроком кнопок блокировалось, а смена изображений на экране шли без его вмешательства, по времени?
3. Можно-ли сделать, чтобы один музыкальный файл проигрывался с разных мест в разные моменты игры?
Не хочется забивать игру кучей почти одинаковых файлов.
			
									
									
						1.В игре должы быть штук 30 карт, разных для разных эпизодов, но для всех используется одна картинка.
Вопрос: сколько памяти это будет занимать? Размер одного файла или в 30 раз больше?
2. Как сделать чтобы нажатие игроком кнопок блокировалось, а смена изображений на экране шли без его вмешательства, по времени?
3. Можно-ли сделать, чтобы один музыкальный файл проигрывался с разных мест в разные моменты игры?
Не хочется забивать игру кучей почти одинаковых файлов.
Re: Вопросы-ответы по RenPy
Написал вот-такой код:
RenPy не нравится строка с "pass". Почему?
Пока вставил вместо этого пустое изображение, но может есть способ получше?
			
									
									
						Код: Выбрать все
layeredimage elsa:
    ...
    if elsa_hands == "magic":
        "images/characters/elsa/elsa_magic.png"
    elif elsa_hands == "gloves":
        "images/characters/elsa/elsa_gloves.png"
    else:
        pass
RenPy не нравится строка с "pass". Почему?
Пока вставил вместо этого пустое изображение, но может есть способ получше?
Re: Вопросы-ответы по RenPy
Снова всем доброго времени суток.
Нужно сделать случайно выпадающий разговор с персонажем. Написал вот такое:
Проблема: при повторном разговоре, с частотой наверное 99%, 90 - точно!, выпадает тот-же самый разговор.
Я добавил переменную с номером последнего разговора, чтобы не было повторов:
Стал постоянно выпадать тот вариант, что "else".
У меня уже мозг не соображает, что сделать, чтобы разговоры были разные.
			
									
									
						Нужно сделать случайно выпадающий разговор с персонажем. Написал вот такое:
Код: Выбрать все
label slums_crocus_talking:
    crocus "Спасибо, добрый господин!"
    $ crocus_rand_talk = renpy.random.choice([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
    if crocus_rand_talk == 1:
        crocus "Вы знаете, что раньше Крокус был помошником Великого Визиря?"
        crocus "Да, да! Это было при Махмуде Справедливом."
        jump slums_menu
    # ещё целых 9 вариантов
Проблема: при повторном разговоре, с частотой наверное 99%, 90 - точно!, выпадает тот-же самый разговор.
Я добавил переменную с номером последнего разговора, чтобы не было повторов:
Код: Выбрать все
label slums_crocus_talking:
    crocus "Спасибо, добрый господин!"
    $ crocus_rand_talk = renpy.random.choice([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
    if crocus_rand_talk == 1 and crocus_last_rand_talk != 1:
        crocus "Вы знаете, что раньше Крокус был помошником Великого Визиря?"
        crocus "Да, да! Это было при Махмуде Справедливом."
        jump slums_menu
    elif crocus_rand_talk == 2 and crocus_last_rand_talk != 2:
        crocus "Никто кроме вас не даёт денег бедному Крокусу."
        crocus "А Крокус уже слишком стар, чтобы брать деньги у тех, кто не хочет их отдавать."
        jump slums_menu
    ...
    else:
        if crocus_gold < 25:
            crocus "Ещё пара монет и Крокус сможет сегодня закусить."
            crocus "Нет, одного золотого Крокусу не хватит.\nКак Крокус сможет закусить, если перед этим он ничего не выпьет?"
            jump slums_menu
        elif crocus_gold < 50:
            crocus "Крокус накопит денег и купит себе красные штаны."
            crocus "Почему красные? Это - секрет!"
            jump slums_menu
        else:
            crocus "Ещё немного монет и Крокус сможет купить себе гоночного верблюда!\nТо-есть, хромого ослика для своей больной матери..."
            jump slums_menu
Стал постоянно выпадать тот вариант, что "else".
У меня уже мозг не соображает, что сделать, чтобы разговоры были разные.
Re: Вопросы-ответы по RenPy
может быть ответы производить по порядку? Если порядок нужно нарушать, то можно перемешать список, типа
list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
renpy.random.shuffle(list)
и отвечать list[0] ...list[9]
для особо тупых перемешать ещё и опять с 0 до 9 ответа
			
									
									
						list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
renpy.random.shuffle(list)
и отвечать list[0] ...list[9]
для особо тупых перемешать ещё и опять с 0 до 9 ответа
Re: Вопросы-ответы по RenPy
Dmit, cпасибо. Перемешивание в два раза работает намного лучше.
Хотя сложновато получается для вывода простого случайного трёпа.
У меня новая проблема:
в options.rpy
так у меня эта музыка продолжает играть и когда я из меню выхожу.
			
									
									
						Хотя сложновато получается для вывода простого случайного трёпа.
У меня новая проблема:
в options.rpy
Код: Выбрать все
    ## Music that is played while the user is at the main menu.
    # музыка, которяа играет пока игрок находится в главном меню (перевод мой)
    config.main_menu_music = "music/bolerish.mp3"
так у меня эта музыка продолжает играть и когда я из меню выхожу.
Re: Вопросы-ответы по RenPy
Снова проблема:
Простой код, где на экран выводится спрайт:
Всё работало, пока я не накодил персонажу Джафару разную одежду и выражения лица
I'm sorry, but an uncaught exception occurred.
While loading <'Image' u'images/characters/jafar/jafar.png'>:
File "game/scripts/events/intro.rpy", line 21, in script
"А высокие налоги и смертные приговоры были целиком на совести злого великого визиря Джафара, которого все ненавидели и презирали."
IOError: Couldn't find file 'images/characters/jafar/jafar.png'.
Удалил все *.rpyc, очистил папку tmp, запускал на другом компе, всё-равно ищет файл jafar.png
А со всеми остальными спрайтами персонажей со слоями - порядок.
			
									
									
						Простой код, где на экран выводится спрайт:
Код: Выбрать все
image jafar = "images/characters/jafar/jafar.png"
Код: Выбрать все
    "а не менее многочисленныз воров - помилованиями."
    hide sultan
    show jafar
    "А высокие налоги и смертные приговоры были целиком на совести злого великого визиря Джафара, которого все ненавидели и презирали."
Всё работало, пока я не накодил персонажу Джафару разную одежду и выражения лица
Код: Выбрать все
#image jafar = "images/characters/jafar/jafar.png"
define jafar_outfit = "visier"
define jafar_face = "smile"
layeredimage jafar:
    if jafar_outfit == "sultan":
        "images/characters/jafar/jafar_sultan.png"
    else:
        "images/characters/jafar/jafar_visier.png"
    if jafar_face == "angry":
        "images/characters/jafar/jafar_angry.png"
    else:
        "images/characters/jafar/jafar_smile.png"
I'm sorry, but an uncaught exception occurred.
While loading <'Image' u'images/characters/jafar/jafar.png'>:
File "game/scripts/events/intro.rpy", line 21, in script
"А высокие налоги и смертные приговоры были целиком на совести злого великого визиря Джафара, которого все ненавидели и презирали."
IOError: Couldn't find file 'images/characters/jafar/jafar.png'.
Удалил все *.rpyc, очистил папку tmp, запускал на другом компе, всё-равно ищет файл jafar.png
А со всеми остальными спрайтами персонажей со слоями - порядок.
Re: Вопросы-ответы по RenPy
Да музыку меню надо останавливать самостоятельно обычно сразу после label start.
вызов
show jafar
show jafar sultan
show jafar sultan angry
равнозначен поскольку установленно default
			
									
									
						Код: Выбрать все
layeredimage jafar:
    always:
        "images/characters/jafar/jafar.png"
    group outfit:
        attribute sultan default:
            "images/characters/jafar/jafar_sultan.png"
        attribute visier:
            "images/characters/jafar/jafar_visier.png"
    group face:
        attribute angry default:
            "images/characters/jafar/jafar_angry.png"
        attribute smile:
            "images/characters/jafar/jafar_smile.png"вызов
show jafar
show jafar sultan
show jafar sultan angry
равнозначен поскольку установленно default
Re: Вопросы-ответы по RenPy
dmit писал(а):Да музыку меню надо останавливать самостоятельно обычно сразу после label start.
Это не проблема, но как останавливать её в том случае, когда игрок заходит в меню, чтобы сохраниться-загрузиться, а потом обратно в игру?
Код: Выбрать все
layeredimage jafar:
    always:
        "images/characters/jafar/jafar.png"
    group outfit:
        attribute sultan default:
            "images/characters/jafar/jafar_sultan.png"
        attribute visier:
            "images/characters/jafar/jafar_visier.png"
    group face:
        attribute angry default:
            "images/characters/jafar/jafar_angry.png"
        attribute smile:
            "images/characters/jafar/jafar_smile.png"
Вызов: show jafar
Продолжается та-же чертовщина: выводит только изображение jafar.png, а не весь layeredimage jafar
Если заменить в этом коде jafar.png на jafar_base.png например, всё-равно выводит jafar.png или выдаёт ошибку если его нет.
Я проверил все скрипты, которые *.rpy. Нигде нет присваивания, что jafar = "images/characters/jafar/jafar.png", а не layeredimage.
Такая засада пока только с этим Джафаром. У меня уже был вызов изображений, для которого раньше было простое изображение, а теперь - многослойное. Копировал скрипт с layeredimage с другого перса, работающего нормально.
За код огромное спасибо!
Я прочитал пару каких-то фантастически кривых мануалов по этим "group" & "attribute" на несколько экранов, нифига не понял, а тут просто, оказывается!
Re: Вопросы-ответы по RenPy
main_menu_music включается только на главном меню и если зайти на сохранения в игре, то звучать не будет. Или я не понял вашу задачу?
рекомендую удалить все файлы rpyc (если было удаление или переименование rpy) , очистить постоянные и не пользоваться старыми сохранениями (лучше удалить, все которые были до изменения layeredimage).
			
									
									
						рекомендую удалить все файлы rpyc (если было удаление или переименование rpy) , очистить постоянные и не пользоваться старыми сохранениями (лучше удалить, все которые были до изменения layeredimage).
Re: Вопросы-ответы по RenPy
Да, проблема с Джафаром оказалась из-за старого файла rpyc. Неудаляемого-незаменяемого из под Винды.
А с музыкой дело было в старом сохранении, где ещё играла эта музыка. Вот я ступил!
И спасибо ещё раз за пример нормального кода с attributes, сделаю теперь всем персам.
			
									
									
						А с музыкой дело было в старом сохранении, где ещё играла эта музыка. Вот я ступил!
И спасибо ещё раз за пример нормального кода с attributes, сделаю теперь всем персам.
Вернуться в «Разработка игр на RenPy»
Кто сейчас на форуме
Количество пользователей, которые сейчас просматривают этот форум: нет зарегистрированных пользователей и 15 гостей

