Lane D S18: the refusal pin, re-ruled by my own fix — 584/0/0
My whyNot fix made my own assert stale, which is fair. The pin now asks the question the wording answers: standing at the beam with two posts still up, the refusal has to say WALK; with every live corner up a wall, it has to say the knife cannot reach it. Two arms, because that is how many reasons there are. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
097f453b9d
commit
e0e9f69e71
@ -1414,8 +1414,22 @@ export default async function run(t) {
|
|||||||
'the carport BEAM is bracket work — a knife cannot reach it, and having no time to fetch the '
|
'the carport BEAM is bracket work — a knife cannot reach it, and having no time to fetch the '
|
||||||
+ 'ladder is the emergency\'s whole premise');
|
+ 'ladder is the emergency\'s whole premise');
|
||||||
assert(!cuttable(corners[3], YARD.anchor('cb1')), 'cuttable() states the same rule directly');
|
assert(!cuttable(corners[3], YARD.anchor('cb1')), 'cuttable() states the same rule directly');
|
||||||
// and the read says WHICH TOOL, rather than going silent — the greyed-prompt rule, S13
|
|
||||||
assert(/ladder/.test(K.read().whyNot ?? ''), 'the refusal names the tool it would need');
|
/**
|
||||||
|
* THE REFUSAL SAYS WHICH OF THE TWO REASONS IT IS, and this pin exists because playing it
|
||||||
|
* caught the version that did not: one constant that always blamed the bracket, so on a yard
|
||||||
|
* with no bracket in the quad the game told me to fetch a ladder for a corner that does not
|
||||||
|
* exist. `needsLadder`'s own SPRINT10 disease — a rule keyed on the wrong thing, failing
|
||||||
|
* plausibly — on the surface built to explain it.
|
||||||
|
*/
|
||||||
|
assert(/cleat|strop/.test(K.read().whyNot ?? ''),
|
||||||
|
`standing at the beam with two posts still up, the answer is WALK: ${K.read().whyNot}`);
|
||||||
|
const bracketOnly = fakeRig([
|
||||||
|
{ anchorId: 'cb1', broken: false, hw: { name: 'shackle', cost: 15, rating: 3200 } },
|
||||||
|
]);
|
||||||
|
const K2 = knifeAt(p, bracketOnly);
|
||||||
|
assert(/bracket/.test(K2.read().whyNot ?? ''),
|
||||||
|
`with every live corner up a wall, the answer is that the knife cannot reach it: ${K2.read().whyNot}`);
|
||||||
|
|
||||||
// out of range of everything: still a sail, still no cut
|
// out of range of everything: still a sail, still no cut
|
||||||
p.pos.x = 0; p.pos.z = 0;
|
p.pos.x = 0; p.pos.z = 0;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user