/**************************************************************************** * Original Diku Mud copyright (C) 1990, 1991 by Sebastian Hammer, * * Michael Seifert, Hans Henrik St{rfeldt, Tom Madsen, and Katja Nyboe. * * * * Merc Diku Mud improvments copyright (C) 1992, 1993 by Michael * * Chastain, Michael Quan, and Mitchell Tse. * * * * In order to use any part of this Merc Diku Mud, you must comply with * * both the original Diku license in 'license.doc' as well the Merc * * license in 'license.txt'. In particular, you may not remove either of * * these copyright notices. * * * * Much time and thought has gone into this software and you are * * benefitting. We hope that you share your changes too. What goes * * around, comes around. * ***************************************************************************/ /**************************************************************************** * ROM 2.4 is copyright 1993-1998 Russ Taylor * * ROM has been brought to you by the ROM consortium * * Russ Taylor (rtaylor@hypercube.org) * * Gabrielle Taylor (gtaylor@hypercube.org) * * Brian Moore (zump@rom.org) * * By using this code, you have agreed to follow the terms of the * * ROM license, in the file Rom24/doc/rom.license * ***************************************************************************/ /**************************************************************************** * Demon's Dance MUD, and source code are property of Eric Goetschalckx * * By compiling this code, you agree to include the following in your * * login screen: * * Derivative of Demon's Dance, by Enzo/Stan * ***************************************************************************/ #if defined(macintosh) #include <types.h> #elif defined(WIN32) #include <sys/types.h> #include <time.h> #define NOCRYPT #else #include <sys/types.h> #include <sys/time.h> #endif #include <stdio.h> #include <string.h> #include <stdlib.h> #include <ctype.h> #include <time.h> #include "merc.h" #include "interp.h" #include "magic.h" #include "recycle.h" #include "tables.h" #include "lookup.h" #include "arena.h" /** Function: do_pload * Descr : Loads a player object into the mud, bringing them (and their * pet) to you for easy modification. Player must not be connected. * Note: be sure to send them back when your done with them. * Returns : (void) * Syntax : pload (who) * Written : v1.0 12/97 * Author : Gary McNickle <gary@dharvest.com> */ void do_pload( CHAR_DATA *ch, char *argument ) { DESCRIPTOR_DATA d; bool isChar = FALSE; char name[MAX_INPUT_LENGTH]; if (argument[0] == '\0') { send_to_char("Load who?\n\r", ch); return; } argument[0] = UPPER(argument[0]); argument = one_argument(argument, name); /* Dont want to load a second copy of a player who's allready online! */ if ( get_char_world( ch, name ) != NULL ) { send_to_char( "That person is allready connected!\n\r", ch ); return; } isChar = load_char_obj(&d, name); /* char pfile exists? */ if (!isChar) { send_to_char("Load Who? Are you sure? I cant seem to find them.\n\r", ch); return; } d.character->desc = NULL; d.character->next = char_list; char_list = d.character; d.connected = CON_PLAYING; reset_char(d.character); /* bring player to imm */ if ( d.character->in_room != NULL ) { char_to_room( d.character, ch->in_room); /* put in room imm is in */ } act( "$n has pulled $N from the pattern!", ch, NULL, d.character, TO_ROOM ); if (d.character->pet != NULL) { char_to_room(d.character->pet,d.character->in_room); act("$n has entered the game.",d.character->pet,NULL,NULL,TO_ROOM); } } /** Function: do_punload * Descr : Returns a player, previously 'ploaded' back to the void from * whence they came. This does not work if the player is actually * connected. * Returns : (void) * Syntax : punload (who) * Written : v1.0 12/97 * Author : Gary McNickle <gary@dharvest.com> */ void do_punload( CHAR_DATA *ch, char *argument ) { CHAR_DATA *victim; char who[MAX_INPUT_LENGTH]; argument = one_argument(argument, who); if ( ( victim = get_char_world( ch, who ) ) == NULL ) { send_to_char( "They aren't here.\n\r", ch ); return; } /** Person is legitametly logged on... was not ploaded. */ if (victim->desc != NULL) { send_to_char("I dont think that would be a good idea...\n\r", ch); return; } if (victim->was_in_room != NULL) /* return player and pet to orig room */ { char_to_room(victim, victim->was_in_room); if (victim->pet != NULL) char_to_room(victim->pet, victim->was_in_room); } save_char_obj(victim); do_quit(victim,""); act("$n has released $N back to the Pattern.", ch, NULL, victim, TO_ROOM); }