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

https://discord.gg/43gGDQe6tS

Günde 1 Defa Vault Dosyasının Sıfırlanması

Eklenti sorunlarınız ve özel eklenti istekleriniz

Moderatör: Moderatörler


Konu Sahibi
yamibakura
Mesajlar: 29
Kayıt: Pzt May 25, 2020 11:43 pm

Günde 1 Defa Vault Dosyasının Sıfırlanması

Mesaj gönderen yamibakura »

Her gün ayarladığım saatte deneme.vault dosyası sıfırlanacak veya silinecek teşekkürler.

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

Fatih ~ EjderYa
Mesajlar: 2895
Kayıt: Prş Mar 16, 2017 5:05 pm
Konum: İstanbul
İletişim:

Günde 1 Defa Vault Dosyasının Sıfırlanması

Mesaj gönderen Fatih ~ EjderYa »


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

Aconyonn
Mesajlar: 393
Kayıt: Cum Eyl 15, 2017 3:52 pm
İletişim:

Günde 1 Defa Vault Dosyasının Sıfırlanması

Mesaj gönderen Aconyonn »

eklenti,

Kod: Tümünü seç

#pragma semicolon 1

#include <amxmodx>
#include <nvault>

#define determined 24		//Saat dilimini buradan ayarlayın.
new g_vault;

public plugin_init(){
	register_plugin
	(
		.plugin_name ="Nvault Reset",
		.version = "0.1",
		.author = "Aconyonn"
	);

	set_task(10.0,"check");
}
public plugin_cfg(){
	g_vault = nvault_open("Reset");
	if(g_vault == INVALID_HANDLE){
		log_amx("%i: nVault dosyasi acilamadi",g_vault);
	}
}
public plugin_end(){
	nvault_close(g_vault);
}
public check(){
	new hours[3];get_time("%H",hours,charsmax(hours));
	new useh=str_to_num(hours);
	if(useh >= determined){
		nvault_prune(g_vault,0,get_systime());
	}
	else{
		set_task(60.0,"check");
	}
}
fatih'in yorumda bahsettiği yardımcı olabilecek bir kütüphanesi var. onu yükleyip kullanabilirsiniz, viewtopic.php?p=240672#p240672

Kod: Tümünü seç

#pragma semicolon 1

#include <amxmodx>
#include <dynamic_time>
#include <nvault>

#define determined 24		//Saat dilimini buradan ayarlayın.
new g_vault;

public plugin_init(){
	register_plugin
	(
		.plugin_name ="Nvault Reset",
		.version = "0.1",
		.author = "Aconyonn"
	);

	set_task(10.0,"check");
}
public plugin_cfg(){
	g_vault = nvault_open("Reset");
	if(g_vault == INVALID_HANDLE){
		log_amx("%i: nVault dosyasi acilamadi",g_vault);
	}
}
public plugin_end(){
	nvault_close(g_vault);
}
public check(){
	new hours=get_dynamic_time(Time_Hour);
	if(hours >= determined){
		nvault_prune(g_vault,0,get_systime());
	}
	else{
		set_task(60.0,"check");
	}
}

Link:
Linklerini gizle
Linki Kopyala

Konu Sahibi
yamibakura
Mesajlar: 29
Kayıt: Pzt May 25, 2020 11:43 pm

Günde 1 Defa Vault Dosyasının Sıfırlanması

Mesaj gönderen yamibakura »

teşekkürler

Link:
Linklerini gizle
Linki Kopyala

Konu Sahibi
yamibakura
Mesajlar: 29
Kayıt: Pzt May 25, 2020 11:43 pm

Günde 1 Defa Vault Dosyasının Sıfırlanması

Mesaj gönderen yamibakura »

Yaptığım plugini kendi hlds sunucumda deniyorum /sil yazip map değiştimde vaultu sıfırlıyor ancak csdurağında denediğimde tepki vermiyor. Yaptığınız pluginde de aynı komut var işe yaramıyor.

Kod: Tümünü seç

#include <amxmodx>
#include <nvault>
#include <fakemeta>

#define PLUGIN "vault silme"
#define VERSION "1.0"
#define AUTHOR "vault"


#define KAYIT_DOSYASI_ADI "vault"

new Dosya
new Hour[3], Minute[3];
new yeter = 0
public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	register_clcmd("amx_cvault","Verileri_Sil")
	register_clcmd("say /sil","Verileri_Sil")		/// Kullanıldığında Bir Dakikayı Geçmiş Bütün Veriler Silinir.
	register_forward(FM_CmdStart,"pCmdStart"); 
	yeter = 0
}

///***********************************************************************///
public pCmdStart(id){
    get_time("%H", Hour, 2);
    get_time("%M", Minute, 2);
    if(equal(Hour, "10") && equal(Minute, "10") && yeter == 0) {
    Verileri_Sil()	
    yeter = 1
     
    }
    return PLUGIN_HANDLED
} 
public Verileri_Sil(){
	
	
	
	nvault_prune( Dosya , 0 , get_systime() ) 

	
}



public plugin_cfg() /// Sunucu Başlatıldığında Çalışır.
{
	
	Dosya = nvault_open(KAYIT_DOSYASI_ADI);
	
	if ( Dosya == INVALID_HANDLE )	/// DOSYA AÇILAMADIYSA
		set_fail_state( "Vault Dosyasi Acilamadi !" );
	
	
}

public plugin_end() /// Sunucu Kapatıldığında Çalışır.
{
	nvault_close( Dosya );
}

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

Fatih ~ EjderYa
Mesajlar: 2895
Kayıt: Prş Mar 16, 2017 5:05 pm
Konum: İstanbul
İletişim:

Günde 1 Defa Vault Dosyasının Sıfırlanması

Mesaj gönderen Fatih ~ EjderYa »

@Aconyonn

Her 60 saniyede bir kontrol ettirmene gerek yok. Plugin_init kısmında bir kere kontrol ettirmen yeterli.

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

Colditz
Mesajlar: 2574
Kayıt: Çrş Ağu 23, 2017 9:17 pm

Günde 1 Defa Vault Dosyasının Sıfırlanması

Mesaj gönderen Colditz »

Get_time yerine direkt time(...) kullanabilirsiniz. Str yi num a çevirmek yerine direkt num alırsınız.
Sunucunun saati ile gerçek saat arasında fark olabiliyor.

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

Fatih ~ EjderYa
Mesajlar: 2895
Kayıt: Prş Mar 16, 2017 5:05 pm
Konum: İstanbul
İletişim:

Günde 1 Defa Vault Dosyasının Sıfırlanması

Mesaj gönderen Fatih ~ EjderYa »

Colditz yazdı: Sal Eyl 15, 2020 7:32 pm Get_time yerine direkt time(...) kullanabilirsiniz. Str yi num a çevirmek yerine direkt num alırsınız.
Sunucunun saati ile gerçek saat arasında fark olabiliyor.
Zamam kütüphanesi de tam olarak bu sorunu çözmeye yardımcı oluyor. Sunucu saati ve tarihi ne olursa olsun istenilen veriyi doğru bir şekilde çekmeye yardımcı oluyor.

Link:
Linklerini gizle
Linki Kopyala

Konu Sahibi
yamibakura
Mesajlar: 29
Kayıt: Pzt May 25, 2020 11:43 pm

Günde 1 Defa Vault Dosyasının Sıfırlanması

Mesaj gönderen yamibakura »

Yalnız burada sorun zaman değil. nvault_prune kodu işe yaramıyor csdurağında denediğimde. Saya /sil yazdığım zaman zamana bağlı olmaksızın sıfırlaması gerekirdi.

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

Aconyonn
Mesajlar: 393
Kayıt: Cum Eyl 15, 2017 3:52 pm
İletişim:

Günde 1 Defa Vault Dosyasının Sıfırlanması

Mesaj gönderen Aconyonn »

yamibakura yazdı: Sal Eyl 15, 2020 8:51 pm Yalnız burada sorun zaman değil. nvault_prune kodu işe yaramıyor csdurağında denediğimde. Saya /sil yazdığım zaman zamana bağlı olmaksızın sıfırlaması gerekirdi.
yukarıdaki yorumda bahsettiğiniz nvault için kullanılacak değişkeni bir veriye tanımlamadığınız için çalışmaması normal... bir veriye tanımlayın ve sonra tekrar deneyin..

Link:
Linklerini gizle
Linki Kopyala
Cevapla