Half-Life и Adrenaline Gamer форум

Всё об игре в Халф-Лайф и АГ
Текущее время: 16 июн 2024, 09:18

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: I am looking for AFK spectate plugin AGmini !
СообщениеДобавлено: 21 ноя 2014, 14:46 
Не в сети
Аватара пользователя
Зарегистрирован:
22 окт 2014, 19:26
Последнее посещение:
11 июн 2024, 22:16
Сообщения: 1027
The version I want to kick the player to spectator status if absent from the playْ!

_________________
https://vk.com/kgbaghl


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: I am looking for AFK spectate plugin AGmini !
СообщениеДобавлено: 25 ноя 2014, 15:56 
Не в сети
Аватара пользователя
Зарегистрирован:
24 ноя 2014, 20:59
Последнее посещение:
27 май 2019, 05:57
Сообщения: 204
Откуда: Other Side
try this


Вложения:
Скачать плагин или Скачать исходник [afk-kick-to-spec.sma - 3.4 КБ]
Скачиваний: 252

_________________
Charsmax
Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: I am looking for AFK spectate plugin AGmini !
СообщениеДобавлено: 25 ноя 2014, 20:19 
Не в сети
Аватара пользователя
Зарегистрирован:
22 окт 2014, 19:26
Последнее посещение:
11 июн 2024, 22:16
Сообщения: 1027
not worked :C
Код:
#include <amxmodx>
#include <hl>

#define MIN_AFK_TIME 30      
#define WARNING_TIME 15      
#define CHECK_FREQ 5      

new g_oldangles[33][3]
new g_afktime[33]
new bool:g_spawned[33] = {true, ...}

public plugin_init() {
   register_plugin("AFK spec","1.0b","Cheesy Peteza edited")
   register_cvar("afk_version", "1.0b", FCVAR_SERVER|FCVAR_EXTDLL|FCVAR_SPONLY)

   register_cvar("mp_afktime", "5")   // Kick people AFK longer than this time
   register_cvar("mp_afkminplayers", "8")   // Only kick AFKs when there is atleast this many players on the server
   set_task(float(CHECK_FREQ),"checkPlayers",_,_,_,"b")
   register_event("ResetHUD", "playerSpawned", "be")
}

public checkPlayers() {
   for (new i = 1; i <= get_maxplayers(); i++) {
      if (is_user_alive(i) && is_user_connected(i) && !is_user_bot(i) && !is_user_hltv(i) && g_spawned[i]) {
         new newangle[3]
         get_user_origin(i, newangle)

         if ( newangle[0] == g_oldangles[i][0] && newangle[1] == g_oldangles[i][1] && newangle[2] == g_oldangles[i][2] ) {
            g_afktime[i] += CHECK_FREQ
            check_afktime(i)
         } else {
            g_oldangles[i][0] = newangle[0]
            g_oldangles[i][1] = newangle[1]
            g_oldangles[i][2] = newangle[2]
            g_afktime[i] = 0
         }
      }
   }
   return PLUGIN_HANDLED
}

check_afktime(id) {
   new numplayers = get_playersnum()
   new minplayers = get_cvar_num("mp_afkminplayers")
               
   if (numplayers >= minplayers) {
      new maxafktime = get_cvar_num("mp_afktime")
      if (maxafktime < MIN_AFK_TIME) {
         log_amx("cvar mp_afktime %i is too low. Minimum value is %i.", maxafktime, MIN_AFK_TIME)
         maxafktime = MIN_AFK_TIME
         set_cvar_num("mp_afktime", MIN_AFK_TIME)
      }

      if ( maxafktime-WARNING_TIME <= g_afktime[id] < maxafktime) {
         new timeleft = maxafktime - g_afktime[id]
         client_print(id, print_chat, "[AFK Kicker] You have %i seconds to move or you will be kicked for being AFK", timeleft)
      } else if (g_afktime[id] > maxafktime) {
         new name[32]
         get_user_name(id, name, 31)
         client_print(0, print_chat, "%s has switched to spectate mod,AFK %i seconds", name, maxafktime)
         log_amx("%s has switched to spectate mod,AFK %i seconds", name, maxafktime)
         hl_set_user_spectator(id)
      }
   }
}

public client_connect(id) {
   g_afktime[id] = 0
   return PLUGIN_HANDLED
}

public client_putinserver(id) {
   g_afktime[id] = 0
   return PLUGIN_HANDLED
}

public playerSpawned(id) {
   g_spawned[id] = false
   new sid[1]
   sid[0] = id
   set_task(0.75, "delayedSpawn",_, sid, 1)   // Give the player time to drop to the floor when spawning
   return PLUGIN_HANDLED
}

public delayedSpawn(sid[]) {
   get_user_origin(sid[0], g_oldangles[sid[0]])
   g_spawned[sid[0]] = true
   return PLUGIN_HANDLED
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1036\\ f0\\ fs16 \n\\ par }
*/

_________________
https://vk.com/kgbaghl


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: I am looking for AFK spectate plugin AGmini !
СообщениеДобавлено: 05 дек 2014, 17:38 
Не в сети
Аватара пользователя
Зарегистрирован:
22 окт 2014, 19:26
Последнее посещение:
11 июн 2024, 22:16
Сообщения: 1027
I want her to be similar to Arena servers !
Код:
 [Arena AFK] Player abdobiskra moved to spectators because of AFK for 5 seconds.

_________________
https://vk.com/kgbaghl


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: I am looking for AFK spectate plugin AGmini !
СообщениеДобавлено: 19 дек 2014, 19:12 
Не в сети
Аватара пользователя
Зарегистрирован:
22 окт 2014, 19:26
Последнее посещение:
11 июн 2024, 22:16
Сообщения: 1027
This is what happens when you use it tells you that the player entered the spectator mode but it still exists
Is it a help me?
Вложение:
Capture.PNG
Capture.PNG [ 865.96 КБ | Просмотров: 1511 ]

_________________
https://vk.com/kgbaghl


Вернуться к началу
 Профиль 
  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB