mud/lib/daemon/statistics.c
2020-09-06 05:43:07 -07:00

47 lines
1.2 KiB
C

/* /daemon/statistics.c
* from the Dead Souls Object Library
* Keeps track of RAM intensive data on players
* created by Descartes of Borg 951217
* Version: @(#) statistics.c 1.2@(#)
* Last modified: 96/10/08
*/
#include <lib.h>
#include <dirs.h>
#include "include/statistics.h"
inherit LIB_DAEMON;
mixed eventKill(object target) {
mapping kills;
object pl;
string nom, file;
if( !userp(pl = previous_object()) ) return 0;
nom = pl->GetKeyName();
file = DIR_KILLS "/" + nom[0..0];
if( file_size(file) != -2 ) {
unguarded( (: mkdir, file :) );
}
file = file + "/" + nom;
if( file_size(file) < 1 ) {
kills = ([]);
}
else kills = restore_variable(unguarded((: read_file, file :)));
nom = target->GetShort() || target->GetKeyName();
if( !kills[nom] ) kills[nom] = 1;
else kills[nom]++;
unguarded((: rm, file :));
unguarded((: write_file($(file), save_variable($(kills))) :));
return 1;
}
mapping GetKills(string who) {
string file;
who = convert_name(who);
file = DIR_KILLS "/" + who[0..0] + "/" + who;
if( unguarded((: file_size, file :)) < 1 ) return ([]);
else return restore_variable(unguarded((: read_file, file :)));
}