Ticket #1424 (confirmed change)
Various issues with plural handling
| Reported by: | myshkin | Owned by: | myshkin |
|---|---|---|---|
| Milestone: | Future | Keywords: | cleanup |
| Cc: |
Description (last modified by myshkin) (diff)
Objects and monsters should have the same plural handling code. Monster pluralization should move to the edit file. While we're at it, fix Mumak/Mumakil and Craban/Crebain plurals.
Change History
comment:2 Changed 2 years ago by magnate
- Status changed from new to confirmed
- Milestone changed from 3.3.0 to Future
Punting in accordance with new milestone policy (that any other milestone is only set once someone is actually working on the ticket).
comment:3 Changed 2 years ago by magnate
There's also a pluraliser macro in monster1.c (and probably others - needs a grep for "plural").
comment:4 Changed 11 months ago by myshkin
Other plural issues:
- h-basic.h defines PLURAL(n), while monster/mon-lore.c defines plural(c, s, p). I assume the latter is the macro to which magnate refers.
- object/obj-util.c and wiz-stats.c call PLURAL(plural) to get an "s" or lack thereof for verb agreement. Here, plural is a bool. Since the PLURAL macro tests its argument against 1, that the macro works is quite difficult to see.
- monster/mon-lore.c fails to do the same convoluted dance with the "who remain%s unavenged" string in describe_monster_kills(), and so our grammar is wrong. Spotted by Derakon on oook.
- spells1.c:project_o() eschews these macros and rolls its own plural-handling code.
- cmd-obj.c:activation_message() also has some verb agreement code.
- The borg has some code for plurals as well.
Note: See
TracTickets for help on using
tickets.
