Crossfire Server, Trunk  R20739
player_changer.c File Reference
#include "global.h"
#include <string.h>
#include "ob_methods.h"
#include "ob_types.h"
#include "sounds.h"
#include "sproto.h"
+ Include dependency graph for player_changer.c:

Go to the source code of this file.


void init_type_player_changer (void)
static method_ret player_changer_type_process (ob_methods *context, object *op)

Detailed Description

The implementation of the PLAYER_CHANGER class of objects.

Definition in file player_changer.c.

Function Documentation

◆ init_type_player_changer()

void init_type_player_changer ( void  )

Initializer for the player changer object type.

Definition at line 32 of file player_changer.c.

References PLAYER_CHANGER, player_changer_type_process(), and register_process().

Referenced by register_all_ob_types().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ player_changer_type_process()

static method_ret player_changer_type_process ( ob_methods context,
object op 


This object will teleport someone to a different map and will also apply changes to the player from its inventory.

This was invented for giving classes, but there's no reason it can't be generalized.

contextThe method context
opThe player changer that's being processed.

Definition at line 49 of file player_changer.c.

References obj::above, AC_PLAYER_STAT_LIMIT, apply_changes_to_player(), pl::bed_x, pl::bed_y, obj::contr, enter_exit(), esrv_send_inventory(), esrv_update_item(), EVENT_TRIGGER, execute_event(), EXIT_PATH, EXIT_X, EXIT_Y, fix_object(), FOR_INV_FINISH, FOR_INV_PREPARE, llevDebug, LOG(), METHOD_OK, PLAYER, safe_strncpy, save_player(), pl::savebed_map, SCRIPT_FIX_NOTHING, obj::type, and UPD_FACE.

Referenced by init_type_player_changer().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: