login.c

来自「C实现的MUD,对大家基本入门网络游戏很有帮助!」· C语言 代码 · 共 67 行

C
67
字号
#include <login.h>#include <dbase.h>inherit F_DBASE;inherit F_SAVE;inherit F_ENCODING;void logon(){	call_out( "time_out", LOGIN_TIMEOUT );	LOGIN_D->logon( this_object() );}// Don't destruct(this_object()) in the net_dead() interactive apply or// there'll be error message: Double call to remove_interactive()void net_dead(){//   destruct(this_object()); 	remove_call_out("time_out");	call_out( "time_out", 1 );}void time_out(){	object ob = query_temp("body_ob");	if( objectp(query_temp("body_ob")) ) return;	if( objectp(ob) ) {		if ( environment(ob) ) return;		destruct(ob);	}	if( interactive(this_object()) )		write("您花在连线进入手续的时间太久了,下次想好再来吧。\n");	destruct(this_object());}// This is used by F_SAVE to determinethe file name to save our data.string query_save_file(){	string id;	id = query("id", 1);	if( !stringp(id) ) return 0;	return sprintf(DATA_DIR "login/%c/%s", id[0], id);}void receive_message(string type, string str){	if( type!= "write" ) return;	str = CONVERT_D->output(str,this_object());//       if (query_temp("big5")) str = "/adm/daemons/gb_b5d"->gb_b5(str);	receive(str);}void terminal_type(string term_type){	set_temp("terminal_type", term_type);}// Protect login object's data against hackers.nomask mixed set(string prop, mixed data){	if( geteuid(previous_object()) != ROOT_UID ) return 0;	return ::set(prop, data);}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?