Generator WIP

This commit is contained in:
Alexander Yakovlev 2017-01-04 21:51:40 +07:00
parent c8801dad4d
commit 7c988181f3
4 changed files with 66 additions and 39 deletions

View File

@ -295,3 +295,4 @@ module.exports =
### END
"""
debug: "Skip until the puzzles"

View File

@ -1,3 +1,11 @@
# СТИЛЬ ИГРЫ
# 1. Пол главного персонажа неизвестен.
# 2. Повествование от второго лица.
# 3. Реализм на 60%. Плюс-минус 5%.
# 4. Трагедия. Всё заканчивается плохо.
cyclelink = (ref, content) ->
return '<a class="cycle" id="'+ref+'" href="./_replacer_'+ref+'">'+content+'</a>'
module.exports =
no_local_storage: "Локальное хранилище недоступно."
erase_message: "Это навсегда удалит вашего персонажа и немедленно вернёт вас на старт игры. Вы уверены?"
@ -6,6 +14,25 @@ module.exports =
# Трагедия железнодорожного зайца
Был холодный серый ноябрьский вечер.
Жёлтое солнце в ровном голубом небе освещало фиолетово-золотой вокзал.
Вы <...>
В город Нижнюю Ы. вас принесла командировка: один из местных *буржуа* захотел
построить шестиэтажный дворец.
Как ведущий архитектор, вы должны были посмотреть на его материалы и землю.
Конечно же, после встречи с клиентом.
"""
start_dsc: () -> """
Вы осматриваете себя в зеркале.
#{cyclelink('sex', "woman".l())}
#{cyclelink('age', "middle_age".l())} с #{cyclelink('hair', 'дикой причёской')}, <span class="top">в деловом костюме</span>, <span class="bottom">рваных джинсах</span> и <span class="shoes">берцах</span> должна произвести неизгладимое впечатление.
"""
man: "Мужчина"
woman: "Женщина"
middle_age: "средних лет"
# СТАРЫЙ ТЕКСТ ИЗ СТАРОЙ ВЕРСИИ
outdated: """
Поезд Москва-Владивосток прибыл на четвёртую платформу ровно в семнадцать
ноль-ноль.
@ -18,6 +45,7 @@ module.exports =
Поезд тихо тронулся.
"""
window: "За {{окном}} проносятся столбы."
debug: "Пропустить половину игры до загадок"
dsc: """
##### В купе поезда

View File

@ -1,7 +1,37 @@
## REAL ROOM
#TODO: после открытия окна нельзя открыть его дважды, пока его не закрыли
room "start",
clear: false
before: () ->
salet.character.sex ?= 'w'
salet.character.age ?= 'middle_age'
salet.character.hair ?= 'wild'
salet.character.top ?= 'business'
salet.character.bottom ?= 'jeans'
salet.character.shoes ?= 'combat'
return "intro".l()
dsc: "start_dsc".l()
writers: {
sex: () ->
if salet.character.sex == 'w'
salet.character.sex = 'm'
return "man".l()
if salet.character.sex == 'm'
salet.character.sex = 'w'
return "woman".l()
age: () ->
return "middle_age".l()
hair: () ->
return "с дикой причёской"
top: () ->
return "в деловом костюме,"
bottom: () ->
return " рваных джинсах"
shoes: () ->
return "и берцах"
}
room "main",
clear: false
before: (from) ->
if (!from)
@ -15,7 +45,7 @@ room "start",
salet.dropTimer("killed")
salet.goTo("killed")
, true, 3)
return "intro".l()
return ""
dsc: () ->
if salet.character.ferret
return "dsc_ferret".l()
@ -80,7 +110,8 @@ room "start",
]
debug = cunit "debug",
dsc: "<center>{{Skip until the puzzles}}</center>"
dsc: () ->
"<center>{{#{"debug".l()}}}</center>"
order: 666
enact: () ->
state.setTag("weather", "cold")

View File

@ -21,42 +21,9 @@ body {
overflow-x: hidden;
background: $body-bg;
}
// The title block
.title {
margin-top: 3.5em;
@include col(10,12);
@media (min-width: breakpoint-min(sm)) {
@include make-col-offset(1);
}
.label {
margin: 1.5em auto;
@include make-col(12);
h1 {
font-size: 2rem;
text-align: center;
}
.subtitle {
font-size: smaller;
color: #aaa;
}
h2 {
font-size: 1.5rem;
}
.warnings {
font-size: small;
font-style: italic;
p {
margin-bottom: 1em;
}
}
.noscript_message {
left: 0;
right: 0;
bottom: 0;
position: absolute;
font-size: 0.9em;
font-style: italic;
text-align: center;
color: #943;
}
}
#choices {
@include make-col(12);