ES2 MUD LIB :: 東方故事二(ES2) 天朝帝國 mudlib 瀏覽展示

/include/command.h

HOME :: include :: command.h
/*  command.h

    Copyright (C) 1994-2000 Annihilator 

    This program is a part of ES2 mudlib. Permission is granted to use,
    modify, copy or distribute this program provided this copyright notice
    remains intact and subject to the restriction that this program MAY
    NOT be used in any way for monetary gain.

    Details of terms and conditions is available in the Copyright.ES2 file.
    If you don't receive this file along with this program, write to the
    primary author of ES2 mudlib: Annihilator 
*/

#ifndef COMMAND_H
#define COMMAND_H

#define ENABLE_BENCHMARK 1

#define ADM_PATH ({"/cmds/adm/", "/cmds/arch/", "/cmds/wiz/", "/cmds/imm/", "/cmds/usr/","/cmds/std/"})
#define ARC_PATH ({"/cmds/arch/", "/cmds/wiz/", "/cmds/imm/", "/cmds/usr/","/cmds/std/"})
#define WIZ_PATH ({"/cmds/imm/", "/cmds/usr/", "/cmds/std/", "/cmds/wiz/"})
#define APR_PATH ({"/cmds/imm/", "/cmds/usr/", "/cmds/std/", "/cmds/wiz/"})
#define IMM_PATH ({"/cmds/imm/", "/cmds/usr/", "/cmds/std/"})
#define PLR_PATH ({"/cmds/std/", "/cmds/usr/"})
#define NPC_PATH ({"/cmds/std/"})

// These are command objects that will also be called in those
// non-player objects.

#define DROP_CMD "/cmds/std/drop"
#define GET_CMD "/cmds/std/get"
#define GO_CMD "/cmds/std/go"
#define KILL_CMD "/cmds/std/kill"
#define SAY_CMD "/cmds/std/say"
#define TELL_CMD "/cmds/std/tell"
#define UPTIME_CMD "/cmds/usr/uptime"
#define VISITOR_CMD "/cmds/usr/visitor"
#define WHO_CMD "/cmds/usr/who"
#define QUIT_CMD "/cmds/usr/quit"

#define SECURED_COMMAND \
if( (this_player() != this_player(1)) \
||  (previous_object() != this_player(1)) ) \
    return notify_fail("你沒有權力使用這個指令。\n")

#define SECURED_WIZARD_COMMAND \
if( (this_player() != this_player(1)) \
||  (previous_object() != this_player(1)) \
||  (! wizardp(this_player(1)) ) \
)   return notify_fail("你沒有權力使用這個指令。\n")

#define SECURED_ARCH_COMMAND \
if( (this_player() != this_player(1)) \
||  (previous_object() != this_player(1)) \
||  (wiz_level(this_player(1)) < wiz_level("(arch)")) \
)   return notify_fail("你沒有權力使用這個指令。\n")

#define SECURED_ADMIN_COMMAND \
if( (this_player() != this_player(1)) \
||  (previous_object() != this_player(1)) \
||  (wiz_level(this_player(1)) < wiz_level("(admin)")) \
)   return notify_fail("你沒有權力使用這個指令。\n")

#endif /* COMMAND_H */
HOME :: include :: command.h