Ejemplo n.º 1
0
int
mesg_local_perms(dbref player, dbref perms, dbref obj)
{
    if (OWNER(perms) == OWNER(getloc(obj))) return 1;
    if (isneighbor(perms, obj)) return 1;
    if (isneighbor(player, obj)) return 1;
    if (Mageperms(perms)) return 1;
    if (mesg_read_perms(player, perms, obj)) return 1;
    return 0;
}
Ejemplo n.º 2
0
dbref
mesg_dbref_mage(int descr, dbref player, dbref what, dbref perms, char *buf)
{
    dbref obj = mesg_dbref_raw(descr, player, what, perms, buf);

    if (obj == UNKNOWN) return obj;
    if (!Mageperms(perms) && OWNER(perms) != OWNER(obj)) {
        obj = PERMDENIED;
    }
    return obj;
}
Ejemplo n.º 3
0
const char *
mfn_delay(MFUNARGS)
{
    char *argchr, *cmdchr;
    int i = atoi(argv[0]);
    if (i < 1) i = 1;
#ifdef WIZZED_DELAY
    if (!Mageperms(perms))
	ABORT_MPI("delay",NOPERM_MESG);
#endif
    cmdchr = get_mvar("cmd");
    argchr = get_mvar("arg");
    i = add_mpi_event(i, player, getloc(player), perms, argv[1], cmdchr, argchr,
		(mesgtyp & MPI_ISLISTENER), (!(mesgtyp & MPI_ISPRIVATE)));
    sprintf(buf, "%d", i);
    return buf;
}