Шрифт в постах

Стиль оформления

Дополнительно

вверх
вниз

Shadows of Old

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Shadows of Old » Анкетирование » Lazarus Guennos | human


Lazarus Guennos | human

Сообщений 1 страница 2 из 2

1

ЛАЗАР ГВЕННОС / ЗВЕЗДОЧЁТ, ТЕНЬ | LAZARUS GUENNOS / STARGAZER, SHADE
бывший Избранный Гвенны, старый бродяга

https://upforme.ru/uploads/001c/03/d9/266/t790691.gif  https://upforme.ru/uploads/001c/03/d9/266/t556486.gif
Joshua Sasse

672 | человек | Рионна

••••••••••••••••••••••••••••••••••••••••••••

Образ персонажа

Мальчишка без рода и племени, сорняк на обочине трактов и мелкая рыбёшка в водах великой Рионны - для Лазара всегда было много эпитетов, но редкий из них делал ему честь.

Он появился на свет, когда солнце над могущественными человеческими государствами стояло в зените: а потому, могло продолжать двигаться в единственном направлении, к неминуемому закату. Младенец в портовом борделе - явление столь будничное, что едва ли стоит упоминания в церковных летописях. Никто и не стал упоминать, ни рождения, ни даже его имени.

Первым, что встретило его в этом мире, был ласковый женский голос, звучавший, казалось, из самой глубины его естества. "Здравствуй, мой Лазар," - произнесла она, и следом: "Отправляйся в путь." Голос матери, раздавшийся над ухом после, в сравнении казался тусклым и бесчувственным - и младенец, до того лишь молча жмурившийся от непривычного света, горько разрыдался, когда тёплое невидимое прикосновение сменилось грубыми человеческими руками.

Рионна, которую запомнили полные любопыства детские глаза, была сияюща и богата, и всё же, даже тогда в стране звёзд беспризорников не кормили задарма. В городах помельче осиротевший, едва ему минуло восемь зим, мальчишка мог бы найти пристанище в какой-нибудь церкви, может даже получил бы достойное образование, но кому нужен оборванец в столичных храмах? Выбор стоял между публичным домом и рыбацкой лодкой, и Лазар, без того днями пропадавший у пёстрых пристаней, предпочёл морские ветра запаху кислого пива и дешёвой пудры.

"Он будет тебе другом," - прозвучал в голове давно привычный голос, когда грубые от соли и снастей пальцы сжались на вихрастом загривке, готовясь вышвырнуть за борт крысёныша, без спроса забравшегося в трюм небольшого парусника. Лазар давно не задавался вопросами, кто нашёптывает ему советы и сопровождает во всех его шалостях. Молчать о том, что в его сознании живёт кто-то ещё, мальчишка научился раньше, чем считать: в портовых переулках никто не будет украдкой переглядываться и отпускать хлёсткие двусмысленности. Если тебя считают сумасшедшим, ты попросту будешь бит. Поэтому он не стал объяснять старику, что заставило его вцепиться в чужое запястье мёртвой хваткой и, извернувшись словно пойманный на столе кот, прямо в лицо потребовать:

- Будь моим другом, старый!

Родосу - так, оказалось, звали старого капитана - Лазар был обязан всем, начиная от грамоты и заканчивая ремеслом, долгие годы кормившим и поившим его даже после смерти друга. Если бы не Родос, Лазар, наверное, так и остался бы оболтусом, не умеющим написать даже собственное имя. Но старый моряк коротал дни в плаваниях, рассказывая мальчишке на борту своего крохотного судёнышка байки о чудотворцах и Избранных прежних дней, учил строить маршруты и чертить карты опасных рифов. Он воспитывал ничейного ребёнка так, будто считал его своим собственным - Лазар так и не узнал, были ли у старика родные дети и, если были, то что с ними стало к закату жизни отца. И судно, и хижину на окраине города, и все свои немногочисленные пожитки Родос оставил воспитаннику, а Лазар был слишком беден и не слишком благороден, чтобы отказываться от такого подарка.

- Знаешь, а старый хрен ведь вечно распинался о всяких чудотворцах, которые слышали глас богов. Уж не богиня ли ты, старушка? - заплетающимся языком бормотал он куда-то в кружку самого хорошего вина, на какое ему хватило денег.

"Ещё не пришло тебе время знать моё имя, Лазар, слышащий Глас."

- Подумать только, всю жизнь болтаю с богиней как с какой-то собутыльницей, а Родосу так и не рассказал. Ну я и погань, - пьяно расхохотался совсем ещё юнец, изо всех сил делая вид, что не слышит, как дрожит голос от застрявшего в глотке кома.

Старушка в его голове не одобряла ни возлияний, ни прочих способов прожечь свою молодость, к каким обратился Лазар, лишившись единственного человека в этом мире, которому было дело до его жизни и который не являлся при этом бестелесным голосом в его же черепушке. Случалось, что не замолкавшая прежде и на неделю, она могла пропадать месяцами - Лазар хорохорился и бормотал себе под нос, что и без чужой компании чувствует себя великолепно, но любые его знакомые, пусть и не знали причин, всегда замечали, что временами он начинал говорить сам с собой почти без перерыва.

Жизнь Лазара подошла к концу в один из таких месяцев, когда, разругавшись в пух и прах с немногочисленными приятелями, он сгоряча вышел в море прямо навстречу шторму. Глупость, каких поискать, и будь старушка в тот день рядом, она бы наверняка отговорила своего незадачливого подопечного от этой дерьмовой затеи - но голос молчал, и Лазар понял, в какую западню загнал себя, только когда мачта с треском рухнула, не выдержав порывов шквального ветра.

Море встретило его непроглядной тьмой и жгучим холодом воды, заливающейся в лёгкие. Стихия, когда-то подарившая ему свободу и хлеб на столе, теперь тянула его на дно, будто в наказание за высокомерие, с которым он решил бросить вызов волнам. Лазар провёл на палубе большую часть своей жизни, он умел плавать так же хорошо, как любой рионниец, но что может слабый человек против бури, пришедшей по его душу?

"Слишком рано. Ты должен был пожить ещё," - печальный, но такой же ласковый, как и тридцать лет назад, женский голос окутал его теплом, отогнавшим мрак и холод бушующей воды, и Лазар наконец почувствовал то, о чём шутил долгие годы: Указующая путь, сама богиня Гвенна подтолкнула его вверх, выдернула из пучины и научила его ноги находить опору на водной глади, в обмен на самую ничтожную на свете цену. Лазар не ощущал холода, стоя посреди вздымающихся волн, задрав голову и вглядываясь в мерцание мириадов звёзд на полотне ночного неба. В обмен на жизнь, Гвенна не забрала много - всего лишь его человечность.

Его подобрала проходившая мимо лодка, несколько часов спустя, когда буря улеглась и рассветные лучи разлились золотом на горизонте. Он не стал разубеждать ни рыбачку, ни её сына, которые в один голос восторгались невиданной удаче, пославшей им навстречу чудотворца - ведь кто ещё мог стоять посреди бухты, окружённый то и дело выскакивающими из воды рыбами? Лазар лишь попросил подбросить его до ближайшего храма Гвенны - потому что отныне в старом рыбацком домике ему не было места.

Он не стал лгать и изворачиваться, представ перед священниками, смерявшими его, безродного, презрительными взглядами. Лазар сам не знал, почему выложил всё начистоту с порога: обычно, он наплёл бы с три короба, придумал бы историю поубедительнее, чем "Женщина в моей голове назвалась Гвенной и говорит, что я её Избранный". Но почему-то сейчас врать ему не хотелось. Может быть потому что он продолжал чувствовать на себе иной взгляд - принадлежавший не напыщенным индюкам, мнящим себя великими вседержателями и светочами, но чему-то большему, важнее и величественнее всего, что могут вылепить из себя смертные.

Сияющий из Иларии, к храму которого Лазара подбросило приветливое семейство, рассмеялся ему в лицо, едва услышав о его предполагаемой "избранности". С детьми звёзд вымокшего и капавшего морской водой на блестящие мраморные полы Лазара связывал разве что характерный для рионийцев рост и светлые глаза, в остальном он скорее походил на бродягу, тайком пробравшегося в храм, чтобы укрыться от непогоды. Зато Верховной жрице хватило одного взгляда, чтобы остановить поток витьеватой брани, лившийся из уст её подчинённого.

- Отныне и впредь, твой дом под сводами храмов Указующей путь, Тень Гвенны.

Тень - это прозвище пришлось по душе Сияющим куда больше, чем их оборванец-Избранный. Не имело значения, сколько томов из библиотек Бдящих он проштудировал, сколько раз укладывал на лопатки каждого из Тайных, сколь усердно рвал задницу, разъезжая по всей Рионне если не по указке тех же самых Сияющих, то по требованию старушки Гвенни, теперь говорившей с ним, пожалуй, даже чаще, чем в далёком детстве. Для тех, кто желал пользоваться им по своему разумению, а вынужден был мириться с самодуром, действовавшим по указке лишь тогда, когда эта указка случайно совпадала с его собственными намерениями, Лазар был тенью в истории культа Гвенны, пятном на его безупречной репутации - прожигавшим свободное время в компании выпивки и женщин и стабильно раз в пару месяцев бывавшим пойманным городской стражей за очередной дебош.

Однажды, почле очередного Совета Сияющих, Лазар всё-таки задал заметно постаревшей Верховной вопрос, к тому времени мучавший его десятилетиями. Что, в конце концов, она имела в виду, называя его Тенью? Неужели даже она, при всей своей мудрости, считала его недостойным положения Избранного?

- Ты Тень, потому что взор Гвенны всегда обращён к тебе. Когда бы ты ни предстал предо мной, у твоих ног я всегда вижу тень её сияния, - с улыбкой проскрипела жрица в ответ.

Лазар напился тем вечером - до звёзд перед глазами и падения в пруд во внутреннем дворе храма, в котором он той же ночью ненароком спалил алтарь, пытаясь зажечь для Гвенны всю тысячу зачарованных свечей. На следующее утро, его ждало похмелье, каких он не испытывал с момента становления Избранным, и долгий нагоняй от нынешнего Сияющего из Иларии, которому, на самом-то деле, для возмущений не особенно-то и требовался повод. Но Гвенни в его голове смеялась, и Лазар беспечно улыбался в ответ, не чувствуя и крупицы раскаяния.

Конфликт, с которого начался закат прежнего мира, вспыхнул как любая человеческая война, но чем дольше он заягивался, тем чаще до Рионны доходили нерадостные вести. Гвенни в его голове, всегда казавшаяся такой непоколебимо спокойной, теперь звучала встревоженно, то и дело подгоняя его совершенствовать боевые умения. Она не говорила, что сулит людям будущее, но Лазар понимал и без слов: если Гвенни требует от него силы воина, значит вскоре война явится и на их земли.

Когда Амадия пала и магическая катастрофа прокатилась по миру, он был готов встретить угрозу на границе. К чему он готов не был - это к полчищам нежити, принесённым катастрофой в их земли, будто огромный рой вспожирающей саранчи. Лишь взор Гвенны, обращённый к нему самому и полагающимся на её силу Тайным, хоть как-то уравнивал их шансы - и всё же, день за днём, месяц за месяцем, полчища чудовищ отгрызали всё новые куски рионнийской земли.

"Ты не справишься," - впервые настолько строго возразила Указующая путь, когда Лазар потребовал, чтобы все свои силы она одолжила ему одному. Он и сам понимал, что будь он хоть дюжину раз Избранным, человеческое тело имеет свои пределы и чудо такого масштаба выжжет его без остатка. Но армии нежити не нуждались в отдыхе и не боялись ранений, которые уложили бы в могилу всякого живущего - очистить Рионну от них могло лишь божественное вмешательство.

Поэтому он настоял на своей эгоистичной просьбе, вперив полный вызова взгляд в лунный диск над головой - и богиня позволила ему это, направила к нему все свои дары людям. Он слышал, как дрогнули под натиском оживших трупов Тайные, разом ослабшие без поддержки их божества, но не позволил себе отступить. Лазар встретил безраздельное внимание Гвенны, пропустил его сквозь себя и обрушил на полчища мерзости проливным дождём сотканных из звёздного света стрел, три ночи и три дня озарявшим небосвод над Рионной.

Когда последняя из стрел коснулась земли, Лазар был единственным, кто ещё стоял на ногах посреди усеянного мёртвыми телами поля. Каждая крохотная частица его тела, сама его душа горела нестерпимой болью, но сильнее всего прочего в нём всегда пылало упрямство. Он не слышал голосов, не видел света - и всё же, Тень дождался, пока закатное солнце не сменилось убывающей луной, прежде чем закрыть глаза и провалиться в долгожданное небытие.

Он знал, очнувшись, что так и не пересёк порога домена Указующей путь - иначе всё его тело не отзывалось бы нестерпимыми мучениями на любую попытку сдвинуться с места. Безрадостная ухмылка, растянувшая губы, ощущалась на языке кровью из разошедшихся трещинок:

- Жестоко, Гвенни. Теперь я не нужен и тебе?

В тот раз, он впервые не смог услышать её голоса.

Скиталец без рода и племени, придорожный сорняк и перекати-поле - покинув родные края, Лазар нашёл себя в окружении таких же как он бродяг, слонявшихся по миру без цели и дома. Где-то его знали как Звездочёта, способного приоткрыть завесу грядущего, спросив совета у звёзд, где-то - как пройдоху, наживавшегося на дураках, решивших сыграть в азартную игру на какой-нибудь ярмарке. Обычно, его не узнавали вовсе - и Лазара устраивало такое положение вещей. За столетия скитаний, он научился наблюдать за миром, оставаясь в стороне и лишь изредка развлекаясь разговорами со старой подругой в его голове. Но рано или поздно, всему в этом мире суждено перемениться - и теперь, когда звёзды так настойчиво указывают ему путь домой, разве может Лазар им отказать?

Дополнительная информация

• После того, как перестал быть Избранным, сохранил физические способности (бессмертие, быстрое восстановление, способность легко переносить экстремальные условия), способность слышать и говорить с Гвенной.
• После отречения от имени Избранного, как и все стал нуждаться в пище и отдыхе.
• Может сотворить небольшое чудо, но получает от этого огромную отдачу - ощущается как полное истощение ресурса, аналогично тому, что он испытал, защитив Рионну от последствий Катастрофы.
• Сведущ в астрономии и астрологии, умеет в некоторой мере предсказывать будущее по звёздам. В некоторых уголках мира ходят поверья, что если помолиться Гвенне перед долгой дорогой, то в пути может встретиться Звездочёт, который предскажет твою судьбу - никто не знает, правда ли это и сбываются ли на деле его предсказания.
• Со времён до Катастрофы сохранил волшебный меч (Лунный, способный замедлить раненного им противника) и волшебный кинжал (Отблеск, способный возвращаться в ножны владельца).

Планы игру, пожелания по сюжетам и игровые табу

• Хочется поиграть что-то не лишённое смысла и логики, но в первую очередь весёлое. Подебоширить, победокурить, вляпаться в приключения. Поскольку персонаж много и долго путешествовал, мне было бы интересно найти точки соприкосновения с персонажами из разных частей света.
Ну и, разумеется, готов с головой окунуться в политические и религиозные разборки Рионны. Этой предвыборной кампании не помещает немного харизматичного хаоса.
• В целом, под настроение я играю всё, вплоть до какой-нибудь чернухи, но с Лазаром хочется придерживаться хоть каких-то рамок приличия. Не особенно увлекаюсь постельной темой и если вдруг повествование свернет в нцу, подробных графических описаний увы, скорее всего не выдам, но могу, опять же по настроению, постараться. А вот кровища и убийства это другое дело, но я старый пенсионер, так что по мере возможностей ограничусь советами с трибун.

Что делать с вашим персонажем в случае ухода с проекта

На усмотрение автора заявки.

Пример поста

Затянутое мутной дымкой, пахнущее сыростью и оседающее моросью на коже, это утро не сулило ничего хорошего — так, по крайней мере, проворчал бы Харгрим, если бы кто-нибудь возжелал поинтересоваться его мнением. Разумеется, интересоваться было некому: его спутники разбрелись по городу, кто в поисках транспорта в сторону границы с Тель-Ханадином, кто в надежде раздобыть больше информации о незнакомых краях, в которые их занесло; видят Валар, информация им сейчас была жизненно необходима. О какой спасительной экспедиции может идти речь, если они тычутся по углам этого давно затерянного в древних летописях континента, будто слепые котята, впустую растрачивая драгоценные дни и месяцы?

Харгрим хмурится. Проклятая мгла, снова наводит на мысли о Тумане. Конечно, это не он, туман в портах Виероли — не более, чем испарения, клубящиеся там, где солнечный жар касается остатков ночной прохлады; ему прекрасно известно, как работают законы природы, большое спасибо. И все же, он не может отделаться от неприятного холодка, пробегающего между лопаток всякий раз, когда этот закономерный результат конденсации сгущается, покрывая собой — пожирая — сначала волны на горизонте, затем прибывающие в порт корабли, и, наконец, даже спешащих выгрузить свежий улов на более приметные прилавки рыбаков.

— Ни зги не видно, и с каждым днем все хуже. Того гляди, завтра вовсе не выйдет порыбачить: не хочу наткнуться на какой-нибудь еще неуправляемый фрегат.

Дварф мотает головой, сбрасывая наваждение. Это другой континент, другая земля с другими проблемами. Здесь Туман еще не плещется у порогов, протягивая цепкие пальцы к любому дураку, неосторожно шагнувшему в его владения. И Харгрим здесь не чтобы сверлить взглядом молочную пустоту над водой: он здесь как раз ради таких слухов, которые разносят, едва ли скрываясь, ошивающиеся в порту работяги, торговцы и заезжие зеваки.

Харгрим, что, к сожалению, не подтверждало его репутации как дварфа весьма остроумного, не сразу обратил внимание на то, что люди, особенно в местах, куда стекаются обитатели многих здешних регионов, не столь озабочены секретностью, как это было в Лоргарде. Казалось, они готовы хоть планы готовящегося переворота обсуждать при свете дня, если делают это на языке, отличном от того, на каком разговаривают местные. Поначалу, Харгрим был уверен, что услышанные им в толпе обрывки разговоров не могли быть ничем иным, как огромным недопониманием, но, как позже он успел убедиться, люди в самом деле считали, что для большинства их тайн “языковой барьер” становится отличной защитой. Что ж, возможно так и было, в их, человеческом мире. По крайней мере, Харгрим последний, кто станет сокрушаться о людской недальновидности — в конце концов, теперь, когда ему известна эта их слабость, он может не утруждать себя попытками пробиться через чужое недоверие, чтобы собрать крупицы знаний. Достаточно, как он сейчас и делает, остановиться где-нибудь у прилавка и немного напрячь уши.

— И правильно, нечего сейчас в море делать. Я бы и в порт не совался, от греха подальше, пока эту чертовщину не угонят куда-нибудь в другую бухту, но жена меня самого на пирог пустит, если не достану ей рыбы к завтраку.

— Да кому ты брешешь? Твоя жена хоть знает, что полцены от ее завтрака уходит в толстый кошель мадам?

Подсушивать дальше смысла не имеет, Харгриму более чем наплевать на то, чей муж и куда ходит налево. Главное он уже услышал, хотя из полного суеверной брани разговора сложно понять, о чем именно ходят сплетни. Какой-то фрегат? Странно уже то, что в Лацилии, очевидно привыкшей к курсирующим мимо ее берегов кораблям, кто-то с такой неприязнью отзывается об очередном пришвартовавшемся судне. Харгрим не мог похвастать обширными знаниями о судоходстве, но готов был поспорить, что услышанное им недовольство, щедро приправленное плохо скрываемым страхом в голосе, не появилось бы на пустом месте. Возможно, сгустившийся туман не просто так настолько его нервировал?

Отыскать на людных причалах объект всеобщих пересудов оказывается нетрудно: даже в объятиях белой мглы, заботливо укрывающей от любопытных взглядов лишенные и флага, и каких-либо характерных символов мачты, огромный корабль невозможно не увидеть. Не в последнюю очередь из-за снующей вокруг отважной стражи, на лицах которой весьма красочно рисуется та же настороженность, что и у огибающих ее десятой дорогой работяг.

— Господа чародеи, какая неожиданная встреча. Здесь тоже прячется ваш менее законопослушный сородич? — привлекая внимание, машет рукой Харгрим, стоит ему заприметить за нестройными рядами стражников уже знакомый ему дуэт из Отряда карателей. Похоже, несмотря на все недобрые предчувствия, удача сегодня на его стороне, раз так благосклонно послала ему билет в самую гущу событий. Не то чтобы он так уж сильно рвался в эту гущу событий окунуться, но во-первых ему никак не дает покоя слишком густой туман вокруг этого странного безлюдного корабля, а во-вторых, пока он добирался до искомого, до него донеслись еще кое-какие слухи. В частности о том, что городские власти предлагают щедрую оплату тем, кто разберется с приставшей к их берегам проблемой вместо них. Что, по мнению Харгрима, с их стороны весьма трусливо и не слишком ответственно, но если он сможет перед переходом через горы на границе с Тель-Ханадином пополнить утекающие, будто песок сквозь пальцы, денежные запасы их маленькой группы, то он готов будет придержать свои жалобы при себе.

Договориться о подъеме на борт еще одного, пусть и не производящего своим удивительно низким ростом особенно надежного впечатления, человека не составляет труда, и на трап они ступают уже вчетвером: в последний момент, к ним присоединяется молчаливая девчонка, выглядящая, пожалуй, довольно молодо — хотя Харгрим может и ошибаться. Привыкнуть к человеческим лицам оказывается, почему-то, сложнее, чем в свое время к эльфийским.

— Что, ноги не держат? — подначивает дварф, когда Киран — один из двух уже знакомых ему чародеев — поскальзывается на отсыревших досках, неловко взмахивая руками. Он немного ускоряет шаг, уже протягивая руку, чтобы беззлобно хлопнуть мужчину по спине и, так уж и быть, придержать его, чтобы не свалился, не дойдя до палубы, но его планам, увы, не суждено сбыться: излишняя самонадеянность чуть не становится его же погибелью, когда пятка предательски соскальзывает и Харгрим едва сам не оказывается за бортом.

— Проклятое корыто, — бормочет он себе под нос, только чудом умудрившись удержаться на ногах, но урок усваивает — никаких больше детских шуток, пока от водной глади его не отделит, по крайней мере, резное ограждение, до которого он как раз с облегчением дотягивается еще через пару шагов.

— Можно подумать, кто-то решил натереть корабль маслом, только забыл, что чтобы использовать его для поджога нужно не только горючее, но и, как ни парадоксально, огонь, — угрюмо соглашается с девчонкой Харгрим, брезгливо вытирая влажные от прикосновения к доскам руки выуженным из кармана платком.

— И пока никто еще ничего себе действительно не сломал и не свернул, предлагаю приступить к осмотру. Начнем с палубы или с трюма?

+8

2

Вы приняты, добро пожаловать!

Коды для заполнения (следующим сообщением в теме анкеты):
Заполните поля во вкладках "Основа", "Профиль", "Плашка", "Фон" и нажмите на кнопку "Скопировать код" ниже, чтобы скопировать заполненные шаблоны.

[html]
<script>
// --------- FILL BACKGROUNDS ------------

function labelBg(className, nameCategory, src) {
    return `<label class="${className}"><input type="radio" name="${nameCategory}" id="${src}" onchange="updateProfilePreview()"><img src="${src}"> </label>`;
}

function fillBgs(bgs) {
    document.getElementById('bgContainer').innerHTML = bgs
        .map(bg => labelBg("profileBgLabel", "profileBg", bg)).join('');
}

// --------- FILL STRIPES ------------

function labelStripe(className, nameCategory, src) {
    return `<label class="${className}"><input type="radio" name="${nameCategory}" id="${src}" onchange="updateProfilePreview()"><img src="${src}"> </label>`;
}

function fillStripes(stripes) {
    document.getElementById('stripeContainer').innerHTML = stripes
        .map(stripe => labelStripe("profileStripeLabel", "profileStripe", stripe)).join('');
}

// --------- USER DATA ------------

let userLatinName = '';
let userProfileUrl = '';
let userApplicationFormUrl = '';

window.addEventListener("message", (event) => {
    if (!event.origin.match(/oldshadows\.rusff\.me$/)) return;
    if (event.data.eventName != 'profileFillingResponce') return;
    userLatinName = event.data.userLatinName;
    userProfileUrl = event.data.userProfileUrl;
    userApplicationFormUrl = event.data.userApplicationFormUrl;
    fillStripes(event.data.stripes);
    fillBgs(event.data.backgrounds);
});

window.addEventListener("message", (event) => {
    if (!event.origin.match(/oldshadows\.rusff\.me$/)) return;
    if (event.data.eventName != 'fontChange') return;
    $('.post-content p, .post-content div').css('font-size', event.data.fontSize + 'px');
});

const sendProfileRequest = () => {
    window.parent.postMessage({ eventName: 'profileFillingRequest' }, "*");
};
sendProfileRequest();
const intervalId = setInterval(sendProfileRequest, 1000);
window.addEventListener("message", (event) => {
    if (!event.origin.match(/oldshadows\.rusff\.me$/)) return;
    if (event.data.eventName === 'profileFillingResponce') {
        clearInterval(intervalId);
    }
});

function copyResults() {
    let copyContent = '';
   
    // -- форма внешности --
    const actorName = document.getElementById('actor').value;
    if (actorName) {
        const actorForm = `${actorName} — ${String.fromCharCode(91)}url=${userProfileUrl}${String.fromCharCode(93)}${userLatinName}${String.fromCharCode(91)}/url${String.fromCharCode(93)}`;
        copyContent += `Форма внешности: 
${String.fromCharCode(91)}code${String.fromCharCode(93)}${actorForm}${String.fromCharCode(91)}/code${String.fromCharCode(93)}`;
    }

    // -- форма заполнения профиля --
    const cyrillicName = document.getElementById('cyrillicName').value;
    if (cyrillicName) {
        const profileDescrName = document.getElementById('mainDescr').value;
        let profileForm = `<a href='${userApplicationFormUrl}'>${cyrillicName}</a>, ${profileDescrName}`;
       
        if (document.getElementById('hrAdd').checked) {
            profileForm += '<hr>';
        } else {
            profileForm += '<br>';
        }
       
        const profileAdd = document.getElementById('addDescr').value;
        const profileAddNotFilled = profileAdd == '' || profileAdd == `любое описание на ваш вкус <a href='ссылка на анкету персонажа'>имя на кириллице</a>`;
        if (!profileAddNotFilled) {
            profileForm += profileAdd;
        }
       
        copyContent += `\n\nФорма профиля:
${String.fromCharCode(91)}code${String.fromCharCode(93)}${profileForm}${String.fromCharCode(91)}/code${String.fromCharCode(93)}\n\n`;
    }

    // -- форма плашки --
    const stripeForm = Array.from(document.getElementsByName('profileStripe'))
        .filter(element => element.checked)
        .map(element => element.id)
        .join('');

    if (stripeForm) {
        copyContent += `Плашка:
${String.fromCharCode(91)}img${String.fromCharCode(93)}${stripeForm}${String.fromCharCode(91)}/img${String.fromCharCode(93)}\n\n`;
    }

        // -- форма фона --
    const bgForm = Array.from(document.getElementsByName('profileBg'))
        .filter(element => element.checked)
        .map(element => element.id)
        .join('');

    if (bgForm) {
        copyContent += `Фон:
${String.fromCharCode(91)}img${String.fromCharCode(93)}${bgForm}${String.fromCharCode(91)}/img${String.fromCharCode(93)}\n\n`;
    }

    // -- форма списка ролей --
    const listsDescription = document.getElementById('listsDescription').value;
    if (cyrillicName && listsDescription) {
        const listsForm = `${String.fromCharCode(91)}url=${userProfileUrl}${String.fromCharCode(93)}${cyrillicName}${String.fromCharCode(91)}/url${String.fromCharCode(93)} — ${listsDescription}`;
        copyContent += `Список ролей:
${String.fromCharCode(91)}code${String.fromCharCode(93)}${listsForm}${String.fromCharCode(91)}/code${String.fromCharCode(93)}\n\n`;
    }

    window.parent.postMessage({
        eventName: 'profileCopyInfoRequest',
        copyData: copyContent.trim() // Удаляем лишние переносы в конце
    }, "*");
};

document.getElementById('instructionResult').onclick = copyResults;

// --------- post user profile update ------------
function updateProfilePreview() {
    const cyrillicName = document.getElementById('cyrillicName').value ?? userLatinName;
    const profileDescrName = document.getElementById('mainDescr').value;
    let profileForm = `<a href='${userApplicationFormUrl}'>${cyrillicName}</a>, ${profileDescrName}`;
   
    if (document.getElementById('hrAdd').checked) {
        profileForm += '<hr>';
        } else {
            profileForm += '<br>';
        }   
    const profileAdd = document.getElementById('addDescr').value;
    const profileAddNotFilled = profileAdd == '' || profileAdd == `любое описание на ваш вкус <a href='ссылка на анкету персонажа'>имя на кириллице</a>`;
    if (!profileAddNotFilled) {
        profileForm += profileAdd;
    }

    const stripeForm = Array.from(document.getElementsByName('profileStripe'))
        .filter(element => element.checked)
        .map(element => element.id)
        .join('');

    const bgForm = Array.from(document.getElementsByName('profileBg'))
        .filter(element => element.checked)
        .map(element => element.id)
        .join('');

    window.parent.postMessage({
        eventName: 'profileDemo',
        profileDescr: profileForm,
        stripe: stripeForm,
        background: bgForm
    }, "*");
}

updateProfilePreview();

window.addEventListener("message", (event) => {
    if (!event.origin.match(/oldshadows\.rusff\.me$/)) return;
    if (event.data.eventName != 'fontChange') return;
    $('.post-content p, .post-content div').css('font-size', event.data.fontSize + 'px');
});

window.addEventListener("message", (event) => {
    if (!event.origin.match(/oldshadows\.rusff\.me$/)) return;
    if (event.data.eventName != 'styleChange') return;
    $("body").attr("class", event.data.style);
});
</script>

<div class="fillingForm">
<label class="fillingCategoryRadio"><input type="radio" id="main" name="fillingCategoryRadio" checked /> <span>Основа</span></label>
<label class="fillingCategoryRadio"><input type="radio" id="profileF" name="fillingCategoryRadio" /> <span>Профиль</span></label>
<label class="fillingCategoryRadio"><input type="radio" id="stripesF" name="fillingCategoryRadio" /> <span>Плашка</span></label>
<label class="fillingCategoryRadio"><input type="radio" id="bgsF" name="fillingCategoryRadio" /> <span>Фон</span></label>

<div class="instructionBlock mainInstruction">
<h2 class="instructionHeading">Основа</h2>
<label for="cyrillicName" class="labelDescr">Имя (кирилица):</label>
<input type="text" id="cyrillicName" name="cyrillicName" placeholder="кириллица" oninput="updateProfilePreview()">

<label for="actor" class="labelDescr">Внешность (латиница):</label>
<input type="text" id="actor" name="actor" placeholder="если не нужно, оставьте поле пустым">

<label for="listsDescription" class="labelDescr">Описание для списка ролей:</label>
<input type="text" id="listsDescription" name="listsDescription" placeholder="род деятельности, занятость">
</div>

<div class="instructionBlock profileInstruction">
<h2 class="instructionHeading">Описание в профиль</h2>
<label for="mainDescr" class="labelDescr">Описание в профиль:</label>
<input type="text" id="mainDescr" name="mainDescr" value="возраст, раса, род деятельности" oninput="updateProfilePreview()">

<label for="hrAdd" class="hrAdd">
<input type="checkbox" id="hrAdd" name="hrAdd" onchange="updateProfilePreview()" />
<span>Добавить полосу между секциями</span>
</label>

<label for="addDescr" class="labelDescr">При желании можете добавить в профиль пару, красивую цитату, важного родственника, врага и тому подобное через это поле. Если не нужно, оставьте его пустым или не меняйте:</label>
<textarea id="addDescr" oninput="updateProfilePreview()" name="addDescr" rows="4">любое описание на ваш вкус <a href='ссылка на анкету персонажа'>имя на кириллице</a></textarea>
</div>

<div class="instructionBlock stripeInstruction">
<h2 class="instructionHeading">Плашки</h2>
<div id="stripeContainer"></div>
</div>

<div class="instructionBlock bgInstruction">
<h2 class="instructionHeading">Фоны</h2>
<div id="bgContainer"></div>
</div>

<div class="formButtons">
<input type="button" id="instructionResult" value="Скопировать код">
</div>
</div>

<style>
body { color: var(--text1); }

h2.instructionHeading {
    font-size: 16px;
    font-family: 'Palatino Linotype';
    font-weight: bold;
    letter-spacing: 1px;
}

.labelDescr {
    display: block;
    margin: 9px 0px 1px 0px;
}

.fillingForm { text-align: center; }

.instructionBlock {
    text-align: left;
    margin: 10px 0 !important;
    padding: 14px 14px 12px 14px !important;
    border: 1px solid var(--borders);
    background: var(--qBG);
    border-radius: 4px;
}

.instructionBlock input[type="text"] {
    width: calc(100% - 10px);
}

label.hrAdd {
    margin: 10px 0 0 0;
    display: block;
}

input#hrAdd  {
    accent-color: var(--darkpinkText);
}

label.fillingCategoryRadio {
    border-radius: 16px;
    border: 1px solid var(--borders);
    background: var(--beg300);
    padding: 2px 6px;
    display: inline-block;
    margin: 0px 4px 5px 0px;
}

.instructionBlock textarea {
    width: calc(100% - 10px);
    resize: vertical;
}

label.fillingCategoryRadio:has(input:checked) {
    background: var(--borders);
    color: var(--text1);
}

.fillingCategoryRadio input[type="radio"] {
    display: none;
}

label.fillingCategoryRadio {
    cursor: pointer;
}

.mainInstruction, .profileInstruction, .stripeInstruction, .bgInstruction { display: none; }
.fillingCategoryRadio:has(#main:checked) ~ .mainInstruction { display: block !important; }
.fillingCategoryRadio:has(#profileF:checked) ~ .profileInstruction { display: block !important; }
.fillingCategoryRadio:has(#stripesF:checked) ~ .stripeInstruction { display: block !important; }
.fillingCategoryRadio:has(#bgsF:checked) ~ .bgInstruction { display: block !important; }

.profileStripeLabel, .profileBgLabel {
    margin: 5px 5px;
    display: inline-block;
    width: 180px;
    border-radius: 5px;
    padding: 5px;
    background: rgb(255 255 255 / 17%);
}

.profileStripeLabel img, .profileBgLabel img { border-radius: 3px; }
.profileBgLabel img {
    width: 180px;
    height: 40px;
    object-fit: cover;
    object-position: top;
}

.profileStripeLabel input, .profileBgLabel input { display: none; }

.profileStripeLabel:has(input:checked), .profileBgLabel:has(input:checked) {
    background: rgb(0 0 0 / 12%);
}

div#stripeContainer, div#bgContainer  {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
}

</style>
[/html]

0


Вы здесь » Shadows of Old » Анкетирование » Lazarus Guennos | human


Рейтинг форумов | Создать форум бесплатно