diff options
author | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2007-03-27 10:10:54 +0000 |
---|---|---|
committer | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2007-03-27 10:10:54 +0000 |
commit | 60fbdba8e40f40ac6e1a497210a2fd4f6ac7dfaf (patch) | |
tree | 095b4b1332d4ed13b4d8394dacaf503b251f5944 /crawl-ref/source/util/levcomp.lpp | |
parent | 32c2060ed01ea4a574673cc613e066d63aa407ff (diff) | |
download | crawl-ref-60fbdba8e40f40ac6e1a497210a2fd4f6ac7dfaf.tar.gz crawl-ref-60fbdba8e40f40ac6e1a497210a2fd4f6ac7dfaf.zip |
Allow SUBST and SHUFFLE specs to be comma-separated.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1109 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/util/levcomp.lpp')
-rw-r--r-- | crawl-ref/source/util/levcomp.lpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/crawl-ref/source/util/levcomp.lpp b/crawl-ref/source/util/levcomp.lpp index 4cec4b80df..02ad9c2100 100644 --- a/crawl-ref/source/util/levcomp.lpp +++ b/crawl-ref/source/util/levcomp.lpp @@ -51,7 +51,7 @@ static void settext() %s ARGUMENT %s MNAME %s KEYWORDS -%s ITEM_LIST +%x ITEM_LIST %option yylineno %option never-interactive @@ -81,7 +81,12 @@ NSPACE [^\ \t\r\n] <KEYWORDS>[ \t]+ ; <KEYWORDS>[ \t]*\r?\n { BEGIN(INITIAL); } -<ITEM_LIST>[^, \t\r\n][^,\r\n]+[^, \t\r\n] { +<ITEM_LIST>[^, \t\r\n][^,\r\n]*[^, \t\r\n] { + settext(); + return ITEM_INFO; + } + +<ITEM_LIST>[^, \t\r\n] { settext(); return ITEM_INFO; } @@ -121,10 +126,10 @@ PLACE: { BEGIN(ARGUMENT); return PLACE; } CHANCE: return CHANCE; FLAGS: return FLAGS; TAGS: { BEGIN(KEYWORDS); return TAGS; } -SUBST: { BEGIN(ARGUMENT); return SUBST; } +SUBST: { BEGIN(ITEM_LIST); return SUBST; } MONS: { BEGIN(MNAME); return MONS; } ITEM: { BEGIN(ITEM_LIST); return ITEM; } -SHUFFLE: { BEGIN(ARGUMENT); return SHUFFLE; } +SHUFFLE: { BEGIN(ITEM_LIST); return SHUFFLE; } KFEAT: { BEGIN(ARGUMENT); return KFEAT; } KITEM: { BEGIN(ARGUMENT); return KITEM; } |