Discord sunucumuz açılmıştır, hepinizi bekleriz

https://discord.gg/43gGDQe6tS

Afk slayer Gelişmiş ?

Eklenti sorunlarınız ve özel eklenti istekleriniz

Moderatör: Moderatörler

Kullanıcı avatarı

Konu Sahibi
burakozdemir58
Mesajlar: 77
Kayıt: Cmt Eki 05, 2019 1:05 pm

Afk slayer Gelişmiş ?

Mesaj gönderen burakozdemir58 »

selamlar forum sakinleri , serverim için afk slayer plugini lazım fakat şuanda aktif olan bütük afk slayer pluginleri round başında işe yarıyor yani oyuncu round başından devamında 30 saniye hareketsiz kalırsa afk olarak kabul edilip slaylanıyor eğerkiiiiii oyuncu round başında değilde round ortasına kadar oynayıp ortasında afk bırakınca asırlar yıllar yüzyıllarda geçse o oyuncu slaylanmıyor buda serverin boşalmasına sebep veriyor böyle bir pluginin her server için lazım olacağını düşünüyor ve anlayan arkadaşlardan rica ediyorum şimdiden teşekkür ederim :D

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

ByBuLuT ☪
Mesajlar: 2368
Kayıt: Sal Oca 26, 2016 3:54 pm
Konum: Samsun
Clan İsmi: -
İletişim:

Afk slayer Gelişmiş ?

Mesaj gönderen ByBuLuT ☪ »

Kontrolün sunucuya en yüksüz şekilde yapılması gerekiyor oyuncu doğunca,round başı en çok kullanılan tetiklemeler çünkü istisnai modlar hariç bu iki durumdan birisi kesin gerçekleşiyor.

Modunuza uygun olarak hangi durumlarda afk kontrolü istediğinizi belirtirseniz onu uygun bir düzenleme yapılabilir.Her salise de kontrol yapılabilir ancak göz önüne alınması gereken en stabil olacak halini düşünmek.

Belirli bir süre de her yaşayanı kontrol et yapılabilir ama bir zaman sonra pingler fırlıyor loss yüksek oyun takılıyor gibi konu açılması muhtemel

Link:
Linklerini gizle
Linki Kopyala

Ahmethamza_1
Mesajlar: 134
Kayıt: Sal May 16, 2017 4:48 pm

Afk slayer Gelişmiş ?

Mesaj gönderen Ahmethamza_1 »

Kod: Tümünü seç

#include <amxmodx> 
#include <amxmisc> 
#include <hamsandwich> 
#include <fakemeta> 

//#define TIME 15.0
#define TASK_TIME 27890
#define ZAMAN 30

new Float:player_origin[33][3]; 

new afkorigin[33];

public plugin_init() 
{ 
	RegisterHam(Ham_Spawn, "player", "e_Spawn", 1);
	register_event("DeathMsg", "EventDeath", "a")
} 

public plugin_cfg()
{
	set_task(1.0, "check_afk", TASK_TIME)
}

public client_putinserver(id) afkorigin[id] = 0
public client_disconnected(id) afkorigin[id] = 0

public EventDeath()
{
	new id = read_data(2)
	
	afkorigin[id] = 0
}

public e_Spawn(id) 
{ 
	remove_task(id) 
	if(is_user_alive(id)) 
	{
		afkorigin[id] = 0
		//set_task(0.8, "get_spawn", id); 
	} 
	return HAM_IGNORED; 
} 
/*
public get_spawn(id) 
{ 
	
	
	//set_task(TIME, "check_afk", id); 
} 
*/
public check_afk(id) 
{ 
	pev(id, pev_origin, player_origin[id]);
	if(is_user_alive(id)) 
	{ 
		if(afkorigin[id] == ZAMAN && same_origin(id)) 
		{ 
			user_kill(id);
		}
		else if(!same_origin(id)) afkorigin[id] = 0
		else afkorigin[id]++
	} 
} 

public same_origin(id) 
{ 
	new Float:origin[3]; 
	pev(id, pev_origin, origin); 
	for(new i = 0; i < 3; i++) 
		if(origin[i] != player_origin[id][i]) 
		return 0; 
	return 1; 
}  
Oyuncu eğer bir yerde afk kalırsa afkorigin değeri her saniyede 1 artıyor. #define ZAMAN kaç ise değer ona geldiği zaman öldürüyor. EKLENTİYİ DENEMEDİM!

Link:
Linklerini gizle
Linki Kopyala

kaanapaydn
Mesajlar: 165
Kayıt: Sal Oca 15, 2019 12:37 am
Konum: Usa
Server Ip/DNS: New York
İletişim:

Afk slayer Gelişmiş ?

Mesaj gönderen kaanapaydn »

Ahmethamza_1 yazdı: Çrş Ara 18, 2019 6:27 pm

Kod: Tümünü seç

#include <amxmodx> 
#include <amxmisc> 
#include <hamsandwich> 
#include <fakemeta> 

//#define TIME 15.0
#define TASK_TIME 27890
#define ZAMAN 30

new Float:player_origin[33][3]; 

new afkorigin[33];

public plugin_init() 
{ 
	RegisterHam(Ham_Spawn, "player", "e_Spawn", 1);
	register_event("DeathMsg", "EventDeath", "a")
} 

public plugin_cfg()
{
	set_task(1.0, "check_afk", TASK_TIME)
}

public client_putinserver(id) afkorigin[id] = 0
public client_disconnected(id) afkorigin[id] = 0

public EventDeath()
{
	new id = read_data(2)
	
	afkorigin[id] = 0
}

public e_Spawn(id) 
{ 
	remove_task(id) 
	if(is_user_alive(id)) 
	{
		afkorigin[id] = 0
		//set_task(0.8, "get_spawn", id); 
	} 
	return HAM_IGNORED; 
} 
/*
public get_spawn(id) 
{ 
	
	
	//set_task(TIME, "check_afk", id); 
} 
*/
public check_afk(id) 
{ 
	pev(id, pev_origin, player_origin[id]);
	if(is_user_alive(id)) 
	{ 
		if(afkorigin[id] == ZAMAN && same_origin(id)) 
		{ 
			user_kill(id);
		}
		else if(!same_origin(id)) afkorigin[id] = 0
		else afkorigin[id]++
	} 
} 

public same_origin(id) 
{ 
	new Float:origin[3]; 
	pev(id, pev_origin, origin); 
	for(new i = 0; i < 3; i++) 
		if(origin[i] != player_origin[id][i]) 
		return 0; 
	return 1; 
}  
Oyuncu eğer bir yerde afk kalırsa afkorigin değeri her saniyede 1 artıyor. #define ZAMAN kaç ise değer ona geldiği zaman öldürüyor. EKLENTİYİ DENEMEDİM!
Denedim çalışmıyor bilginiz olsun

Link:
Linklerini gizle
Linki Kopyala
Cevapla