• Страница 44 из 44
  • «
  • 1
  • 2
  • 42
  • 43
  • 44
Форум о визуальных новеллах » Для разработчиков » Ren'Py » Помощь по Rep'Py (Вопрос\Ответ)
Помощь по Rep'Py (Вопрос\Ответ)

Ternox
Дата: Вторник, 30 Сентября 2014, 21:50 | Сообщение # 1
Администратор
Сообщений: 556
Награды: 46
Сюда пользователи сайта могут писать вопросы о тех или иных функциях движка Ren'Py, а мы попытаемся на них ответить:)


Прежде чем писать мне в ЛС, загляните в FAQ, возможно там уже есть ответ на ваш вопрос.


UltraRED
Дата: Вторник, 14 Января 2020, 18:32 | Сообщение # 646
Проверенный
Сообщений: 2
Награды: 0
Замечания: 0%
Доброго времени суток!

При сборке Android версии игры - выдаёт ошибку:

https://drive.google.com/file....sharing

Прошу помощи в решении данной ошибки!

Мой VK

AxelK
Дата: Пятница, 17 Января 2020, 00:54 | Сообщение # 647
Пользователь
Сообщений: 2
Награды: 0
Замечания: 0%
Здравствуйте.
Однако, сразу к делу.
Испытываю острую потребность хранить данные в массивах (лист). Потенциально массивов несколько, и данные в них разного типа. Объекты такие объявить легко и просто, пользоваться ещё проще, но сохраняться силами ren'py они не хотят ни в какую.
По какой-то причине, нагуглить решение тоже не выходит. Питоном доселе не пользовался, если вопрос покажется глупым, просьба не пинать строго.

Прямо на официальной странице проекта рассказано, цитирую
Цитата
In this example:
Код
define a = 1
define o = object()

label start:
    $ b = 1     
    $ o.value = 42


only b will be saved. A will not be saved because it does not change once
the game begins. O is not saved because it does not change – the object it
refers to changes, but the variable itself does not.

Так работает и picke, и cPickle.
То есть, я могу объявить такого рода объект, прекрасно пользоваться им, но при загрузке сохраненной игры это всё будет утеряно.
В чем смысл вообще иметь данные, которые нельзя хранить?
Неужели нет изящного и давно запатентованного способа обойти такую несправедливость?
Или нужно как-то писать свой класс, который будет как-то перехватывать сохранение и сам себя сериализовывать или что-то в этом роде?

Можно, конечно хранить в глобальных переменных что-то вроде
A_1, A_15 = x, y
вместо
A[1], A[15] = x, y
да уж больно некрасиво...

Знатоки, подскажите, пожалуйста, в какую сторону копать.

СОНЦЕ
Дата: Пятница, 17 Января 2020, 02:26 | Сообщение # 648
Разработчик
Сообщений: 128
Награды: 23
Замечания: 0%
AxelK
собственно, как и подметили в мануале, чтоб сохранилось, после лабела старт переменную надо пошелевлить
вот в примере как ниже...

Код


label start:
    python:
        A=[]
label main:
    python:
        A.append(renpy.random.randint(1,10))
    'your numbers can be saved. please save-load to check'
    '[A]'
    jump main
    return



...у меня все работает

AxelK
Дата: Пятница, 17 Января 2020, 08:52 | Сообщение # 649
Пользователь
Сообщений: 2
Награды: 0
Замечания: 0%
СОНЦЕ,
И это всё? Объявить после метки старт?
Код
label start:
    $ A = [0xff] * 256
    jump game_start
.............

label chapter_x:
     $ A[0] = 1

Спасибо, вроде и правда работает. Двойной фэйспалм -_-
Почему же это в мануалах не вынесено жирными буквами где-нибудь в рамке?

Вопрос второй. Как создать ATL переменной длины?
Банальная задача - анимация глаз, но кадров может быть 3 или больше
Код
transform _position (x, y):
    xoffset 80+x
    yoffset 16+y

transform _eyes (w, h, t):
    crop (0, 0, w, h)
    pause t[0]
    crop (0, h, w, h)
    pause t[1]
    crop (0, h * 2, w, h)
    pause t[2]
    repeat

    _timings = [5.0, 0.1, 0.1]
    _at = [ _position (pos_x, pos_y)]
    _at.append(_eyes (frame_width, frame_height, _timings))
    renpy.show (filename, at_list=_at, layer='master', what=None, zorder=3, tag='eyes', behind=['background','character'])


Можно ли написать трансформацию для заранее неизвестного количества кадров? Или надо сделать трансформацию 1 кадра и в цикле запихивать её с нужными параметрами в _at лист?


Сообщение отредактировал AxelK - Пятница, 17 Января 2020, 08:59

Idealist
Дата: Понедельник, 20 Января 2020, 22:27 | Сообщение # 650
Проверенный
Сообщений: 7
Награды: 0
Замечания: 0%
создал текстовую новеллу с одной картинкой в виде фона( делал в ренпае). Портировал на андроид. При запуске - error dlopen failed: cannot locate symbol "atof" referenced by "libpng16.so"... Походу картинка слишком большая?
Форум о визуальных новеллах » Для разработчиков » Ren'Py » Помощь по Rep'Py (Вопрос\Ответ)
  • Страница 44 из 44
  • «
  • 1
  • 2
  • 42
  • 43
  • 44
Поиск: