fix buildingspells teil 1

This commit is contained in:
Katja Zedel 2002-05-11 17:08:54 +00:00
parent 3f075092a1
commit 8ab0c0cb13
3 changed files with 36 additions and 31 deletions

View File

@ -731,6 +731,9 @@ print_curses(FILE *F, const faction *viewer, const void * obj, typ_t typ, int in
if (fval(a->type, ATF_CURSE)) { if (fval(a->type, ATF_CURSE)) {
curse *c = (curse *)a->data.v; curse *c = (curse *)a->data.v;
if (c->type->curseinfo) if (c->type->curseinfo)
if (c->type->cansee){
self = c->type->cansee(viewer, obj, typ, c, self);
}
dh = c->type->curseinfo(viewer->locale, obj, typ, c, self); dh = c->type->curseinfo(viewer->locale, obj, typ, c, self);
if (dh == 1) { if (dh == 1) {
rnl(F); rnl(F);

View File

@ -687,32 +687,6 @@ is_cursed_with(attrib *ap, curse *c)
* int (*write)(FILE * F, const curse * c); * int (*write)(FILE * F, const curse * c);
* } curse_type; * } curse_type;
*/ */
static struct curse_type ct_magicwalls = { "magicwalls",
CURSETYP_NORM, 0, NO_MERGE,
"Die Macht dieses Zaubers ist fast greifbar und tief in die Mauern "
"gebunden. Starke elementarmagische Kräfte sind zu spüren. "
"Vieleicht wurde gar ein Erdelementar in diese Mauern gebannt. "
"Ausser ebenso starkter Antimagie wird nichts je diese Mauern "
"gefährden können."
};
static struct curse_type ct_strongwall = { "strongwall",
CURSETYP_NORM, 0, NO_MERGE,
"",
NULL
};
static struct curse_type ct_magicrunes = { "magicrunes",
CURSETYP_NORM, 0, M_SUMEFFECT,
"Dieses Zauber verstärkt die natürliche Widerstandskraft gegen eine "
"Verzauberung."
};
static struct curse_type ct_nocostbuilding = { "nocostbuilding",
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 "
"auf Ewig stehen.",
cinfo_region
};
void * void *
resolve_curse(void * id) resolve_curse(void * id)
@ -727,11 +701,6 @@ register_curses(void)
register_regioncurse(); register_regioncurse();
register_shipcurse(); register_shipcurse();
register_buildingcurse(); register_buildingcurse();
ct_register(&ct_magicwalls);
ct_register(&ct_strongwall);
ct_register(&ct_magicrunes);
ct_register(&ct_nocostbuilding);
} }

View File

@ -78,10 +78,43 @@ cinfo_magicrunes(void * obj, typ_t typ, curse *c, int self)
return 0; return 0;
} }
static struct curse_type ct_magicrunes = { "magicrunes",
CURSETYP_NORM, 0, M_SUMEFFECT,
"Dieses Zauber verstärkt die natürliche Widerstandskraft gegen eine "
"Verzauberung.",
cinfo_magicrunes
};
static struct curse_type ct_magicwalls = { "magicwalls",
CURSETYP_NORM, 0, NO_MERGE,
"Die Macht dieses Zaubers ist fast greifbar und tief in die Mauern "
"gebunden. Starke elementarmagische Kräfte sind zu spüren. "
"Vieleicht wurde gar ein Erdelementar in diese Mauern gebannt. "
"Ausser ebenso starkter Antimagie wird nichts je diese Mauern "
"gefährden können.",
cinfo_building
};
static struct curse_type ct_strongwall = { "strongwall",
CURSETYP_NORM, 0, NO_MERGE,
"",
cinfo_building
};
static struct curse_type ct_nocostbuilding = { "nocostbuilding",
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 "
"auf Ewig stehen.",
cinfo_building
};
void void
register_buildingcurse(void) register_buildingcurse(void)
{ {
register_function((pf_generic)cinfo_magicrunes, "curseinfo::magicrunes"); register_function((pf_generic)cinfo_magicrunes, "curseinfo::magicrunes");
ct_register(&ct_magicwalls);
ct_register(&ct_strongwall);
ct_register(&ct_magicrunes);
ct_register(&ct_nocostbuilding);
} }