suggested booktribute mods
Changes to be committed: modified: include/extern.h modified: src/files.c modified: src/objects.c modified: src/spell.c - charge a little more. - no free read in the bookstore.
This commit is contained in:
@@ -753,7 +753,7 @@ E void NDECL(really_close);
|
||||
#ifdef DEBUG
|
||||
E boolean FDECL(showdebug, (const char *));
|
||||
#endif
|
||||
E void FDECL(read_tribute, (const char *,const char *,int));
|
||||
E boolean FDECL(read_tribute, (const char *,const char *,int));
|
||||
|
||||
/* ### fountain.c ### */
|
||||
|
||||
|
||||
17
src/files.c
17
src/files.c
@@ -3331,13 +3331,17 @@ const char *filename;
|
||||
|
||||
/* ---------- BEGIN TRIBUTE ----------- */
|
||||
|
||||
/* 3.6 tribute code */
|
||||
/* 3.6 tribute code
|
||||
*
|
||||
* Returns TRUE if you were able to read something.
|
||||
*
|
||||
*/
|
||||
|
||||
#define SECTIONSCOPE 1
|
||||
#define TITLESCOPE 2
|
||||
#define PASSAGESCOPE 3
|
||||
|
||||
void
|
||||
boolean
|
||||
read_tribute(tribsection, tribtitle, tribpassage)
|
||||
const char *tribsection, *tribtitle;
|
||||
int tribpassage;
|
||||
@@ -3351,12 +3355,13 @@ int tribpassage;
|
||||
const char *badtranslation = "an incomprehensible foreign translation";
|
||||
boolean matchedsection = FALSE, matchedtitle = FALSE;
|
||||
winid tribwin = WIN_ERR;
|
||||
boolean grasped = FALSE;
|
||||
|
||||
/* check for mandatories */
|
||||
if (!tribsection || !tribtitle) {
|
||||
pline("It's %s of \"%s\"!",
|
||||
badtranslation, tribtitle);
|
||||
return;
|
||||
return grasped;
|
||||
}
|
||||
|
||||
debugpline3("read_tribute %s, %s, %d.", tribsection, tribtitle, tribpassage);
|
||||
@@ -3365,7 +3370,7 @@ int tribpassage;
|
||||
if (!fp) {
|
||||
/* this is actually an error - cannot open tribute file! */
|
||||
pline("You feel too overwhelmed to continue!");
|
||||
return;
|
||||
return grasped;
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -3465,13 +3470,13 @@ cleanup:
|
||||
display_nhwindow(tribwin, FALSE);
|
||||
destroy_nhwindow(tribwin);
|
||||
tribwin = WIN_ERR;
|
||||
u.uconduct.literate++;
|
||||
grasped = TRUE;
|
||||
} else {
|
||||
pline("It seems to be %s of \"%s\"!",
|
||||
badtranslation, tribtitle);
|
||||
}
|
||||
|
||||
return;
|
||||
return grasped;
|
||||
}
|
||||
/* ---------- END TRIBUTE ----------- */
|
||||
|
||||
|
||||
@@ -829,7 +829,7 @@ SPELL("freeze sphere", "hardcover", P_MATTER_SPELL, 20, 2, 1, 1, NODIR, CLR
|
||||
SPELL("blank paper", "plain", P_NONE, 18, 0, 0, 0, 0, HI_PAPER),
|
||||
/* tribute book for 3.6 */
|
||||
OBJECT(OBJ("novel", "paperback"), BITS(0,0,1,0,0,0,0,1,0,0,0,P_NONE,HI_PAPER), 0,
|
||||
SPBOOK_CLASS, 0, 0, 0, 1, 0, 0, 0, 1, 20, CLR_BRIGHT_BLUE),
|
||||
SPBOOK_CLASS, 0, 0, 0, 20, 0, 0, 0, 1, 20, CLR_BRIGHT_BLUE),
|
||||
/* a special, one of a kind, spellbook */
|
||||
OBJECT(OBJ("Book of the Dead", "papyrus"), BITS(0,0,1,0,1,0,1,1,0,0,0,P_NONE,PAPER), 0,
|
||||
SPBOOK_CLASS, 0, 0,20, 10000, 0, 0, 0, 7, 20, HI_PAPER),
|
||||
|
||||
@@ -452,10 +452,12 @@ register struct obj *spellbook;
|
||||
|
||||
/* 3.6.0 tribute */
|
||||
if (booktype == SPE_NOVEL) {
|
||||
/* Obtain current Terry Pratchett book
|
||||
title for the current game. */
|
||||
/* Obtain current Terry Pratchett book title */
|
||||
const char *tribtitle = noveltitle(&spellbook->novelidx);
|
||||
read_tribute("books", tribtitle, 0);
|
||||
if (read_tribute("books", tribtitle, 0)) {
|
||||
u.uconduct.literate++;
|
||||
check_unpaid(spellbook);
|
||||
}
|
||||
return(1);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user