guildboard.c and boardfuncs.c - examples for course 13

[previous example] [course 13] [Table of contents] [next example]
/* Filename      : guildboard.c
 * Description   : the guild noticeboard
 *
 * written       : 30-05-1998 - Gunner
 * last modified : 31-05-1998 - Gunner
 * HTML-Version  : 13-02-2000 - Ghorwin
 */

#include <mudlib.h>
#include <levels.h>
inherit I_ULTRA_BOARD;

#define FUNC "/doc/crashcourse/course13/board/boardfuncs"

create()
{
    ::create();
    set_name("bulletin board");
    add_id(({"board","crashcourse board","example board",
        "crashcourse example board"}));
    set_short("A bulletin board");
    set_headline("The Crashcourse Example Board");
    set_notes_dir("/doc/crashcourse/course13/board/notes/");
    set_read_level(WIZARD);
    set_write_level(WIZARD);
    set_board_status("public");
    set_archive_dir("/doc/crashcourse/course13/board/archive/");
    set_special_permit((:call_other, FUNC, "query_access":));
    replace_program(I_ULTRA_BOARD);
}

boardfuncs.c


/* Filename      : boardfuncs.c
 * Description   : the functionfile for guildboard.c
 *
 * written       : 30-05-1998 - Gunner
 * last modified : 31-05-1998 - Gunner
 * HTML-Version  : 13-02-2000 - Ghorwin
 */

#include "/doc/crashcourse/course13/include/guild.h"

/*
 * query_access : Allow board access to all members plus any wizards or higher.
 */
int
query_access()
{
    if ( (Q_GUILD(TP) == GUILD_MASTER) || (is_wiz(TP)) )
        return 1;
    else
        return 0;
}