TopTime Eklentisi ( AKTİFLİK SÜRELERİ )
Moderatör: Moderatörler
Forum kuralları
DİKKAT !
Konu Başlığı veya içeriği BÜYÜK HARFLERLE olan konular direk silenecektir !
Burası eklenti paylaşım bölümüdür ve yönetici onaylıdır. Alakasız konular hiçbir şekilde onaylanmayacaktır
Eklenti eklerken eklenti kurallarına uyulması gerekir.
En önemlisi paylaşılan eklenti şablonuna uyulması gerekir.
Bu hususlara dikkat edilmeyip paylaşılan eklenti konuları silenecektir.
DİKKAT !
Konu Başlığı veya içeriği BÜYÜK HARFLERLE olan konular direk silenecektir !
Burası eklenti paylaşım bölümüdür ve yönetici onaylıdır. Alakasız konular hiçbir şekilde onaylanmayacaktır
Eklenti eklerken eklenti kurallarına uyulması gerekir.
En önemlisi paylaşılan eklenti şablonuna uyulması gerekir.
Bu hususlara dikkat edilmeyip paylaşılan eklenti konuları silenecektir.
-
- Mesajlar: 186
- Kayıt: Çrş Tem 17, 2019 11:03 pm
- Konum: Bursa
- Server Ip/DNS: Cs43.CsDuragi.Com
- Clan İsmi: ✰ Electra ✰
- İletişim:
-
Konu Sahibi
TopTime Eklentisi ( AKTİFLİK SÜRELERİ )
Süreleri sıfırladıktan sonra tekrar harita değiştirene kadar eklentinin komutlarını kullanamazsınız.
Link: | |
Linklerini gizle |
-
- Mesajlar: 320
- Kayıt: Cum May 10, 2019 10:54 pm
- Server Ip/DNS: CsXX.CSDuragi.COM
- Clan İsmi: AyrılmazLarTR
TopTime Eklentisi ( AKTİFLİK SÜRELERİ )
Eklenti hatalı sanırım
Kurdum ilk kurdugumda basladı Onlıne suresı 5 dk 6 dk vs diye
daha sonra 20 dk gecti ya gecmedi tekrar baktıgımda ben dısında oyuncuların yarısı ılk 5 vs
26 saat gozukuor 27 saat gozukuor günde ortalama 27 saat vs gibi sacma bisey var bunun sebebi nedir ? bahsettiginiz olay ile ilgilimi ?
suan saatler ucmus bi bicimde fırlamakta
Link: | |
Linklerini gizle |
-
Konu Sahibi
TopTime Eklentisi ( AKTİFLİK SÜRELERİ )
Sadece günde ortalama kısmında mı böyle bir sorun gözüktü ?
Link: | |
Linklerini gizle |
-
- Mesajlar: 320
- Kayıt: Cum May 10, 2019 10:54 pm
- Server Ip/DNS: CsXX.CSDuragi.COM
- Clan İsmi: AyrılmazLarTR
TopTime Eklentisi ( AKTİFLİK SÜRELERİ )
SSdeki gibi örnek dün gece yüklediktn 10 DK Sonra birden fırladı bu sekılde saat, eklentı suan pasıf haldeFatih ~ EjderYa yazdı: ↑Sal Tem 30, 2019 8:16 am Sadece günde ortalama kısmında mı böyle bir sorun gözüktü ?
suan halen dha aktıf olsaydı 500 lere kadar cıkacaktı saatler
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.
Link: | |
Linklerini gizle |
-
- Mesajlar: 2368
- Kayıt: Sal Oca 26, 2016 3:54 pm
- Konum: Samsun
- Clan İsmi: -
- İletişim:
TopTime Eklentisi ( AKTİFLİK SÜRELERİ )
285. satırda ,dakika,dakika" yerini ,saat,dakika" yaparsak sorun çözülecek sanırı[B.O.S.S]>>> yazdı: ↑Sal Tem 30, 2019 3:11 pmSSdeki gibi örnek dün gece yüklediktn 10 DK Sonra birden fırladı bu sekılde saat, eklentı suan pasıf haldeFatih ~ EjderYa yazdı: ↑Sal Tem 30, 2019 8:16 am Sadece günde ortalama kısmında mı böyle bir sorun gözüktü ?
suan halen dha aktıf olsaydı 500 lere kadar cıkacaktı saatler
Link: | |
Linklerini gizle |
-
- Mesajlar: 320
- Kayıt: Cum May 10, 2019 10:54 pm
- Server Ip/DNS: CsXX.CSDuragi.COM
- Clan İsmi: AyrılmazLarTR
TopTime Eklentisi ( AKTİFLİK SÜRELERİ )
Atarmısın düzenleyip hocam ben default olarak ellemeden yükledimByBuLuT ☪ yazdı: ↑Sal Tem 30, 2019 3:18 pm285. satırda ,dakika,dakika" yerini ,saat,dakika" yaparsak sorun çözülecek sanırı[B.O.S.S]>>> yazdı: ↑Sal Tem 30, 2019 3:11 pmSSdeki gibi örnek dün gece yüklediktn 10 DK Sonra birden fırladı bu sekılde saat, eklentı suan pasıf haldeFatih ~ EjderYa yazdı: ↑Sal Tem 30, 2019 8:16 am Sadece günde ortalama kısmında mı böyle bir sorun gözüktü ?
suan halen dha aktıf olsaydı 500 lere kadar cıkacaktı saatler
Link: | |
Linklerini gizle |
-
Konu Sahibi
-
- Mesajlar: 320
- Kayıt: Cum May 10, 2019 10:54 pm
- Server Ip/DNS: CsXX.CSDuragi.COM
- Clan İsmi: AyrılmazLarTR
-
- Mesajlar: 2368
- Kayıt: Sal Oca 26, 2016 3:54 pm
- Konum: Samsun
- Clan İsmi: -
- İletişim:
TopTime Eklentisi ( AKTİFLİK SÜRELERİ )
Hayır demiş ama denemekten zarar gelmez bi dene[B.O.S.S]>>> yazdı: ↑Sal Tem 30, 2019 3:28 pmAtarmısın düzenleyip hocam ben default olarak ellemeden yükledimByBuLuT ☪ yazdı: ↑Sal Tem 30, 2019 3:18 pm285. satırda ,dakika,dakika" yerini ,saat,dakika" yaparsak sorun çözülecek sanırı[B.O.S.S]>>> yazdı: ↑Sal Tem 30, 2019 3:11 pm
SSdeki gibi örnek dün gece yüklediktn 10 DK Sonra birden fırladı bu sekılde saat, eklentı suan pasıf halde
suan halen dha aktıf olsaydı 500 lere kadar cıkacaktı saatler
![Çok Mutlu :D](https://forum.csduragi.com/images/smilies/icon_e_biggrin.gif)
Kod: Tümünü seç
#include <amxmodx>
#include <amxmisc>
#include <nvault>
#define PLUGIN "Toptime ( Aktiflik Sureleri )"
#define VERSION "1.0"
#define AUTHOR "Fatih ~ EjderYa"
#define MOTD_KISI_SAYISI 10
#define ZAMAN_ASIMI_GUN 7
#define SIFIRLAMA_YETKISI ADMIN_RCON
#define KAYIT_DOSYA_YOLU_MOTD "TopTime15.txt"
#define KAYIT_DOSYA_YOLU "addons/amxmodx/data/vault/TopTime15.vault"
#define PuanVermePeriyotu 60
new Dosya , OyuncuIsmi[33][35] , Siralama[33]
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("amx_toptime_sifirla","Sifirla")
register_clcmd("say /online","online_surem")
register_clcmd("say .online","online_surem")
register_clcmd("say /onlinemenu","onlinemenu")
register_clcmd("say .onlinemenu","onlinemenu")
register_clcmd("say /toptime","toptime")
register_clcmd("say .toptime","toptime")
set_task(5.0,"KayitDosyasiniOlustur")
}
public online_surem(id)
client_print_color(id,print_team_default,"^4Aktiflik Sureniz : ^1%s ^4Gunde Ortalama : ^1%s",Zaman_Ogren(id,nvault_get(Dosya,OyuncuIsmi[id])),Zaman_Ogren(id,Zaman_Farki_Hesapla(id)))
public BilgiGoster(id,Uid)
client_print_color(id,print_team_default,"^3%s ^4Oyuncusuna Ait Aktiflik Suresi : ^1%s ^4Gunde Ortalama : ^1%s",OyuncuIsmi[Uid],Zaman_Ogren(Uid,nvault_get(Dosya,OyuncuIsmi[Uid])),Zaman_Ogren(Uid,Zaman_Farki_Hesapla(Uid)))
public Zaman_Farki_Hesapla(id){
new KayitSatiri[40]
formatex(KayitSatiri,charsmax(KayitSatiri),"%s_Kyt",OyuncuIsmi[id])
// ZAMAN / GUN
new Gun = (Zaman_Hesapla() - nvault_get(Dosya,KayitSatiri))/1440
if ( Gun == 0 ) Gun = 1
return (nvault_get(Dosya,OyuncuIsmi[id]) / Gun )
}
public onlinemenu(id){
new Menu = menu_create("\r*** \wOyuncu Sec \r***", "Menu_devam")
new Oyuncular[32] , Num
get_players(Oyuncular,Num,"c")
for ( new i ; i < Num ; i++ ){
new Uid = Oyuncular[i]
if ( id != Uid ){
new Isim[36],Numara[4]
get_user_name(Uid,Isim,charsmax(Isim))
num_to_str(Uid,Numara,charsmax(Numara))
menu_additem(Menu, Isim, Numara)
}
}
menu_setprop(Menu, MPROP_NEXTNAME, "Ileri");
menu_setprop(Menu, MPROP_BACKNAME, "Geri");
menu_setprop(Menu,MPROP_EXITNAME,"\wCikis")
menu_setprop(Menu,MPROP_EXIT, MEXIT_NORMAL)
menu_display(id,Menu)
}
public Menu_devam(id, Oylama_menu , item){
if( item == MENU_EXIT )
return PLUGIN_HANDLED
new data[6], iName[64]
new acces, callback
menu_item_getinfo(Oylama_menu, item, acces, data,5, iName, 63, callback)
BilgiGoster(id,str_to_num(data))
onlinemenu(id)
return PLUGIN_CONTINUE
}
public Zaman_Hesapla(){
new str_Gun[3] , str_Ay[3] , str_Yil[5]
new str_Saat[3] , str_Dakika[3]
get_time("%d",str_Gun,charsmax(str_Gun))
get_time("%m",str_Ay,charsmax(str_Ay))
get_time("%Y",str_Yil,charsmax(str_Yil))
get_time("%H",str_Saat,charsmax(str_Saat))
get_time("%M",str_Dakika,charsmax(str_Dakika))
return str_to_num(str_Dakika) + ( str_to_num(str_Saat) * 60 ) + ( str_to_num(str_Gun) * 1440 ) + ( str_to_num(str_Ay) * 43200 ) + ( (str_to_num(str_Yil)-2000) * 518400 )
}
public KayitKontrol(id){
if ( nvault_get(Dosya,OyuncuIsmi[id]) < 180 ){
new KayitSatiri[40] , Zaman[10]
formatex(KayitSatiri,charsmax(KayitSatiri),"%s_Kyt",OyuncuIsmi[id])
formatex(Zaman,charsmax(Zaman),"%d",Zaman_Hesapla())
nvault_set(Dosya,KayitSatiri,Zaman)
}
}
public plugin_natives()
register_native("toptime_siralama_cek", "siralama_cek",1)
public siralama_cek(Sira){
new Oyuncular[32] , Numara
get_players(Oyuncular,Numara)
for ( new i ; i < Numara ; i++ )
if ( Siralama[Oyuncular[i]] == Sira )
return Oyuncular[i]
return -1
}
public OyuncularaPuanVer(){
for ( new team = 1 ; team <= 2 ; team++ ){
new Oyuncular[32] , Numara
switch(team){
case 1 : get_players(Oyuncular,Numara, "ce" , "TERRORIST")
case 2 : get_players(Oyuncular,Numara, "ce" , "CT")
}
for ( new i ; i < Numara ; i++ ){
new Uid = Oyuncular[i] , Sure[8]
formatex(Sure,charsmax(Sure),"%d",nvault_get(Dosya,OyuncuIsmi[Uid]) + PuanVermePeriyotu )
nvault_set(Dosya,OyuncuIsmi[Uid],Sure)
}
}
}
public VeriCek(xSiralama,Isim[36],Zaman[10]){
new Yazi[50]
read_file(KAYIT_DOSYA_YOLU,xSiralama-1,Yazi,charsmax(Yazi))
strtok(Yazi, Isim, 36, Zaman, 10 , '!' )
return Isim , Zaman
}
public Satirlari_Degistir(Birinci,Ikinci){
new Oyuncular[32] , Numara
get_players(Oyuncular,Numara,"c")
for ( new i ; i < Numara ; i++ )
if ( Siralama[Oyuncular[i]] == Birinci+1 ) Siralama[Oyuncular[i]] = Ikinci+1
else if ( Siralama[Oyuncular[i]] == Ikinci+1 ) Siralama[Oyuncular[i]] = Birinci+1
new _1Satir[128] , _2Satir[128]
read_file(KAYIT_DOSYA_YOLU,Birinci,_1Satir,charsmax(_1Satir))
read_file(KAYIT_DOSYA_YOLU,Ikinci,_2Satir,charsmax(_2Satir))
write_file(KAYIT_DOSYA_YOLU,_1Satir,Ikinci)
write_file(KAYIT_DOSYA_YOLU,_2Satir,Birinci)
new ilk_sira[4],ikinci_sira[4]
num_to_str(Birinci+1,ilk_sira,charsmax(ilk_sira))
num_to_str(Ikinci+1,ikinci_sira,charsmax(ikinci_sira))
Birinci += 8
Ikinci += 8
read_file(KAYIT_DOSYA_YOLU_MOTD,Birinci,_1Satir,charsmax(_1Satir))
read_file(KAYIT_DOSYA_YOLU_MOTD,Ikinci,_2Satir,charsmax(_2Satir))
replace(_2Satir,charsmax(_1Satir),ikinci_sira,ilk_sira)
replace(_1Satir,charsmax(_1Satir),ilk_sira,ikinci_sira)
write_file(KAYIT_DOSYA_YOLU_MOTD,_1Satir,Ikinci)
write_file(KAYIT_DOSYA_YOLU_MOTD,_2Satir,Birinci)
}
public SiralamaKontrol(Sira){
new Oyuncular[32] , OyuncuSayisi
get_players(Oyuncular,OyuncuSayisi,"c")
if ( OyuncuSayisi > 0 ){
if ( Sira >= OyuncuSayisi ) Sira = 0
new id = Oyuncular[Sira]
if ( is_user_connected(id)){
new Isim[36],Zaman[10]
VeriCek(MOTD_KISI_SAYISI , Isim , Zaman )
if ( nvault_get(Dosya,OyuncuIsmi[id]) > str_to_num(Zaman) && Siralama[id] == 0 ){
SiralamayaYazdir(id,MOTD_KISI_SAYISI)
new Oyuncular[32] , Numara
get_players(Oyuncular,Numara,"c")
for ( new i ; i < Numara ; i++ )
if ( Siralama[Oyuncular[i]] == MOTD_KISI_SAYISI ) Siralama[Oyuncular[i]] = 0
Siralama[id] = MOTD_KISI_SAYISI
}
else if ( Siralama[id] != 0 ){
SiralamayaYazdir(id,Siralama[id])
if ( Siralama[id] > 1 && Siralama[id] <= MOTD_KISI_SAYISI ){
new Isim[36],_1Zaman[10],_2Zaman[10]
VeriCek(Siralama[id]-1 , Isim , _1Zaman )
VeriCek(Siralama[id] , Isim , _2Zaman )
if ( str_to_num(_1Zaman) < str_to_num(_2Zaman) )
Satirlari_Degistir(Siralama[id]-1,Siralama[id]-2)
}
}
}
}
set_task(10.0,"SiralamaKontrol",Sira+1)
return PLUGIN_CONTINUE
}
public SiralamayaYazdir(id,Sira){
new Yazi[128]
formatex(Yazi,charsmax(Yazi),"%s!%d",OyuncuIsmi[id],nvault_get(Dosya,OyuncuIsmi[id]))
write_file(KAYIT_DOSYA_YOLU,Yazi,Sira-1)
formatex(Yazi,charsmax(Yazi),"<tr><th>%d<th>%s<th>%s<th>%s</tr>",Sira,OyuncuIsmi[id],Zaman_Ogren(id,nvault_get(Dosya,OyuncuIsmi[id])),Zaman_Ogren(id,Zaman_Farki_Hesapla(id)))
write_file(KAYIT_DOSYA_YOLU_MOTD,Yazi,Sira+7)
}
public Zaman_Ogren(id,ToplamSaniye){
new Saniye = ToplamSaniye % 60
new Dakika = ( ( ToplamSaniye - Saniye ) / 60 ) % 60
new Saat = ( ToplamSaniye - (Dakika*60) - Saniye ) / 3600
new Sure[50]
if ( Dakika != 0 && Saat != 0 ) formatex(Sure,charsmax(Sure),"%d Saat , %d Dakika",Saat,Dakika)
else if ( Dakika != 0 && Saat == 0 ) formatex(Sure,charsmax(Sure),"%d Dakika",Dakika)
else if ( Dakika == 0 && Saat != 0 ) formatex(Sure,charsmax(Sure),"%d Saat",Saat)
return Sure;
}
public toptime(id) show_motd(id,KAYIT_DOSYA_YOLU_MOTD,"EN AKTIF OYUNCULAR")
public Sifirla(id){
if( access(id,SIFIRLAMA_YETKISI) ){
nvault_prune( Dosya, 0 , get_systime() )
delete_file(KAYIT_DOSYA_YOLU)
delete_file(KAYIT_DOSYA_YOLU_MOTD)
client_print_color(0,print_team_default,"^4TopTime : ^1Aktiflik Sureleri Sifirlandi.")
new Eklenti_Ismi[64];
get_plugin(-1, Eklenti_Ismi, charsmax(Eklenti_Ismi));
pause("dc", Eklenti_Ismi )
}
else
{
client_print_color(id,print_team_default,"^4Yetkiniz Yeterli Degil.")
client_print(id,print_console,"Yetkiniz Yeterli Degil.")
}
return PLUGIN_HANDLED
}
public plugin_cfg()
{
Dosya = nvault_open( "AktiflikSureleri" );
if ( Dosya == INVALID_HANDLE )
set_fail_state( "Vault Dosyasi Acilamadi !" );
nvault_prune( Dosya , 0 , get_systime() - ( 86400 * ZAMAN_ASIMI_GUN ) );
}
public plugin_end() nvault_close( Dosya );
public client_authorized(id){
if ( file_size(KAYIT_DOSYA_YOLU) == -1 ){
set_task(3.0+float(id),"client_authorized",id)
return PLUGIN_HANDLED
}
get_user_name( id , OyuncuIsmi[id] , charsmax( OyuncuIsmi[] ) );
replace_all(OyuncuIsmi[id] , charsmax( OyuncuIsmi[] ),"!","|")
for ( new i ; i < MOTD_KISI_SAYISI ; i++ ){
new Yazi[50],Isim[36],Zaman[10]
read_file(KAYIT_DOSYA_YOLU,i,Yazi,charsmax(Yazi))
strtok(Yazi, Isim, charsmax(Isim), Zaman, charsmax(Zaman), '!' )
if ( equali(OyuncuIsmi[id],Isim) ){
Siralama[id] = i + 1
break;
}
else Siralama[id] = 0
}
set_task(5.0,"KayitKontrol",id)
return PLUGIN_CONTINUE
}
public KayitDosyasiniOlustur(){
if ( file_size(KAYIT_DOSYA_YOLU) == -1 ){
write_file(KAYIT_DOSYA_YOLU_MOTD,"<html><body background=^"https://i.hizliresim.com/7aYvrl.png^">",0)
write_file(KAYIT_DOSYA_YOLU_MOTD,"<meta charset=UTF-8><style>body{font-family:Verdana}th{background:#303B4A;color:#FFF}",1)
write_file(KAYIT_DOSYA_YOLU_MOTD,"table{padding:6px 2px;background:#EFF1F3;font-size:12px;color:#222;border:1px solid #CCC}",2)
write_file(KAYIT_DOSYA_YOLU_MOTD,"h2,h3{color:#222}#c{background:#E9EBEE}img{height:7px;background:#F8931F;margin:0 3px}",3)
write_file(KAYIT_DOSYA_YOLU_MOTD,"#r{height:7px;background:#D2232A}#clr{background:none;color:#303B4A;font-size:20px;border:0}</style>",4)
write_file(KAYIT_DOSYA_YOLU_MOTD,"<table width=100% height=100% border=0 align=center cellpadding=0 cellspacing=1>",5)
write_file(KAYIT_DOSYA_YOLU_MOTD,"<tr><th colspan=^"4^"><font size=^"5^">EN AKTİF OYUNCULAR</font><br/></th></tr>",6)
write_file(KAYIT_DOSYA_YOLU_MOTD,"<tr><th>#<th>Oyuncu İsmi<th>Oynanılan Süre Miktarı<th>Günde Ortalama</tr>",7)
for( new i ; i < MOTD_KISI_SAYISI ; i++ ){
write_file(KAYIT_DOSYA_YOLU,"xxx!0")
write_file(KAYIT_DOSYA_YOLU_MOTD,"<tr><th><th><th><th></tr>",i+8)
}
set_task(2.0,"KayitDosyasiniOlustur",0)
}
else
{
set_task(5.0,"SiralamaKontrol",0)
set_task(float(PuanVermePeriyotu), "OyuncularaPuanVer", _, _, _, "b")
}
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1254\\ deff0\\ deflang1055{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n{\\ colortbl ;\\ red0\\ green0\\ blue0;}\n\\ viewkind4\\ uc1\\ pard\\ cf1\\ f0\\ fs16 \n\\ par }
*/
Link: | |
Linklerini gizle |