Eric S. Raymond
25077d0b4e
LOCSIZ -> NLOCATIONS, finishing limit-name cleanup.
2017-06-24 10:20:36 -04:00
Eric S. Raymond
64035d0026
More fixed limits (NOBJECTS, LOCSIZ) stop being fixed.
2017-06-24 10:18:33 -04:00
Eric S. Raymond
985137d9c7
Rationalize names of structure array sizes.
...
Everything that camn be #define become one, in all caps to signify that
it's a constant.
2017-06-24 09:55:32 -04:00
Eric S. Raymond
07207420a2
Elimination of OBJTXT.
...
This means eveything in Section 13 of adventure.text has moved to YAML.
2017-06-24 09:41:39 -04:00
Eric S. Raymond
0c2803638f
Correct buggy behavior of sign in endgame. Add a test for this.
2017-06-24 09:30:15 -04:00
Eric S. Raymond
2c9c9076b1
Extend test coverage. read sign in endgame.
2017-06-24 09:15:40 -04:00
Eric S. Raymond
3a93b2b5f0
Elimination of OBJSND.
2017-06-24 09:08:48 -04:00
Eric S. Raymond
606b590c1e
Extend test coverage of vending-machine actions.
2017-06-24 08:06:42 -04:00
Eric S. Raymond
e8e84a24a6
Improve test coverage.
2017-06-23 23:30:17 -04:00
Eric S. Raymond
ea70341cfe
Eliminate setting of OBJTXT sell for oyster - OBJTXT is now static.
...
A necessary step towards getting rid of it.
2017-06-23 15:50:15 -04:00
Eric S. Raymond
15b7c00e0a
Abolish unclean operation on OBJSOUND - it's now static.
...
Save/Restore no longer needs to treat it specially.
2017-06-23 15:13:47 -04:00
Eric S. Raymond
ecff53d3a8
Name the lamp, grate, and bird states.
2017-06-23 14:59:32 -04:00
Eric S. Raymond
2848494a01
Proof of cobcept for state defines.
...
It is now possible in the YAML to declare defines for all state values
associated with an object. This are visible in the C code and can be used
to replace magic numbers.
2017-06-23 14:07:44 -04:00
Eric S. Raymond
6bd1c356e2
Documentation polishing.
2017-06-23 11:27:20 -04:00
Eric S. Raymond
1e8c3a4a1d
Support loud locations.
2017-06-23 11:16:37 -04:00
Eric S. Raymond
f47dc9f447
Location sounds are now declared by YAML.
2017-06-23 10:10:48 -04:00
Eric S. Raymond
98b7434b0b
objsound.py: add a (temporary) YAML transformer for translating Section 13.
...
This will go away after it's applied/
2017-06-23 09:19:50 -04:00
Eric S. Raymond
8dd70624d1
Add YAML markup for location sounds.
2017-06-23 07:54:49 -04:00
Eric S. Raymond
44abab29e3
Toss unused parts of dungeon.c and init.c
2017-06-22 22:33:24 -04:00
Eric S. Raymond
6c6c72f327
Replace macros with condition bits.
2017-06-22 18:41:25 -04:00
Eric S. Raymond
51494657fd
Give the FORCED property a real cond bit. Delete some unused code.
2017-06-22 17:49:06 -04:00
Eric S. Raymond
7f7f49b739
Switch fully over to YAML generation of condition bits. COND is gone.
2017-06-22 17:28:39 -04:00
Eric S. Raymond
537c4511e2
Generate initializer from YAML for Section 9 bits.
2017-06-22 16:45:38 -04:00
Eric S. Raymond
94d1aa5183
Use YAML references to tie hints to locations.
...
This change makes locbit.py obsolete; it's deleted.
2017-06-22 14:27:22 -04:00
Jason S. Ninneman
3215930f64
Fixups to the adventure.yaml commentary.
2017-06-22 14:16:33 -04:00
Eric S. Raymond
e4b2877733
Location YAML now has conditions.
...
COND initionalization doesn't use these yet. That's the next step.
2017-06-22 11:59:41 -04:00
Eric S. Raymond
3f7a25cdf2
locbit.py: Can't set a FORCED attribute in the YAML...
...
...it has to be computed from the travel arrays.
2017-06-22 11:24:00 -04:00
Eric S. Raymond
b8c240f4b1
Repair a check file.
2017-06-22 11:14:42 -04:00
Eric S. Raymond
4aa006368d
Check in the tool for folding Section 9 COND bits into YAML.
...
Needs to be in the repo history for reference, though it won't
be manifest after the conversion.
We shouldn't actually apply this until the murk around FORCED has been
dispelled.
2017-06-22 09:46:09 -04:00
Eric S. Raymond
9c7c23b75a
Improve namespace hygiene.
2017-06-22 08:58:11 -04:00
Eric S. Raymond
6277b45d6b
Patch around non-working pillo bug fix.
2017-06-22 07:24:45 -04:00
Jason S. Ninneman
97241e87d7
Quick-fix the 'pillo bug'.
...
Once parsing no longer depends on text being broken up into
5-char tokens, the ugly hack to adventure.yaml must go away.
2017-06-21 22:43:16 -07:00
Eric S. Raymond
433e787de8
Simple fix for GitLab issue #14 : Behaviour of magic words changed
...
Say "Nothing happens" on "foo" not in Giant Room, rather than "What's
the matter, can't you read? Now you'd best start over." which only
makes sense there.
It would be funnier to say something like "Well, that was remarkably
pointless." Maybe later.
2017-06-21 17:23:28 -04:00
Eric S. Raymond
fd6da15373
Fix GitLab issue #13 - The "eat" command exhibits strange behavior
...
The problem wasn't actually with "eat" but with "grate". Processing
of any two-word command with an object of "grate", when given at certain
locations including the start, inappropriately jumped directly
to the movement code (ignoring the verb).
There was a similar bug in the ancestral 2.5, though it manifested slightly
differently.
2017-06-21 16:54:10 -04:00
Eric S. Raymond
6dbe6f081c
Revert "Test coverage - Almost all of score.c". It's breaking tests.
2017-06-21 16:43:27 -04:00
Eric S. Raymond
7ed1e95441
Revert "Test coverage - 100% score.c". It's breaking tests.
2017-06-21 16:37:59 -04:00
Aaron Traas
f4d3f6def9
Test coverage - 100% score.c
2017-06-21 15:12:53 -04:00
Aaron Traas
236abc8cab
Test coverage - Almost all of score.c
2017-06-21 15:04:41 -04:00
Aaron Traas
3c8530663d
xstrdup() not called anywhere in source. Removed.
2017-06-21 13:50:13 -04:00
Jason S. Ninneman
79ffdb36f0
Switch to 0-indexing for hint handling code.
2017-06-21 10:26:23 -07:00
Jason S. Ninneman
c8f6ff3701
Abolish HNTMAX and HNTSIZ in favor of HINT_COUNT.
...
This change necessitated include guards on newdb.h.
2017-06-21 10:25:12 -07:00
Peje Nilsson
deb61e3dcd
Replace SETPRM/[PR]SPEAK with variadic [pr]speak
...
Rename/rewrite old speak to vspeak and take a va_list
Add new speak that takes variadic parameters
Remove SETPRM & PARMS[]
2017-06-21 13:14:53 -04:00
David James Sherman
82f162dc32
Resolve GitLab issue #3 . Applies MISRA and CERT guidelines.
...
MISRA C++:2008, 2-13-4 - Literal suffixes shall be upper case
MISRA C:2012, 7.3 - The lowercase character "l" shall not be used in a
literal suffix
CERT DCL16-C. - Use "L," not "l," to indicate a long value
CERT DCL16-CPP. - Use "L," not "l," to indicate a long value
CERT, DCL50-J. - Use visually distinct identifiers
2017-06-21 13:14:53 -04:00
Aaron Traas
67ed99b29c
Test Coverage -- lots of new pieces of actions.c
2017-06-21 12:14:24 -04:00
Eric S. Raymond
22613f06fa
Documentation polishing.
2017-06-21 11:58:58 -04:00
Eric S. Raymond
c3a71f6db6
Documentation and polishing.
2017-06-21 11:45:16 -04:00
Eric S. Raymond
ddb0df85b3
YAMLify section 11 (hints).
2017-06-21 11:22:18 -04:00
Eric S. Raymond
b37f9f4b2d
Document the YAML, remove some dead code, fix typos.
2017-06-21 07:39:10 -04:00
Eric S. Raymond
f6373dd32e
Section 10 (class thresholds) is now parsed entirely from YAML.
2017-06-21 06:17:20 -04:00
Eric S. Raymond
e798355e80
Further code simplification.
2017-06-20 20:44:21 -04:00