mirror of
https://gitlab.com/Oreolek/ludumdare37.git
synced 2024-04-25 13:49:47 +03:00
Разрешение проблем с таймерами.
This commit is contained in:
parent
d32089d79c
commit
c8801dad4d
|
@ -10,7 +10,7 @@ i18n.push("ru", require('../../game/language/ru.coffee'))
|
||||||
i18n.push("en", require('../../game/language/en.coffee'))
|
i18n.push("en", require('../../game/language/en.coffee'))
|
||||||
|
|
||||||
salet.game_id = "0ee0825d-0c71-4a08-bfe5-730e575df26d"
|
salet.game_id = "0ee0825d-0c71-4a08-bfe5-730e575df26d"
|
||||||
salet.game_version = "1.0"
|
salet.game_version = "2.0"
|
||||||
|
|
||||||
$.holdReady( true )
|
$.holdReady( true )
|
||||||
$.getJSON('game/procgen/'+i18n.lang+'.json', (data) ->
|
$.getJSON('game/procgen/'+i18n.lang+'.json', (data) ->
|
||||||
|
@ -25,11 +25,6 @@ $.getJSON('game/procgen/'+i18n.lang+'.json', (data) ->
|
||||||
)
|
)
|
||||||
|
|
||||||
salet.init = () ->
|
salet.init = () ->
|
||||||
salet.character.lastBeat = () ->
|
|
||||||
return salet.progress.sequence.length - salet.character.beat
|
|
||||||
salet.character.newBeat = () ->
|
|
||||||
salet.character.beat = salet.progress.sequence.length
|
|
||||||
salet.character.beat = 0
|
|
||||||
state.setTag("weather", "warm")
|
state.setTag("weather", "warm")
|
||||||
audio = document.getElementById("bgsound")
|
audio = document.getElementById("bgsound")
|
||||||
if audio?
|
if audio?
|
||||||
|
@ -100,15 +95,17 @@ class ImprovModel
|
||||||
setTagIfNotPresent: (tagName, value) ->
|
setTagIfNotPresent: (tagName, value) ->
|
||||||
if @getTag(tagName) == undefined
|
if @getTag(tagName) == undefined
|
||||||
@tags.push([tagName, value])
|
@tags.push([tagName, value])
|
||||||
|
state = new ImprovModel
|
||||||
|
|
||||||
|
procgen = (tag) ->
|
||||||
|
return Improv.gen(tag, state)
|
||||||
|
|
||||||
cunit = (name, spec) ->
|
cunit = (name, spec) ->
|
||||||
spec.act = () ->
|
spec.act = () ->
|
||||||
# re-enter the room, reroll the description
|
# re-enter the room, reroll the description
|
||||||
salet.view.clearContent()
|
salet.view.clearContent()
|
||||||
|
response = '<em>'+@enact.fcall(this)+'</em>'
|
||||||
r = salet.here()
|
r = salet.here()
|
||||||
r.entering(r.name)
|
r.entering(r.name)
|
||||||
return '<em>'+@enact.fcall(this)+'</em>'
|
return response
|
||||||
return unit(name, spec)
|
return unit(name, spec)
|
||||||
state = new ImprovModel
|
|
||||||
procgen = (tag) ->
|
|
||||||
return Improv.gen(tag, state)
|
|
||||||
|
|
|
@ -297,3 +297,4 @@ module.exports =
|
||||||
|
|
||||||
### КОНЕЦ
|
### КОНЕЦ
|
||||||
"""
|
"""
|
||||||
|
owindow_opened: "Оно открыто."
|
||||||
|
|
|
@ -1,40 +1,25 @@
|
||||||
## REAL ROOM
|
## REAL ROOM
|
||||||
|
#TODO: после открытия окна нельзя открыть его дважды, пока его не закрыли
|
||||||
|
|
||||||
room "start",
|
room "start",
|
||||||
clear: false
|
clear: false
|
||||||
before: (from) ->
|
before: (from) ->
|
||||||
if (!from)
|
if (!from)
|
||||||
|
# timer every three actions
|
||||||
|
salet.addTimer("killed", () ->
|
||||||
|
if (
|
||||||
|
salet.character.knows_margo and
|
||||||
|
salet.character.knows_alexey
|
||||||
|
)
|
||||||
|
salet.character.killed = true
|
||||||
|
salet.dropTimer("killed")
|
||||||
|
salet.goTo("killed")
|
||||||
|
, true, 3)
|
||||||
return "intro".l()
|
return "intro".l()
|
||||||
dsc: () ->
|
dsc: () ->
|
||||||
if salet.character.ferret
|
if salet.character.ferret
|
||||||
return "dsc_ferret".l()
|
return "dsc_ferret".l()
|
||||||
return "dsc".l()
|
return "dsc".l()
|
||||||
afterChoices: () ->
|
|
||||||
if (
|
|
||||||
salet.character.lastBeat() > 3 and
|
|
||||||
salet.character.killed != true and
|
|
||||||
salet.character.knows_margo and
|
|
||||||
salet.character.knows_alexey
|
|
||||||
)
|
|
||||||
salet.character.killed = true
|
|
||||||
salet.character.newBeat()
|
|
||||||
salet.goTo("killed")
|
|
||||||
|
|
||||||
if (salet.character.book and salet.character.lastBeat() == 2)
|
|
||||||
salet.view.write "**"+"reset_book".l()+"**"
|
|
||||||
|
|
||||||
if (salet.character.window and salet.character.lastBeat() == 2)
|
|
||||||
salet.view.write "**"+"reset_window".l()+"**"
|
|
||||||
|
|
||||||
if (salet.character.window and salet.character.lastBeat() > 3)
|
|
||||||
salet.character.window = false
|
|
||||||
salet.character.newBeat()
|
|
||||||
salet.view.write "**"+"reset_window_ends".l()+"**"
|
|
||||||
|
|
||||||
if (salet.character.book and salet.character.lastBeat() > 3)
|
|
||||||
salet.character.book = false
|
|
||||||
salet.character.newBeat()
|
|
||||||
salet.view.write "**"+"reset_book_ends".l()+"**"
|
|
||||||
canExit: (to) ->
|
canExit: (to) ->
|
||||||
if salet.character.killed and (to == "margo" or to == "alexey")
|
if salet.character.killed and (to == "margo" or to == "alexey")
|
||||||
salet.view.clearContent()
|
salet.view.clearContent()
|
||||||
|
@ -44,6 +29,8 @@ room "start",
|
||||||
cunit "window",
|
cunit "window",
|
||||||
order: 5
|
order: 5
|
||||||
dsc: () ->
|
dsc: () ->
|
||||||
|
if salet.character.ferret
|
||||||
|
return "\n\n"+"window_end".l()
|
||||||
if salet.character.ferret
|
if salet.character.ferret
|
||||||
return "\n\n"+"window_end".l()
|
return "\n\n"+"window_end".l()
|
||||||
return "\n\n"+"window".l()
|
return "\n\n"+"window".l()
|
||||||
|
@ -52,13 +39,21 @@ room "start",
|
||||||
cunit "owindow",
|
cunit "owindow",
|
||||||
order: 6
|
order: 6
|
||||||
dsc: () ->
|
dsc: () ->
|
||||||
|
if salet.character.window
|
||||||
|
return "owindow_opened".l()
|
||||||
if salet.character.ferret
|
if salet.character.ferret
|
||||||
return "owindow_end".l()
|
return "owindow_end".l()
|
||||||
return "owindow".l()
|
return "owindow".l()
|
||||||
enact: () ->
|
enact: () ->
|
||||||
if salet.character.killed
|
if salet.character.killed
|
||||||
|
salet.addTimer("window", () ->
|
||||||
|
return "**"+"reset_window".l()+"**"
|
||||||
|
, false, 2)
|
||||||
|
salet.addTimer("windowend", () ->
|
||||||
|
salet.character.window = false
|
||||||
|
return "**"+"reset_window_ends".l()+"**"
|
||||||
|
, false, 4)
|
||||||
salet.character.window = true
|
salet.character.window = true
|
||||||
salet.character.newBeat()
|
|
||||||
return "window_open".l()
|
return "window_open".l()
|
||||||
else
|
else
|
||||||
return "window_open_no".l()
|
return "window_open_no".l()
|
||||||
|
@ -83,36 +78,39 @@ room "start",
|
||||||
enact: () ->
|
enact: () ->
|
||||||
salet.goTo("margo")
|
salet.goTo("margo")
|
||||||
]
|
]
|
||||||
###
|
|
||||||
cunit "debug",
|
debug = cunit "debug",
|
||||||
dsc: "<center>{{Skip until the puzzles}}</center>"
|
dsc: "<center>{{Skip until the puzzles}}</center>"
|
||||||
order: 666
|
order: 666
|
||||||
enact: () ->
|
enact: () ->
|
||||||
state.setTag("weather", "cold")
|
state.setTag("weather", "cold")
|
||||||
salet.here().take(book)
|
salet.here().take(book)
|
||||||
salet.here().take(blood)
|
salet.here().take(blood)
|
||||||
salet.here().take(ferret)
|
salet.here().take(ferret)
|
||||||
salet.character.newBeat()
|
salet.character["knows_alexey"] = true
|
||||||
salet.character["knows_alexey"] = true
|
salet.character["knows_margo"] = true
|
||||||
salet.character["knows_margo"] = true
|
salet.here().drop("debug")
|
||||||
salet.here().drop("debug")
|
salet.dropTimer("killed")
|
||||||
salet.character.killed = true
|
salet.character.killed = true
|
||||||
return "Done."
|
return "Done."
|
||||||
###
|
salet.rooms.start.take(debug)
|
||||||
|
|
||||||
book = cunit "book",
|
book = cunit "book",
|
||||||
order: 7
|
order: 7
|
||||||
dsc: () ->
|
dsc: () ->
|
||||||
if salet.character.book
|
if salet.character.book
|
||||||
return "\n\n"+"book_floor".l()
|
return "\n\n"+"book_floor".l()
|
||||||
else
|
return "\n\n"+"book".l()
|
||||||
return "\n\n"+"book".l()
|
|
||||||
enact: () ->
|
enact: () ->
|
||||||
if salet.character.book
|
if salet.character.book
|
||||||
return "book_act_twice".l()
|
return "book_act_twice".l()
|
||||||
else
|
else
|
||||||
|
salet.addTimer("book", "**"+"reset_book".l()+"**", false, 2)
|
||||||
|
salet.addTimer("bookend", () ->
|
||||||
|
salet.character.book = false
|
||||||
|
return "**"+"reset_book_ends".l()+"**"
|
||||||
|
, false, 4)
|
||||||
salet.character.book = true
|
salet.character.book = true
|
||||||
salet.character.newBeat()
|
|
||||||
return "book_act".l()
|
return "book_act".l()
|
||||||
|
|
||||||
blood = cunit "blood",
|
blood = cunit "blood",
|
||||||
|
|
|
@ -39,6 +39,7 @@
|
||||||
<!-- CDN JS Libraries -->
|
<!-- CDN JS Libraries -->
|
||||||
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/marked.min.js" integrity="sha384-QXBtGc4014gU26HdCwzgy8TVO+FHSSE4+EvPPiSTpdE9w0KyJy1ocfiIbBl1HLq7" crossorigin="anonymous"></script>
|
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/marked.min.js" integrity="sha384-QXBtGc4014gU26HdCwzgy8TVO+FHSSE4+EvPPiSTpdE9w0KyJy1ocfiIbBl1HLq7" crossorigin="anonymous"></script>
|
||||||
<script type="text/javascript" src="https://code.jquery.com/jquery-3.1.1.min.js" crossorigin="anonymous"></script>
|
<script type="text/javascript" src="https://code.jquery.com/jquery-3.1.1.min.js" crossorigin="anonymous"></script>
|
||||||
|
<audio id="bgsound" preload="auto" loop="loop"><source src="audio/bgr.mp3" type='audio/mpeg; codecs="mp3"'></audio>
|
||||||
|
|
||||||
<script type="text/javascript" src="game/bundle.js"></script>
|
<script type="text/javascript" src="game/bundle.js"></script>
|
||||||
<!-- Piwik -->
|
<!-- Piwik -->
|
||||||
|
|
|
@ -40,7 +40,7 @@
|
||||||
<!-- CDN JS Libraries -->
|
<!-- CDN JS Libraries -->
|
||||||
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/marked.min.js" integrity="sha384-QXBtGc4014gU26HdCwzgy8TVO+FHSSE4+EvPPiSTpdE9w0KyJy1ocfiIbBl1HLq7" crossorigin="anonymous"></script>
|
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/marked.min.js" integrity="sha384-QXBtGc4014gU26HdCwzgy8TVO+FHSSE4+EvPPiSTpdE9w0KyJy1ocfiIbBl1HLq7" crossorigin="anonymous"></script>
|
||||||
<script type="text/javascript" src="https://code.jquery.com/jquery-3.1.1.min.js" crossorigin="anonymous"></script>
|
<script type="text/javascript" src="https://code.jquery.com/jquery-3.1.1.min.js" crossorigin="anonymous"></script>
|
||||||
<!-- <audio id="bgsound" preload="auto" loop="loop"><source src="audio/bgr.mp3" type='audio/mpeg; codecs="mp3"'></audio> -->
|
<audio id="bgsound" preload="auto" loop="loop"><source src="audio/bgr.mp3" type='audio/mpeg; codecs="mp3"'></audio>
|
||||||
|
|
||||||
<script type="text/javascript" src="game/bundle.js"></script>
|
<script type="text/javascript" src="game/bundle.js"></script>
|
||||||
<!-- Piwik -->
|
<!-- Piwik -->
|
||||||
|
|
Loading…
Reference in a new issue