Предметы и описания

This commit is contained in:
Alexander Yakovlev 2016-12-11 22:12:06 +07:00
parent f2e8cf6700
commit ab131fdfec
3 changed files with 60 additions and 1 deletions

View File

@ -25,6 +25,8 @@ $.getJSON('game/procgen/'+i18n.lang+'.json', (data) ->
salet.init = () ->
salet.character.lastBeat = () ->
return salet.progress.sequence.length - salet.character.beat
salet.character.newBeat = () ->
salet.character.beat = salet.progress.sequence.length
$(document).ready(() ->
window.addEventListener('popstate', (event) ->
@ -90,6 +92,12 @@ class ImprovModel
if @getTag(tagName) == undefined
@tags.push([tagName, value])
cunit = (name, spec) ->
spec.act = () ->
salet.view.clearContent()
salet.here().entering("start")
return '<em>'+@enact.fcall(this)+'</em>'
return unit(name, spec)
state = new ImprovModel
procgen = (tag) ->
return Improv.gen(tag, state)

View File

@ -115,6 +115,9 @@ module.exports =
Вы видите то же купе, но сейчас дверь открыта, и внутри никого нет.
За окном осенний тёплый пейзаж сменился метелью.
Неужели вы уже в Сибири?
Куда все так внезапно ушли?
Верхние полки сложены, а на столе лежит книжка Стивена Кинга.
"""
@ -171,3 +174,9 @@ module.exports =
У вас созревает план мести.
Но если вы не можете выйти, то как заставить кондуктора прийти сюда?
"""
book: "На столике лежит {{книга}} в мягком переплёте."
book_floor: "На полу лежит {{книга}} в мягком переплёте."
book_act: "Напрягшись, вы берёте книгу и роняете её со стола."
book_act_twice: "Книга только упала со столика, а вы и так устали."
reset_book: "Алексей замечает книгу на полу и нагибается, чтобы её поднять."
reset_book_ends: "Алексей поднимается и кладёт книгу на место."

View File

@ -20,8 +20,14 @@ room "start",
salet.character.knows_alexey
)
salet.character.killed = true
salet.character.beat = salet.progress.sequence.length
salet.character.newBeat()
salet.goTo("killed")
if (salet.character.book = true and salet.character.lastBeat() == 2)
salet.view.write "**"+"reset_book".l()+"**"
if (salet.character.book = true and salet.character.lastBeat() > 3)
salet.character.book = false
salet.character.newBeat()
salet.view.write "**"+"reset_book_ends".l()+"**"
writers:
window: () ->
# re-enter the room, reroll the description
@ -33,6 +39,40 @@ room "start",
salet.view.clearContent()
salet.view.append("<em>"+"#{to}_reaction".l()+"</em>")
return false
units:[
unit "debug",
dsc: "{{Пропустить интро}}"
act: () ->
state.setTag("weather", "cold")
salet.here().take(book)
salet.here().take(blood)
salet.character.newBeat()
salet.character["knows_alexey"] = true
salet.character["knows_margo"] = true
salet.here().drop("debug")
salet.character.killed = true
salet.view.clearContent()
salet.here().entering("start")
return "*Сделано.*"
]
book = cunit "book",
dsc: () ->
if salet.character.book
return "book_floor".l()
else
return "book".l()
enact: () ->
if salet.character.book
return "book_act_twice".l()
else
salet.character.book = true
salet.character.newBeat()
return "book_act".l()
blood = cunit "blood",
dsc: "Вы замечаете на полу {{красное пятно.}}"
enact: "Кровь. Вы не очень удивлены."
## ACTUALLY DIALOGUES
@ -111,6 +151,8 @@ room "killed5",
clear: false
enter: () ->
state.setTag("weather", "cold")
salet.rooms["start"].take(book)
salet.rooms["start"].take(blood)
optionText: "killed5_option".l()
dsc: "killed5".l()
tags: ["killed"]