clay: treat %d scry on empty desk specially

Similar to how %x on the empty desk was already treated specially. We
continue supporting %d on non-empty desks, but do add a print marking it
as deprecated.
This commit is contained in:
fang 2022-05-12 00:41:58 +02:00
parent 9286fc93b1
commit 70aeb2a7c1
No known key found for this signature in database
GPG Key ID: EB035760C1BBA972

View File

@ -3937,6 +3937,7 @@
!. !.
|= [=tako =path] |= [=tako =path]
^- (unit (unit cage)) ^- (unit (unit cage))
~& [%clay %d-on-desk-deprecated desk=syd %use-empty-desk]
?. =(our her) ?. =(our her)
[~ ~] [~ ~]
?^ path ?^ path
@ -5042,8 +5043,11 @@
::TODO if it ever gets filled properly, pass in the full fur. ::TODO if it ever gets filled properly, pass in the full fur.
:: ::
=/ for=(unit ship) ?~(lyc ~ ?~(u.lyc ~ `n.u.lyc)) =/ for=(unit ship) ?~(lyc ~ ?~(u.lyc ~ `n.u.lyc))
?: &(=(our his) =(%x ren) =(%$ syd) =([%da now] u.luk)) ?: &(=(our his) ?=(?(%d %x) ren) =(%$ syd) =([%da now] u.luk))
(read-buc u.run tyl) ?- ren
%d (read-buc-d tyl)
%x (read-buc-x tyl)
==
=/ den ((de now rof [/scryduct ~] ruf) his syd) =/ den ((de now rof [/scryduct ~] ruf) his syd)
=/ result (mule |.(-:(aver:den for u.run u.luk tyl))) =/ result (mule |.(-:(aver:den for u.run u.luk tyl)))
?: ?=(%| -.result) ?: ?=(%| -.result)
@ -5051,8 +5055,14 @@
~ ~
p.result p.result
:: ::
++ read-buc ++ read-buc-d
|= [=care =path] |= =path
^- (unit (unit cage))
?^ path ~&(%no-cd-path [~ ~])
[~ ~ %noun !>(~(key by dos.rom.ruf))]
::
++ read-buc-x
|= =path
^- (unit (unit cage)) ^- (unit (unit cage))
?~ path ?~ path
~ ~