Предисловие: https://boosty.to/zero/posts/778615dc-2063-4a8f-bb4a-d9aa0fd3b0cf — переросла в идею для текстовой новеллы с графическими элементами.
Предупреждаю, я не халтурю: я уже устал, поэтому занимаюсь продой.
В общем, какое дело. Я разобрался с вводом характеристик для персонажа. Перед игроком появлялось бы окошко, где игрок выбирает телосложение, рост, причёску и цвет волос.
p.s. на изображении "инженерный" вариант.
Каждый, сделанный выбор предоставлял бы предварительные показатели характеристик:
Интеллект: *
Сила: *
Ловкость: *
Харизма: *
Мана:: *
И когда игрок заканчивает настройку персонажа, ему даётся возможность распределить 10 очков характеристик. С учётом того, что у персонажа уже есть начальные показатели, игрок имеет возможность исправить свои показатели или улучшить. Плюс, как нетрудно догадаться, такая система давала бы своеобразную систему билда персонажа, что в свою очередь, будет толкать игрока на желание перепройти игру с иными показателями и действиями.
Интеллект, влиял бы на возможность распознать ложь персонажей или сходу разглядеть какие-то подводные камни. Это выражалось бы в виде самого текста:
//////
От нечего делать в этом пустынном городишке, Маршал решил побродить по зданиям, предварительно начав с незапертых складов. Если повезёт, то ему может достаться одна, а может даже два пакета пищевого порошка. Верный конденсатор всегда под рукой, но без хорошей пищевой пасты могут существовать только киборги и трупы.
Пробравшись в хлипенькое здание, которое явно когда-то было мастерской обуви, взгляд Маршала цепляется за слабый след от тусклого, металлического блеска. Неужели оружие? Господи боже, он нашёл штуку которая могла бы защитить его и это прямо посреди города-призрака в проклятой пустыне. Боги дают ему намёк за то, что они невольно оказали ему финансовую помощь в заброшенной церкви?
ЕСЛИ игрок кликает в тексте на " Неужели оружие? "
Если "интеллект 5"
Бластерный карабин, да ещё и марка "КИ-99", что ж, этот весьма хорош! Хотя бы из-за того, что он заряжается от любой розетки, а если под рукой есть гант-машина, то считай у тебя бесконечные патроны.
*игрок получает бонус в 3 очка к интеллекту.
Если "интеллект 3"
Явно какая-то футуристичный пистолет, в общем, бластер. Не знаю как с ним быть, но кажется тут есть гнёзда для зарядки? Ну и ну.
*игрок получает бонус в 2 очка к интеллекту.
Если "интеллект 1"
Ха! Оружка в хламе! Крутата!
*игрок получает бонус в 1 балл к интеллекту.
к примеру, наша игра идёт по тому пути, если персонаж-игрока, больше дубина чем рука, которая её держит, то дальнейший текст был бы таким:
Теперь у него два ствола и ещё более пустой желудок, чем пять минут назад. Кажись если ему так и не свезёт со жратвой, то находка сможет помочь ему прилечь для менее мучительного отдыха. Хороший голод, это когда желудок реально пытается тебя сожрать.
//////
Это ещё не считая выбора действия или ответов в диалогах.
Вот только я не могу ничего из этого реализовать, из-за того, что не могу подключить к основному коду библиотеку слов и их склонений. Да, я знаю про morphy2(даже наткнулся страничку автора на хабаре, с ума сойти), но это нужен хороший комп и ещё больше нервов для очистки от будущих, мусорных файлов.
И если я не смогу подключить библиотеку слов, то будет так:
Это будет крайне плохо.
Мне нужно узнать, как именно импортировать данные из других(мной же и созданных) библиотек.
В чём моя проблема? Вот, глядите.
init:
$height_ch = "" <— тестовая переменная для "рост персонажа".
init python:
from word_library import word_slova <— у меня есть файл word_library.py и уже в нём, библиотека под названием word_slova
ренпай видит существование этого файла, может его нащупать, но в упор отказывается воспринимать наличие ключевых переменных.
игрок выбирает параметр роста
menu:
"Высокий":
$height_ch = "высокий"
"Обычный":
$height_ch = "обычный"
"Низкий":
$height_ch = "низкий"
Соответственно, если игрок ткнул в "Высокий", вот эта штука $height_ch = "", становиться такой: $height_ch = "Высокий"
И вот он момент истины, где ничего не выходит:
e "Отлично, я поняла, твоё тело имеет {word_slova[height_ch]['im_pad']} рост.
1. word_slova — библиотека слов.
2. height_ch — переменная, отвечающая за параметр персонажа. Если точнее, слово, которое нам это говорит.
3. im_pad — ключ в библиотеке, к которому привязано слово в именительном падеже: "высокий".
4. Таким образом, {word_slova[height_ch]['im_pad']}, читается как: зайти в word_slova, height_ch узнать название переменной(высокий), im_pad узнать какой вариант слова высокий нам нужно.
в рабочем варианте, это выглядит так:
Эйлин Отлично, я поняла, твоё тело имеет высокий рост.
Но… нихрена.
содержание моего word_library.py
word_slova= {
"высокий":
{"im_pad": "высокий",
"im_pad_mn": "высокие",
"rod_pad": "высокого",
"rod_pad_mn": "высоких",
"dat_pad": "высокому",
"dat_pad_mn": "высоким",
"vin_pad": "высокого",
"vin_pad_mn": "высоких",
"tvor_pad": "высоким",
"tvor_pad_mn": "высокими",
"predl_pad": "высоком",
"predl_pad_mn": "высоких",
"ut_pad": "высокую", },
}
def склонить(слово, падеж):
return word_slova.get(слово, {}).get(падеж, слово)
слово="высокий"
падеж="im_pad"
высокий_im_pad=склонить(слово, падеж)
print(высокий_im_pad)
В общем, это не даёт мне покоя, поэтому здравствуйте, паршивый сон, недосыпание, невозможность сконцентрироваться над конкретно одной задачей прода или код, а осознание того, что я не могу нормально заниматься продами или кодом, делает всё только хуже.
Памагите.
p.s. так что я слишком устал для кода и сижу, по тихой пишу проду как могу.