ulvis.paste.net - pastebin

Paste Search Dynamic
TaskManageBots
  1. #include amxmodx
  2. #include fakemeta
  3.  
  4. #define NUMAR_DE_BOTI 3
  5.  
  6. new g_Query[256];
  7.  
  8. public plugin_init()
  9. {
  10.         set_task( 15.0, "TaskManageBots", .flags="b" );
  11. }
  12.  
  13. new g_Bot[33], g_BotsCount;
  14.  
  15. public TaskManageBots(){
  16.         static PlayersNum; PlayersNum  = get_playersnum( 1 );
  17.         if( PlayersNum < get_maxplayers() - 1 && g_BotsCount < NUMAR_DE_BOTI ) {
  18.                 CreateBot();
  19.         } else if( PlayersNum > get_maxplayers() - 1 && g_BotsCount ) {
  20.                 RemoveBot();
  21.         }}
  22.  
  23. new const g_Names[][]=
  24. {
  25.         "LycaNiaNNNNNNN",
  26.         "MUIEEEE AMA!!!!",
  27.         "Amaranth BOTU!!!",
  28.         "SE STIEEEEEE"
  29. };
  30.  
  31. public client_disconnect(i)
  32. {
  33.         if( g_Bot[ i ] ) {
  34.                 g_Bot[ i ] = 0, g_BotsCount -- ;
  35.         }
  36. }
  37.  
  38. RemoveBot(){
  39.         static i;
  40.         for( i = 1; i <= get_maxplayers(); i++ ) {
  41.                 if( g_Bot[ i ] ) {
  42.                         server_cmd( "kick #%d", get_user_userid( i ) );break;
  43.                 }}}
  44.  
  45. CreateBot(){
  46.         static Bot;
  47.         formatex( g_Query, 255, !random_num(0,1)?"%s (%c%c)":"%s - %c%c",g_Names[random_num(0,sizeof(g_Names)-1)],random_num('A','Z'),random_num('A','Z') );Bot = engfunc( EngFunc_CreateFakeClient, g_Query );
  48.         if( Bot > 0 &&pev_valid(Bot)) {
  49.                 dllfunc(MetaFunc_CallGameEntity,"player",Bot);
  50.                 set_pev(Bot,pev_flags,FL_FAKECLIENT);
  51.                 set_pev(Bot, pev_model, "");
  52.                 set_pev(Bot, pev_viewmodel2, "");
  53.                 set_pev(Bot, pev_modelindex, 0);
  54.                 set_pev(Bot, pev_renderfx, kRenderFxNone);
  55.                 set_pev(Bot, pev_rendermode, kRenderTransAlpha);
  56.                 set_pev(Bot, pev_renderamt, 0.0);
  57.                 set_pdata_int(Bot,114,0);
  58.                 message_begin(MSG_ALL,get_user_msgid("TeamInfo"));
  59.                 write_byte(Bot);
  60.                 write_string("UNASSIGNED");
  61.                 message_end();
  62.                 g_Bot[Bot]=1;
  63.                 g_BotsCount++;
  64.         }
  65. }
Parsed in 0.014 seconds