* curse_type structs statt großem array.

* kompatibilitäts-array mit alten namen.
This commit is contained in:
Enno Rehling 2002-05-09 12:06:28 +00:00
parent b5e2fd8b36
commit dfa6fe7397
3 changed files with 357 additions and 371 deletions

View File

@ -759,374 +759,244 @@ write_skill(FILE * F, const curse * c)
* der wohl noch etwa %s Wochen andauert. * der wohl noch etwa %s Wochen andauert.
* %info, "Dieser Zauber blafalsel blub" * %info, "Dieser Zauber blafalsel blub"
*/ */
static curse_type cursedaten[MAXCURSE] =
{
/* struct's vom typ curse: */
{
"fogtrap",
CURSETYP_NORM, 0, (M_DURATION | M_VIGOUR),
"",
(cdesc_fun)cinfo_region
},
{
"antimagiczone",
CURSETYP_NORM, 0, (M_DURATION | M_VIGOUR),
"Dieser Zauber scheint magische Energien irgendwie abzuleiten und "
"so alle in der Region gezauberten Sprüche in ihrer Wirkung zu "
"schwächen oder ganz zu verhindern.",
NULL
},
{
"farvision",
CURSETYP_NORM, 0, (NO_MERGE),
"",
NULL
},
{
"gbdream",
CURSETYP_NORM, 0, (NO_MERGE),
"",
(cdesc_fun)cinfo_dreamcurse
},
{ /* Verändert die max Aura und Regeneration um effect% */ static struct curse_type ct_fogtrap = { "fogtrap",
"auraboost", CURSETYP_NORM, 0, (M_DURATION | M_VIGOUR),
CURSETYP_NORM, CURSE_SPREADMODULO, (NO_MERGE), "",
"Dieser Zauber greift irgendwie in die Verbindung zwischen Magier " cinfo_region
"und Magischer Essenz ein. Mit positiver Ausrichtung kann er wohl " };
"wie ein Fokus für Aura wirken, jedoch genauso für das Gegenteil " static struct curse_type ct_antimagiczone = { "antimagiczone",
"benutzt werden.", CURSETYP_NORM, 0, (M_DURATION | M_VIGOUR),
/* cinfo_auraboost */ "Dieser Zauber scheint magische Energien irgendwie abzuleiten und "
}, "so alle in der Region gezauberten Sprüche in ihrer Wirkung zu "
{ "schwächen oder ganz zu verhindern.",
"maelstrom", NULL
CURSETYP_NORM, 0, (M_DURATION | M_VIGOUR), };
"Dieser Zauber verursacht einen gigantischen magischen Strudel. Der " static struct curse_type ct_farvision = { "farvision",
"Mahlstrom wird alle Schiffe, die in seinen Sog geraten, schwer " CURSETYP_NORM, 0, (NO_MERGE),
"beschädigen.", "",
NULL NULL
}, };
{ static struct curse_type ct_gbdream = { "gbdream",
"blessedharvest", CURSETYP_NORM, 0, (NO_MERGE),
CURSETYP_NORM, 0, ( M_DURATION | M_VIGOUR ), "",
"Dieser Fruchtbarkeitszauber erhöht die Erträge der Felder.", cinfo_dreamcurse
(cdesc_fun)cinfo_region };
}, static struct curse_type ct_auraboost = { "auraboost",
{ CURSETYP_NORM, CURSE_SPREADMODULO, (NO_MERGE),
"drought", "Dieser Zauber greift irgendwie in die Verbindung zwischen Magier "
CURSETYP_NORM, 0, ( M_DURATION | M_VIGOUR ), "und Magischer Essenz ein. Mit positiver Ausrichtung kann er wohl "
"Dieser Zauber strahlt starke negative Energien aus. Warscheinlich " "wie ein Fokus für Aura wirken, jedoch genauso für das Gegenteil "
"ist er die Ursache der Dürre." , "benutzt werden."
(cdesc_fun)cinfo_region };
}, static struct curse_type ct_maelstrom = { "maelstrom",
{ CURSETYP_NORM, 0, (M_DURATION | M_VIGOUR),
"badlearn", "Dieser Zauber verursacht einen gigantischen magischen Strudel. Der "
CURSETYP_NORM, 0, ( M_DURATION | M_VIGOUR ), "Mahlstrom wird alle Schiffe, die in seinen Sog geraten, schwer "
"Dieser Zauber scheint die Ursache für die Schlaflosigkeit und " "beschädigen.",
"Mattigkeit zu sein, unter der die meisten Leute hier leiden und " NULL
"die dazu führt, das Lernen weniger Erfolg bringt. ", };
(cdesc_fun)cinfo_region static struct curse_type ct_blessedharvest = { "blessedharvest",
}, CURSETYP_NORM, 0, ( M_DURATION | M_VIGOUR ),
{ /* Sturmwind-Zauber, wirkt nur 1 Runde */ "Dieser Fruchtbarkeitszauber erhöht die Erträge der Felder.",
"stormwind", cinfo_region
CURSETYP_NORM, 0, NO_MERGE, };
"", static struct curse_type ct_drought = { "drought",
NULL CURSETYP_NORM, 0, ( M_DURATION | M_VIGOUR ),
}, "Dieser Zauber strahlt starke negative Energien aus. Warscheinlich "
{ /* Luftschiff-Zauber, wirkt nur 1 Runde */ "ist er die Ursache der Dürre." ,
"flyingship", cinfo_region
CURSETYP_NORM, 0, NO_MERGE, };
"", static struct curse_type ct_badlearn = { "badlearn",
NULL CURSETYP_NORM, 0, ( M_DURATION | M_VIGOUR ),
}, "Dieser Zauber scheint die Ursache für die Schlaflosigkeit und "
{ /* GünstigeWinde-Zauber */ "Mattigkeit zu sein, unter der die meisten Leute hier leiden und "
"nodrift", "die dazu führt, das Lernen weniger Erfolg bringt. ",
CURSETYP_NORM, 0, ( M_DURATION | M_VIGOUR ), cinfo_region
"Der Zauber auf diesem Schiff ist aus den elementaren Magien der Luft " };
"und des Wassers gebunden. Der dem Wasser verbundene Teil des Zaubers " static struct curse_type ct_stormwind = { "stormwind",
"läßt es leichter durch die Wellen gleiten und der der Luft verbundene " CURSETYP_NORM, 0, NO_MERGE,
"Teil scheint es vor widrigen Winden zu schützen.", "",
/* cinfo_shipnodrift */ NULL
}, };
{ /* Trübsal-Zauber */ static struct curse_type ct_flyingship = { "flyingship",
"depression", CURSETYP_NORM, 0, NO_MERGE,
CURSETYP_NORM, 0, ( M_DURATION | M_VIGOUR ), "",
"Wie schon zu vermuten war, sind der ewig graue Himmel und die " NULL
"depressive Stimmung in der Region nicht natürlich. Dieser Fluch " };
"hat sich wie ein bleiernes Tuch auf die Gemüter der Bevölkerung " static struct curse_type ct_nodrift = { "nodrift",
"gelegt und eh er nicht gebrochen oder verklungen ist, wird keiner " CURSETYP_NORM, 0, ( M_DURATION | M_VIGOUR ),
"sich an Gaukelleien erfreuen können.", "Der Zauber auf diesem Schiff ist aus den elementaren Magien der Luft "
(cdesc_fun)cinfo_region "und des Wassers gebunden. Der dem Wasser verbundene Teil des Zaubers "
}, "läßt es leichter durch die Wellen gleiten und der der Luft verbundene "
{ /* Heimstein-Zauber */ "Teil scheint es vor widrigen Winden zu schützen."
"magicwalls", };
CURSETYP_NORM, 0, NO_MERGE, static struct curse_type ct_depression = { "depression",
"Die Macht dieses Zaubers ist fast greifbar und tief in die Mauern " CURSETYP_NORM, 0, ( M_DURATION | M_VIGOUR ),
"gebunden. Starke elementarmagische Kräfte sind zu spüren. " "Wie schon zu vermuten war, sind der ewig graue Himmel und die "
"Vieleicht wurde gar ein Erdelementar in diese Mauern gebannt. " "depressive Stimmung in der Region nicht natürlich. Dieser Fluch "
"Ausser ebenso starkter Antimagie wird nichts je diese Mauern " "hat sich wie ein bleiernes Tuch auf die Gemüter der Bevölkerung "
"gefährden können.", "gelegt und eh er nicht gebrochen oder verklungen ist, wird keiner "
/* cinfo_magicstone */ "sich an Gaukelleien erfreuen können.",
}, cinfo_region
{ /* Feste Mauer - Präkampfzauber, wirkt nur 1 Runde */ };
"strongwall", static struct curse_type ct_magicwalls = { "magicwalls",
CURSETYP_NORM, 0, NO_MERGE, CURSETYP_NORM, 0, NO_MERGE,
"", "Die Macht dieses Zaubers ist fast greifbar und tief in die Mauern "
NULL "gebunden. Starke elementarmagische Kräfte sind zu spüren. "
}, "Vieleicht wurde gar ein Erdelementar in diese Mauern gebannt. "
{ /* Astralblock, auf Astralregion */ "Ausser ebenso starkter Antimagie wird nichts je diese Mauern "
"astralblock", "gefährden können."
CURSETYP_NORM, 0, NO_MERGE, };
"", static struct curse_type ct_strongwall = { "strongwall",
(cdesc_fun)cinfo_region CURSETYP_NORM, 0, NO_MERGE,
}, "",
{ /* Unterhaltungsanteil vermehren */ NULL
"generous", };
CURSETYP_NORM, 0, ( M_DURATION | M_VIGOUR | M_MAXEFFECT ), static struct curse_type ct_astralblock = { "astralblock",
"Dieser Zauber beeinflusst die allgemeine Stimmung in der Region positiv. " CURSETYP_NORM, 0, NO_MERGE,
"Die gute Laune macht die Leute freigiebiger.", "",
(cdesc_fun)cinfo_region cinfo_region
}, };
{ /* verhindert Attackiere regional */ static struct curse_type ct_generous = { "generous",
"peacezone", CURSETYP_NORM, 0, ( M_DURATION | M_VIGOUR | M_MAXEFFECT ),
CURSETYP_NORM, 0, NO_MERGE, "Dieser Zauber beeinflusst die allgemeine Stimmung in der Region positiv. "
"Dieser machtvoller Beeinflussungszauber erstickt jeden Streit schon im " "Die gute Laune macht die Leute freigiebiger.",
"Keim.", cinfo_region
(cdesc_fun)cinfo_region };
}, static struct curse_type ct_peacezone = { "peacezone",
{ /* erschwert geordnete Bewegungen */ CURSETYP_NORM, 0, NO_MERGE,
"disorientationzone", "Dieser machtvoller Beeinflussungszauber erstickt jeden Streit schon im "
CURSETYP_NORM, 0, NO_MERGE, "Keim.",
"", cinfo_region
(cdesc_fun)cinfo_region };
}, static struct curse_type ct_disorientationzone = { "disorientationzone",
{ /* erzeugt Straßennetz */ CURSETYP_NORM, 0, NO_MERGE,
"magicstreet", "",
CURSETYP_NORM, 0, (M_DURATION | M_VIGOUR), cinfo_region
"Es scheint sich um einen elementarmagischen Zauber zu handeln, der alle " };
"Pfade und Wege so gut festigt, als wären sie gepflastert. Wie auf einer " static struct curse_type ct_magicstreet = { "magicstreet",
"Straße kommt man so viel besser und schneller vorwärts.", CURSETYP_NORM, 0, (M_DURATION | M_VIGOUR),
/* cinfo_magicstreet */ "Es scheint sich um einen elementarmagischen Zauber zu handeln, der alle "
}, "Pfade und Wege so gut festigt, als wären sie gepflastert. Wie auf einer "
{ "Straße kommt man so viel besser und schneller vorwärts."
"magicrunes", };
CURSETYP_NORM, 0, M_SUMEFFECT, static struct curse_type ct_magicrunes = { "magicrunes",
"Dieses Zauber verstärkt die natürliche Widerstandskraft gegen eine " CURSETYP_NORM, 0, M_SUMEFFECT,
"Verzauberung.", "Dieses Zauber verstärkt die natürliche Widerstandskraft gegen eine "
/* cinfo_magicrunes */ "Verzauberung."
}, };
{ /* erniedigt Magieresistenz von nicht-aliierten Einheiten, wirkt nur static struct curse_type ct_badmagicresistancezone = { "badmagicresistancezone",
1x pro Einheit */ CURSETYP_NORM, 0, NO_MERGE,
"badmagicresistancezone", "Dieses Lied, das irgendwie in die magische Essenz der Region gewoben "
CURSETYP_NORM, 0, NO_MERGE, "ist, schwächt die natürliche Widerstandskraft gegen eine "
"Dieses Lied, das irgendwie in die magische Essenz der Region gewoben " "Verzauberung. Es scheint jedoch nur auf bestimmte Einheiten zu wirken.",
"ist, schwächt die natürliche Widerstandskraft gegen eine " NULL
"Verzauberung. Es scheint jedoch nur auf bestimmte Einheiten zu wirken.", };
NULL static struct curse_type ct_goodmagicresistancezone = { "goodmagicresistancezone",
}, CURSETYP_NORM, 0, NO_MERGE,
{ /* erhöht Magieresistenz von aliierten Einheiten, wirkt nur 1x pro "Dieser Lied, das irgendwie in die magische Essenz der Region gewoben "
Einheit */ "ist, verstärkt die natürliche Widerstandskraft gegen eine "
"goodmagicresistancezone", "Verzauberung. Es scheint jedoch nur auf bestimmte Einheiten zu wirken.",
CURSETYP_NORM, 0, NO_MERGE, NULL
"Dieser Lied, das irgendwie in die magische Essenz der Region gewoben " };
"ist, verstärkt die natürliche Widerstandskraft gegen eine " static struct curse_type ct_slavery = { "slavery",
"Verzauberung. Es scheint jedoch nur auf bestimmte Einheiten zu wirken.", CURSETYP_NORM, 0, NO_MERGE,
NULL "Dieser mächtige Bann scheint die Einheit ihres freien Willens "
}, "zu berauben. Solange der Zauber wirkt, wird sie nur den Befehlen "
{ /* dient fremder Partei. Zählt nicht zu Migranten, attackiert nicht */ "ihres neuen Herrn gehorchen."
"slavery", };
CURSETYP_NORM, 0, NO_MERGE, static struct curse_type ct_shipdisorientation = { "shipdisorientation",
"Dieser mächtige Bann scheint die Einheit ihres freien Willens " CURSETYP_NORM, 0, NO_MERGE,
"zu berauben. Solange der Zauber wirkt, wird sie nur den Befehlen " "Dieses Schiff hat sich verfahren."
"ihres neuen Herrn gehorchen.", };
/* cinfo_slave */ static struct curse_type ct_calmmonster = { "calmmonster",
}, CURSETYP_NORM, CURSE_SPREADNEVER, NO_MERGE,
{ "Dieser Beeinflussungszauber scheint die Einheit einem ganz "
"shipdisorientation", "bestimmten Volk wohlgesonnen zu machen."
CURSETYP_NORM, 0, NO_MERGE, };
"Dieses Schiff hat sich verfahren.", static struct curse_type ct_oldrace = { "oldrace",
/* cinfo_disorientation */ CURSETYP_NORM, CURSE_SPREADALWAYS, NO_MERGE,
}, "",
{ NULL
"calmmonster", };
CURSETYP_NORM, CURSE_SPREADNEVER, NO_MERGE, static struct curse_type ct_fumble = { "fumble",
"Dieser Beeinflussungszauber scheint die Einheit einem ganz " CURSETYP_NORM, CURSE_SPREADNEVER, NO_MERGE,
"bestimmten Volk wohlgesonnen zu machen.", "Eine Wolke negativer Energie umgibt die Einheit."
/* cinfo_calm */ };
}, static struct curse_type ct_riotzone = { "riotzone",
{ /* Merkt sich die alte 'richtige' Rasse einer gestalltwandelnden CURSETYP_NORM, 0, (M_DURATION),
Einheit */ "Eine Wolke negativer Energie liegt über der Region.",
"oldrace", cinfo_region
CURSETYP_NORM, CURSE_SPREADALWAYS, NO_MERGE, };
"", static struct curse_type ct_nocostbuilding = { "nocostbuilding",
NULL CURSETYP_NORM, 0, NO_MERGE,
}, "Die Macht dieses Zaubers ist fast greifbar und tief in die Mauern "
{ "gebunden. Unbeeindruck vom Zahn der Zeit wird dieses Gebäude wohl "
"fumble", "auf Ewig stehen.",
CURSETYP_NORM, CURSE_SPREADNEVER, NO_MERGE, cinfo_region
"Eine Wolke negativer Energie umgibt die Einheit.", };
/* cinfo_fumble */ static struct curse_type ct_holyground = { "holyground",
}, CURSETYP_NORM, 0, (M_VIGOUR_ADD),
{ "Verschiedene Naturgeistern sind im Boden der Region gebunden und "
"riotzone", "beschützen diese vor dem der dunklen Magie des lebenden Todes.",
CURSETYP_NORM, 0, (M_DURATION), cinfo_region
"Eine Wolke negativer Energie liegt über der Region.", };
(cdesc_fun)cinfo_region static struct curse_type ct_godcursezone = { "godcursezone",
}, CURSETYP_NORM, 0, (NO_MERGE),
{ /* Ewige Mauern-Zauber */ "Diese Region wurde von den Göttern verflucht. Stinkende Nebel ziehen "
"nocostbuilding", "über die tote Erde, furchbare Kreaturen ziehen über das Land. Die Brunnen "
CURSETYP_NORM, 0, NO_MERGE, "sind vergiftet, und die wenigen essbaren Früchte sind von einem rosa Pilz "
"Die Macht dieses Zaubers ist fast greifbar und tief in die Mauern " "überzogen. Niemand kann hier lange überleben."
"gebunden. Unbeeindruck vom Zahn der Zeit wird dieses Gebäude wohl " };
"auf Ewig stehen.", static struct curse_type ct_speed = { "speed",
(cdesc_fun)cinfo_region CURSETYP_UNIT, CURSE_SPREADNEVER, M_MEN,
}, "Diese Einheit bewegt sich doppelt so schnell."
{ };
"holyground", static struct curse_type ct_orcish = { "orcish",
CURSETYP_NORM, 0, (M_VIGOUR_ADD), CURSETYP_UNIT, CURSE_SPREADMODULO, M_MEN,
"Verschiedene Naturgeistern sind im Boden der Region gebunden und " "Dieser Zauber scheint die Einheit zu 'orkisieren'. Wie bei Orks "
"beschützen diese vor dem der dunklen Magie des lebenden Todes.", "ist eine deutliche Neigung zur Fortpflanzung zu beobachten."
(cdesc_fun)cinfo_region };
}, static struct curse_type ct_magicboost = { "magicboost",
{ CURSETYP_UNIT, CURSE_SPREADMODULO, M_MEN,
"godcursezone", "",
CURSETYP_NORM, 0, (NO_MERGE), NULL
"Diese Region wurde von den Göttern verflucht. Stinkende Nebel ziehen " };
"über die tote Erde, furchbare Kreaturen ziehen über das Land. Die Brunnen " static struct curse_type ct_insectfur = { "insectfur",
"sind vergiftet, und die wenigen essbaren Früchte sind von einem rosa Pilz " CURSETYP_UNIT, CURSE_SPREADMODULO, ( M_MEN | M_DURATION ),
"überzogen. Niemand kann hier lange überleben.", "Dieser Zauber schützt vor den Auswirkungen der Kälte."
/* cinfo_cursed_by_the_gods, */ };
}, static struct curse_type ct_strength = { "strength",
{ CURSETYP_UNIT, CURSE_SPREADMODULO, M_MEN,
"", "Dieser Zauber vermehrt die Stärke der verzauberten Personen um ein "
CURSETYP_NORM, 0, (NO_MERGE), "vielfaches."
"", };
NULL static struct curse_type ct_worse = { "worse",
}, CURSETYP_UNIT, CURSE_SPREADMODULO, M_MEN,
{ ""
"", };
CURSETYP_NORM, 0, (NO_MERGE), static struct curse_type ct_magicresistance = { "magicresistance",
"", CURSETYP_UNIT, CURSE_SPREADMODULO, M_MEN,
NULL "Dieser Zauber verstärkt die natürliche Widerstandskraft gegen eine "
}, "Verzauberung.",
{ NULL
"", };
CURSETYP_NORM, 0, (NO_MERGE), static struct curse_type ct_itemcloak = { "itemcloak",
"", CURSETYP_UNIT, CURSE_SPREADNEVER, M_DURATION,
NULL "Dieser Zauber macht die Ausrüstung unsichtbar."
}, };
{ static struct curse_type ct_sparkle = { "sparkle",
"", CURSETYP_UNIT, CURSE_SPREADMODULO, ( M_MEN | M_DURATION ),
CURSETYP_NORM, 0, (NO_MERGE), "Dieser Zauber ist einer der ersten, den junge Magier in der Schule lernen."
"", };
NULL static struct curse_type ct_skillmod = { "skillmod",
}, CURSETYP_NORM, CURSE_SPREADMODULO, M_MEN,
{ "",
"", cinfo_skill,
CURSETYP_NORM, 0, (NO_MERGE), NULL, NULL,
"", read_skill, write_skill
NULL
},
{
"",
CURSETYP_NORM, 0, (NO_MERGE),
"",
NULL
},
/* struct's vom typ curse_unit: */
{
"speed",
CURSETYP_UNIT, CURSE_SPREADNEVER, M_MEN,
"Diese Einheit bewegt sich doppelt so schnell.",
/* cinfo_speed */
},
{
"orcish",
CURSETYP_UNIT, CURSE_SPREADMODULO, M_MEN,
"Dieser Zauber scheint die Einheit zu 'orkisieren'. Wie bei Orks "
"ist eine deutliche Neigung zur Fortpflanzung zu beobachten.",
/* cinfo_orc */
},
{
"magicboost",
CURSETYP_UNIT, CURSE_SPREADMODULO, M_MEN,
"",
NULL
},
{
"insectfur",
CURSETYP_UNIT, CURSE_SPREADMODULO, ( M_MEN | M_DURATION ),
"Dieser Zauber schützt vor den Auswirkungen der Kälte.",
/* cinfo_kaelteschutz */
},
{ /* */
"strength",
CURSETYP_UNIT, CURSE_SPREADMODULO, M_MEN,
"Dieser Zauber vermehrt die Stärke der verzauberten Personen um ein "
"vielfaches.",
/* cinfo_strength */
},
{ /* Alp */
"worse",
CURSETYP_UNIT, CURSE_SPREADMODULO, M_MEN,
"",
/* cinfo_allskills */
},
{ /* */
"magicresistance",
CURSETYP_UNIT, CURSE_SPREADMODULO, M_MEN,
"Dieser Zauber verstärkt die natürliche Widerstandskraft gegen eine "
"Verzauberung.",
NULL
},
{ /* */
"itemcloak",
CURSETYP_UNIT, CURSE_SPREADNEVER, M_DURATION,
"Dieser Zauber macht die Ausrüstung unsichtbar.",
/* cinfo_itemcloak */
},
{ /* */
"sparkle",
CURSETYP_UNIT, CURSE_SPREADMODULO, ( M_MEN | M_DURATION ),
"Dieser Zauber ist einer der ersten, den junge Magier in der Schule lernen.",
/* cinfo_sparkle */
},
{
"",
CURSETYP_UNIT, 0, (NO_MERGE),
"",
NULL
},
{
"",
CURSETYP_UNIT, 0, (NO_MERGE),
"",
NULL
},
{
"",
CURSETYP_UNIT, 0, (NO_MERGE),
"",
NULL
},
/* struct's vom typ curse_skill: */
{
"skillmod",
CURSETYP_NORM, CURSE_SPREADMODULO, M_MEN,
"",
/* cinfo_skill, */
NULL, NULL, /* void (*change_vigour)(curse*, int); */
read_skill, write_skill
}
}; };
const char *
oldcursename(int id)
{
return cursedaten[id].cname;
}
void * void *
resolve_curse(void * id) resolve_curse(void * id)
@ -1138,7 +1008,107 @@ void
register_curses(void) register_curses(void)
{ {
int i; int i;
for (i=0;i!=MAXCURSE;++i) { ct_register(&ct_fogtrap);
if (strlen(cursedaten[i].cname)) ct_register(&cursedaten[i]); ct_register(&ct_antimagiczone);
} ct_register(&ct_farvision);
ct_register(&ct_gbdream);
ct_register(&ct_auraboost);
ct_register(&ct_maelstrom);
ct_register(&ct_blessedharvest);
ct_register(&ct_drought);
ct_register(&ct_badlearn);
ct_register(&ct_stormwind);
ct_register(&ct_flyingship);
ct_register(&ct_nodrift);
ct_register(&ct_depression);
ct_register(&ct_magicwalls);
ct_register(&ct_strongwall);
ct_register(&ct_astralblock);
ct_register(&ct_generous);
ct_register(&ct_peacezone);
ct_register(&ct_disorientationzone);
ct_register(&ct_magicstreet);
ct_register(&ct_magicrunes);
ct_register(&ct_badmagicresistancezone);
ct_register(&ct_goodmagicresistancezone);
ct_register(&ct_slavery);
ct_register(&ct_shipdisorientation);
ct_register(&ct_calmmonster);
ct_register(&ct_oldrace);
ct_register(&ct_fumble);
ct_register(&ct_riotzone);
ct_register(&ct_nocostbuilding);
ct_register(&ct_holyground);
ct_register(&ct_godcursezone);
ct_register(&ct_speed);
ct_register(&ct_orcish);
ct_register(&ct_magicboost);
ct_register(&ct_insectfur);
ct_register(&ct_strength);
ct_register(&ct_worse);
ct_register(&ct_magicresistance);
ct_register(&ct_itemcloak);
ct_register(&ct_sparkle);
ct_register(&ct_skillmod);
}
static const char * oldnames[MAXCURSE] = {
"fogtrap",
"antimagiczone",
"farvision",
"gbdream",
"auraboost",
"maelstrom",
"blessedharvest",
"drought",
"badlearn",
"stormwind",
"flyingship",
"nodrift",
"depression",
"magicwalls",
"strongwall",
"astralblock",
"generous",
"peacezone",
"disorientationzone",
"magicstreet",
"magicrunes",
"badmagicresistancezone",
"goodmagicresistancezone",
"slavery",
"shipdisorientation",
"calmmonster",
"oldrace",
"fumble",
"riotzone",
"nocostbuilding",
"holyground",
"godcursezone",
"",
"",
"",
"",
"",
"",
"speed",
"orcish",
"magicboost",
"insectfur",
"strength",
"worse",
"magicresistance",
"itemcloak",
"sparkle",
"",
"",
"",
"skillmod"
};
const char *
oldcursename(int id)
{
return oldnames[id];
} }

View File

@ -19,11 +19,11 @@
#include <stdio.h> #include <stdio.h>
#include "attrib.h" #include "attrib.h"
typedef struct { typedef struct obj_ID {
int a, b; int a, b;
} obj_ID; } obj_ID;
typedef enum { typedef enum typ_t {
TYP_UNIT, TYP_UNIT,
TYP_REGION, TYP_REGION,
TYP_BUILDING, TYP_BUILDING,

View File

@ -90,12 +90,24 @@ SOURCE=.\alp.h
# End Source File # End Source File
# Begin Source File # Begin Source File
SOURCE=.\buildingcurse.h
# End Source File
# Begin Source File
SOURCE=.\regioncurse.h SOURCE=.\regioncurse.h
# End Source File # End Source File
# Begin Source File # Begin Source File
SOURCE=.\shipcurse.h
# End Source File
# Begin Source File
SOURCE=.\spells.h SOURCE=.\spells.h
# End Source File # End Source File
# Begin Source File
SOURCE=.\unitcurse.h
# End Source File
# End Group # End Group
# Begin Source File # Begin Source File
@ -103,6 +115,10 @@ SOURCE=.\alp.c
# End Source File # End Source File
# Begin Source File # Begin Source File
SOURCE=.\buildingcurse.c
# End Source File
# Begin Source File
SOURCE=.\regioncurse.c SOURCE=.\regioncurse.c
# End Source File # End Source File
# Begin Source File # Begin Source File