- script auto_prune_sql -1,{ OnMon0000: // every monday ( weekly ) // OnClock0000: // everyday ( daily ) query_sql( "SELECT `account_id` FROM `login` WHERE DATEDIFF( NOW(),`lastlogin` ) > 30 )",.@aid ); .@size = getarraysize( .@aid ); while( .@acc < .@size ){ .@char_id = ""; query_sql( "SELECT `char_id` FROM `char` WHERE `account_id` = "+.@aid[.@acc],.@char_id$ ); .@char_size = getarraysize( .@char_id$ ); if( .@char_size ){ if( .@char_size > 1 ) .@char_id$ = implode( .@char_id$,"," ); for( .@sql = 0; .@sql < .char_sql_table_size; .@sql++ ) query_sql( "DELETE FROM `"+.char_sql_table$[.@sql]+"` WHERE `char_id` IN ( "+escape_sql( .@char_id$ )+" )" ); } for( .@sql = 0; .@sql < .acc_sql_table_size; .@sql++ ) query_sql( "DELETE FROM `"+.acc_sql_table$[.@sql]+"` WHERE `account_id` = "+.@aid[.@acc] ); .@acc++; } end; OnInit: setarray .acc_sql_table$, "guild_expulsion", "storage", "account_data", "acc_reg_num_db", "acc_reg_str_db", "login"; .acc_sql_table_size = getarraysize( .acc_sql_table$ ); setarray .char_sql_table$, "cart_inventory", "char", "elemental", "friends", "hotkey", "guild_id", "guild_member", "homunculus", "inventory", "sc_data", "memo", "mercenary", "mercenary_owner", "pet", "quest", "skill", "char_reg_num_db", "char_reg_str_db", "autotrade_merchants", "autotrade_data"; .char_sql_table_size = getarraysize( .char_sql_table$ ); end; }