So i use this script to give all players items . But this script give rewards to all players online ( include afk , vending, idle, or create chat room )
how to exclude the AFK , Vending, Idle , or Creating Chat Room ( which is still considered afk ) to not get the rewards ?
// usage : // [npc:Sample]map#512#10 // [npc:Sample]all#512#123 - script Sample -1,{ OnWhisperGlobal: if( getgmlevel() >= 99 ){ // check map if( @whispervar0$ == "all" ) set [email protected]$,""; else if( @whispervar0$ == "map" ) set [email protected]$,strcharinfo(3); else { dispbottom "Error, pick 'map' or 'all' "; end; } // check item set [email protected],atoi( @whispervar1$ ); set [email protected],atoi( @whispervar2$ ); if( getitemname( [email protected] ) == "null" || [email protected] < 1 ){ dispbottom "Enter valid item id and amount."; } set [email protected]_id,getcharid(3); query_sql( "SELECT COUNT(`account_id`) FROM `char` WHERE `online` = 1 ", [email protected] ); while( [email protected] < [email protected] ){ query_sql( "SELECT `account_id`,`name` FROM `char` WHERE `online` = 1 ORDER BY `account_id` LIMIT 128 OFFSET "[email protected], [email protected],[email protected]$ ); set [email protected],0; set [email protected],getarraysize( [email protected] ); while( [email protected] < [email protected] ){ if( [email protected][[email protected]] != [email protected]_id ){ if( [email protected]$ != "" ){ getmapxy( [email protected]$,[email protected],[email protected],0,[email protected]$[[email protected]] ); if( [email protected]$ == [email protected]$ ){ getitem [email protected],[email protected],[email protected][[email protected]]; set [email protected],[email protected] + 1; } }else{ getitem [email protected],[email protected],[email protected][[email protected]]; set [email protected],[email protected] + 1; } } set [email protected],[email protected] + 1; set [email protected],[email protected] + 1; } set [email protected],[email protected] + [email protected]; deletearray [email protected],[email protected]; deletearray [email protected]$,[email protected]; } dispbottom "Gave "[email protected]+" x "+getitemname( [email protected] )+" to "[email protected]+" Player(s)."; } end; }So i use this script to give all players items . But this script give rewards to all players online ( include afk , vending, idle, or create chat room )
how to exclude the AFK , Vending, Idle , or Creating Chat Room ( which is still considered afk ) to not get the rewards ?
Thank you for the helps !
Link to comment
Share on other sites