--- deliantra/server/include/player.h 2006/12/23 15:49:40 1.34 +++ deliantra/server/include/player.h 2006/12/25 11:25:49 1.35 @@ -110,11 +110,11 @@ #define for_all_players(var) for (player *var = first_player; var; var = var->next) -ACC_CLASS (player) -struct player : zero_initialised, refcounted, attachable +INTERFACE_CLASS (player) +struct player : zero_initialised, attachable { player *ACC (RW, next); /* Pointer to next player, NULL if this is last */ - client *ACC (RO, ns); /* Socket information for this player */ + client_ptr ACC (RO, ns); /* Socket information for this player */ object_ptr ACC (RW, ob); /* The object representing the player */ maptile *loading; /* When entering a map in progress of loading, not really used */ rangetype ACC (RW, shoottype); /* Which range-attack is being used by player */ @@ -209,8 +209,11 @@ static player *create (); static player *load (const char *path); void save (bool final = false); + void do_destroy (); + void gather_callbacks (AV *&callbacks, event_type event) const; void connect (client *ns); + void disconnect (); ~player ();