Minor fixes
This commit is contained in:
parent
bc71393b53
commit
ec49c0f9e0
4 changed files with 7 additions and 7 deletions
|
@ -62,7 +62,7 @@ class CastingHarness private constructor(
|
|||
// Begin aggregating info
|
||||
val info = TempControllerInfo(false, false)
|
||||
var lastResolutionType = ResolvedPatternType.UNKNOWN
|
||||
while (continuation.isNotEmpty() && !info.haveWeFuckedUp) {
|
||||
while (continuation.isNotEmpty() && !info.earlyExit) {
|
||||
// Take the top of the continuation stack...
|
||||
val next = continuation.removeLast()
|
||||
// ...and execute it.
|
||||
|
@ -73,7 +73,7 @@ class CastingHarness private constructor(
|
|||
}
|
||||
lastResolutionType = result.resolutionType
|
||||
performSideEffects(info, result.sideEffects)
|
||||
info.haveWeFuckedUp = info.haveWeFuckedUp || !lastResolutionType.success
|
||||
info.earlyExit = info.earlyExit || !lastResolutionType.success
|
||||
}
|
||||
|
||||
return ControllerInfo(
|
||||
|
@ -183,7 +183,7 @@ class CastingHarness private constructor(
|
|||
for (haskellProgrammersShakingandCryingRN in sideEffects) {
|
||||
val mustStop = haskellProgrammersShakingandCryingRN.performEffect(this)
|
||||
if (mustStop) {
|
||||
info.haveWeFuckedUp = true
|
||||
info.earlyExit = true
|
||||
break
|
||||
}
|
||||
|
||||
|
@ -460,7 +460,7 @@ class CastingHarness private constructor(
|
|||
|
||||
data class TempControllerInfo(
|
||||
var playSound: Boolean,
|
||||
var haveWeFuckedUp: Boolean,
|
||||
var earlyExit: Boolean,
|
||||
)
|
||||
|
||||
data class CastResult(
|
||||
|
|
|
@ -60,7 +60,7 @@ sealed interface ContinuationFrame {
|
|||
}
|
||||
|
||||
/**
|
||||
* A stack marker representing the end of a Hermean evaluation,
|
||||
* A stack marker representing the end of a Hermes evaluation,
|
||||
* so that we know when to stop removing frames during a Halt.
|
||||
*/
|
||||
class FinishEval(): ContinuationFrame {
|
||||
|
|
|
@ -842,7 +842,7 @@
|
|||
"hexcasting.page.meta.eval.2": "This can be $(italic)very/$ powerful in tandem with $(l:items/focus)$(item)Foci/$.$(br2)It also makes the bureaucracy of Nature a \"Turing-complete\" system, according to one esoteric scroll I found.$(br2)However, it seems there's a limit to how many times a _Hex can cast itself-- Nature doesn't look kindly on runaway spells!$(br2)In addition, with the energies of the patterns occurring without me to guide them, any mishap will cause the remaining actions to become too unstable and immediately unravel.",
|
||||
"hexcasting.page.meta.for_each.1": "Remove a list of patterns and a list from the stack, then cast the given pattern over each element of the second list.",
|
||||
"hexcasting.page.meta.for_each.2": "More specifically, for each element in the second list, it will:$(li)Create a new stack, with everything on the current stack plus that element$(li)Draw all the patterns in the first list$(li)Save all the iotas remaining on the stack to a list$(br)Then, after all is said and done, pushes the list of saved iotas onto the main stack.$(br2)No wonder all the practitioners of this art go mad.",
|
||||
"hexcasting.page.meta.halt.1": "If evaluated during a Hermes, skip the remaining patterns in the list and continue. If evaluated during a Thoth, skip the remaining patterns $(italic)and/$ iotas and push the Thoth result immediately, then continue onward. When evaluated outside either of those, clear the stack and halt the spell.",
|
||||
"hexcasting.page.meta.halt": "If evaluated during a Hermes, skip the remaining patterns in the list and continue. If evaluated during a Thoth, skip the remaining patterns $(italic)and/$ iotas and push the Thoth result immediately, then continue onward. When evaluated outside either of those, clear the stack and halt the spell.",
|
||||
|
||||
"hexcasting.entry.circle_patterns": "Spell Circle Patterns",
|
||||
"hexcasting.page.circle_patterns.disclaimer": "These patterns must be cast from a $(l:greatwork/spellcircles)$(item)Spell Circle/$; trying to cast them through a $(l:items/staff)$(item)Staff/$ will fail rather spectacularly.",
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
"type": "hexcasting:pattern",
|
||||
"op_id": "hexcasting:halt",
|
||||
"anchor": "hexcasting:halt",
|
||||
"text": "hexcasting.page.meta.halt.1"
|
||||
"text": "hexcasting.page.meta.halt"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue