Zauber mit REGION als letztem Parameter beschwerten sich ueber fehlende
Parameter.
This commit is contained in:
Enno Rehling 2005-02-18 12:20:29 +00:00
parent 03b2543d30
commit c580b96da8
2 changed files with 92 additions and 80 deletions

View File

@ -1862,7 +1862,13 @@ add_spellparameter(region *target_r, unit *u, const char *syntax, char ** param,
int minlen = 0; int minlen = 0;
for (c=syntax;*c!=0;++c) { for (c=syntax;*c!=0;++c) {
if (*c!='+' && *c!='k') ++minlen; /* this makes sure that:
* minlen("kc?") = 0
* minlen("kc+") = 1
* minlen("cccc+c?") = 4
*/
if (*c=='?') --minlen;
else if (*c!='+' && *c!='k') ++minlen;
} }
c = syntax; c = syntax;
@ -1883,6 +1889,12 @@ add_spellparameter(region *target_r, unit *u, const char *syntax, char ** param,
param_t pword; param_t pword;
int j = -1; int j = -1;
switch (*c) { switch (*c) {
case '?':
/* tja. das sollte moeglichst nur am Ende passieren,
* weil sonst die kacke dampft. */
++c;
assert(*c==0);
break;
case '+': case '+':
/* das vorhergehende Element kommt ein oder mehrmals vor, wir /* das vorhergehende Element kommt ein oder mehrmals vor, wir
* springen zum key zurück */ * springen zum key zurück */

View File

@ -8041,7 +8041,7 @@ static spell spelldaten[] =
"ZAUBERE [REGION x y] [STUFE n] \'Geister bannen\' EINHEIT <Einheit-Nr>\n" "ZAUBERE [REGION x y] [STUFE n] \'Geister bannen\' EINHEIT <Einheit-Nr>\n"
"ZAUBERE [REGION x y] [STUFE n] \'Geister bannen\' GEBÄUDE <Gebäude-Nr>\n" "ZAUBERE [REGION x y] [STUFE n] \'Geister bannen\' GEBÄUDE <Gebäude-Nr>\n"
"ZAUBERE [REGION x y] [STUFE n] \'Geister bannen\' SCHIFF <Schiff-Nr>", "ZAUBERE [REGION x y] [STUFE n] \'Geister bannen\' SCHIFF <Schiff-Nr>",
"kc", "kc?",
M_DRUIDE, M_DRUIDE,
(FARCASTING | SPELLLEVEL | ONSHIPCAST | ONETARGET | TESTCANSEE), (FARCASTING | SPELLLEVEL | ONSHIPCAST | ONETARGET | TESTCANSEE),
2, 8, 2, 8,
@ -8522,7 +8522,7 @@ static spell spelldaten[] =
"ZAUBERE [REGION x y] [STUFE n] \'Pentagramm\' EINHEIT <Einheit-Nr>\n" "ZAUBERE [REGION x y] [STUFE n] \'Pentagramm\' EINHEIT <Einheit-Nr>\n"
"ZAUBERE [REGION x y] [STUFE n] \'Pentagramm\' GEBÄUDE <Gebäude-Nr>\n" "ZAUBERE [REGION x y] [STUFE n] \'Pentagramm\' GEBÄUDE <Gebäude-Nr>\n"
"ZAUBERE [REGION x y] [STUFE n] \'Pentagramm\' SCHIFF <Schiff-Nr>", "ZAUBERE [REGION x y] [STUFE n] \'Pentagramm\' SCHIFF <Schiff-Nr>",
"kc", "kc?",
M_CHAOS, M_CHAOS,
(FARCASTING | SPELLLEVEL | ONSHIPCAST | ONETARGET | TESTCANSEE), (FARCASTING | SPELLLEVEL | ONSHIPCAST | ONETARGET | TESTCANSEE),
2, 10, 2, 10,
@ -8877,7 +8877,7 @@ static spell spelldaten[] =
"ZAUBERE [REGION x y] [STUFE n] \'Traumbilder entwirren\' EINHEIT <Einheit-Nr>\n" "ZAUBERE [REGION x y] [STUFE n] \'Traumbilder entwirren\' EINHEIT <Einheit-Nr>\n"
"ZAUBERE [REGION x y] [STUFE n] \'Traumbilder entwirren\' GEBÄUDE <Gebäude-Nr>\n" "ZAUBERE [REGION x y] [STUFE n] \'Traumbilder entwirren\' GEBÄUDE <Gebäude-Nr>\n"
"ZAUBERE [REGION x y] [STUFE n] \'Traumbilder entwirren\' SCHIFF <Schiff-Nr>", "ZAUBERE [REGION x y] [STUFE n] \'Traumbilder entwirren\' SCHIFF <Schiff-Nr>",
"kc", "kc?",
M_TRAUM, M_TRAUM,
(FARCASTING | SPELLLEVEL | ONSHIPCAST | ONETARGET | TESTCANSEE), (FARCASTING | SPELLLEVEL | ONSHIPCAST | ONETARGET | TESTCANSEE),
2, 8, 2, 8,
@ -9354,7 +9354,7 @@ static spell spelldaten[] =
"ZAUBERE [STUFE n] \'Lied des Ortes analysieren\' REGION\n" "ZAUBERE [STUFE n] \'Lied des Ortes analysieren\' REGION\n"
"ZAUBERE [STUFE n] \'Lied des Ortes analysieren\' GEBÄUDE <Gebäude-nr>\n" "ZAUBERE [STUFE n] \'Lied des Ortes analysieren\' GEBÄUDE <Gebäude-nr>\n"
"ZAUBERE [STUFE n] \'Lied des Ortes analysieren\' SCHIFF <Schiff-nr>", "ZAUBERE [STUFE n] \'Lied des Ortes analysieren\' SCHIFF <Schiff-nr>",
"kc", "kc?",
M_BARDE, (SPELLLEVEL|ONSHIPCAST), 5, 8, M_BARDE, (SPELLLEVEL|ONSHIPCAST), 5, 8,
{ {
{ R_AURA, 3, SPC_LEVEL }, { R_AURA, 3, SPC_LEVEL },
@ -9374,7 +9374,7 @@ static spell spelldaten[] =
"ZAUBERE [REGION x y] [STUFE n] \'Lebenslied festigen\' EINHEIT <Einheit-Nr>\n" "ZAUBERE [REGION x y] [STUFE n] \'Lebenslied festigen\' EINHEIT <Einheit-Nr>\n"
"ZAUBERE [REGION x y] [STUFE n] \'Lebenslied festigen\' GEBÄUDE <Gebäude-Nr>\n" "ZAUBERE [REGION x y] [STUFE n] \'Lebenslied festigen\' GEBÄUDE <Gebäude-Nr>\n"
"ZAUBERE [REGION x y] [STUFE n] \'Lebenslied festigen\' SCHIFF <Schiff-Nr>", "ZAUBERE [REGION x y] [STUFE n] \'Lebenslied festigen\' SCHIFF <Schiff-Nr>",
"kc", "kc?",
M_BARDE, M_BARDE,
(FARCASTING | SPELLLEVEL | ONSHIPCAST | ONETARGET | TESTCANSEE), (FARCASTING | SPELLLEVEL | ONSHIPCAST | ONETARGET | TESTCANSEE),
2, 8, 2, 8,
@ -9612,7 +9612,7 @@ static spell spelldaten[] =
"ZAUBERE [STUFE n] \'Magie analysieren\' EINHEIT <Einheit-Nr>\n" "ZAUBERE [STUFE n] \'Magie analysieren\' EINHEIT <Einheit-Nr>\n"
"ZAUBERE [STUFE n] \'Magie analysieren\' GEBÄUDE <Gebäude-Nr>\n" "ZAUBERE [STUFE n] \'Magie analysieren\' GEBÄUDE <Gebäude-Nr>\n"
"ZAUBERE [STUFE n] \'Magie analysieren\' SCHIFF <Schiff-Nr>", "ZAUBERE [STUFE n] \'Magie analysieren\' SCHIFF <Schiff-Nr>",
"kc", "kc?",
M_ASTRAL, (SPELLLEVEL | UNITSPELL | ONSHIPCAST | TESTCANSEE), 5, 1, M_ASTRAL, (SPELLLEVEL | UNITSPELL | ONSHIPCAST | TESTCANSEE), 5, 1,
{ {
{ R_AURA, 1, SPC_LEVEL }, { R_AURA, 1, SPC_LEVEL },
@ -9830,7 +9830,7 @@ static spell spelldaten[] =
"ZAUBERE [REGION x y] [STUFE n] \'Magiefresser\' EINHEIT <Einheit-Nr>\n" "ZAUBERE [REGION x y] [STUFE n] \'Magiefresser\' EINHEIT <Einheit-Nr>\n"
"ZAUBERE [REGION x y] [STUFE n] \'Magiefresser\' GEBÄUDE <Gebäude-Nr>\n" "ZAUBERE [REGION x y] [STUFE n] \'Magiefresser\' GEBÄUDE <Gebäude-Nr>\n"
"ZAUBERE [REGION x y] [STUFE n] \'Magiefresser\' SCHIFF <Schiff-Nr>", "ZAUBERE [REGION x y] [STUFE n] \'Magiefresser\' SCHIFF <Schiff-Nr>",
"kc", "kc?",
M_ASTRAL, M_ASTRAL,
(FARCASTING | SPELLLEVEL | ONSHIPCAST | ONETARGET | TESTCANSEE), (FARCASTING | SPELLLEVEL | ONSHIPCAST | ONETARGET | TESTCANSEE),
2, 5, 2, 5,