ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/include/book.h
Revision: 1.10
Committed: Thu Oct 15 16:00:37 2009 UTC (14 years, 7 months ago) by sf-marcmagus
Content type: text/plain
Branch: MAIN
Changes since 1.9: +1 -1 lines
Log Message:
Add inscribable arches for other book types.
Use 'container'/weight_limit to define capacity of inscribables in characters.
Add treasures/arches to specify books with/without text.
Scorn and Navar Public Libraries use these so they don't generate inscribables.
Fix bug allowing theft of blank books from libraries.
Fix bug preventing adding an adjective to a book name if the titles are used up.
Change error message on reading empty book to be more clear.
Change error message on failed inscription [too much text] to be more informative.
Looking at an inscribable will tell you what you can do with it/what its capacity is in a hint.
Fix broken debug statements in book generation.

File Contents

# Content
1 /*
2 * This file is part of Deliantra, the Roguelike Realtime MMORPG.
3 *
4 * Copyright (©) 2005,2006,2007,2008 Marc Alexander Lehmann / Robin Redeker / the Deliantra team
5 *
6 * Deliantra is free software: you can redistribute it and/or modify it under
7 * the terms of the Affero GNU General Public License as published by the
8 * Free Software Foundation, either version 3 of the License, or (at your
9 * option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the Affero GNU General Public License
17 * and the GNU General Public License along with this program. If not, see
18 * <http://www.gnu.org/licenses/>.
19 *
20 * The authors can be reached via e-mail to <support@deliantra.net>
21 */
22
23 /* Dec '95 - laid down initial file. Stuff in here is for BOOKs
24 * hack. Information in this file describes fundental parameters
25 * of 'books' - objects with type==BOOK. -b.t.
26 */
27
28 /* Message buf size. If this is changed, keep in mind that big strings
29 * may be unreadable by the player as the tail of the message
30 * can scroll over the beginning (as of v0.92.2).
31 * Note that the book messages are stored in the msg buf,
32 * which is limited by 'HUGE_BUF' in the loader.
33 */
34 #ifndef BOOK_H
35 #define BOOK_H
36 #define BOOK_BUF HUGE_BUF-10
37
38 /* if little books arent getting enough text generated, enlarge this */
39
40 #define BASE_BOOK_BUF 250
41
42 /* Book buffer size. We shouldnt let little books/scrolls have
43 * more info than big, weighty tomes! So lets base the 'natural'
44 * book message buffer size on its weight. But never let a book
45 * mesg buffer exceed the max. size (BOOK_BUF) */
46
47 #define BOOKSIZE(xyz) BASE_BOOK_BUF+((xyz)->weight/10)>BOOK_BUF? \
48 BOOK_BUF:BASE_BOOK_BUF+((xyz)->weight/10)
49
50 struct readable_message_type
51 {
52 uint8 message_type;
53 uint8 message_subtype;
54 const char *msgtype;
55 };
56
57 #endif
58