forked from github/server
new datafile version: spell names are now unique (or will be soon), and writing the magic school with each is irrelevant.
This commit is contained in:
parent
db7ed24b3e
commit
f45a494277
|
@ -344,7 +344,7 @@ sc_mage *get_mage(const unit * u)
|
|||
static int read_seenspell(attrib * a, void *owner, struct storage *store)
|
||||
{
|
||||
int i;
|
||||
spell *sp = NULL;
|
||||
spell *sp = 0;
|
||||
char token[32];
|
||||
|
||||
store->r_tok_buf(store, token, sizeof(token));
|
||||
|
@ -352,11 +352,12 @@ static int read_seenspell(attrib * a, void *owner, struct storage *store)
|
|||
if (i != 0) {
|
||||
sp = find_spellbyid((unsigned int) i);
|
||||
} else {
|
||||
int mtype;
|
||||
mtype = store->r_int(store);
|
||||
if (store->version<UNIQUE_SPELLS_VERSION) {
|
||||
store->r_int(store); /* ignore mtype */
|
||||
}
|
||||
sp = find_spell(token);
|
||||
if (!sp) {
|
||||
log_error("read_seenspell: could not find spell '%s' in school '%s'\n", token, magic_school[mtype]);
|
||||
log_error("read_seenspell: could not find spell '%s'\n", token);
|
||||
}
|
||||
}
|
||||
if (!sp) {
|
||||
|
@ -371,7 +372,6 @@ write_seenspell(const attrib * a, const void *owner, struct storage *store)
|
|||
{
|
||||
const spell *sp = (const spell *)a->data.v;
|
||||
store->w_tok(store, sp->sname);
|
||||
store->w_int(store, sp->magietyp);
|
||||
}
|
||||
|
||||
attrib_type at_seenspell = {
|
||||
|
@ -423,7 +423,7 @@ static boolean has_spell(quicklist * ql, const spell * sp)
|
|||
}
|
||||
|
||||
/** update the spellbook with a new level
|
||||
* Written for Eressea 1.1
|
||||
* Written for E3
|
||||
*/
|
||||
void update_spellbook(faction * f, int level)
|
||||
{
|
||||
|
|
|
@ -158,13 +158,15 @@ typedef struct sc_mage {
|
|||
char *sname;
|
||||
char *syntax;
|
||||
char *parameter;
|
||||
magic_t magietyp;
|
||||
int sptyp;
|
||||
int rank; /* Reihenfolge der Zauber */
|
||||
int level; /* Stufe des Zaubers */
|
||||
struct spell_component *components;
|
||||
spell_f cast;
|
||||
fumble_f patzer;
|
||||
|
||||
/* this is not so much the spell's data, but the school's studying data */
|
||||
magic_t magietyp;
|
||||
int level; /* Stufe des Zaubers */
|
||||
} spell;
|
||||
|
||||
/* ------------------------------------------------------------- */
|
||||
|
|
|
@ -67,6 +67,7 @@
|
|||
#define FOSS_VERSION 336 /* the open source release */
|
||||
#define OWNER_2_VERSION 337 /* region owners contain an alliance */
|
||||
#define FIX_WATCHERS_VERSION 338 /* fixed storage of watchers */
|
||||
#define UNIQUE_SPELLS_VERSION 339 /* turn 775, spell names are now unique globally, not just per school */
|
||||
|
||||
#define MIN_VERSION CURSETYPE_VERSION /* minimal datafile we support */
|
||||
#define RELEASE_VERSION FIX_WATCHERS_VERSION /* current datafile */
|
||||
#define RELEASE_VERSION UNIQUE_SPELLS_VERSION /* current datafile */
|
||||
|
|
Loading…
Reference in New Issue