data/vault içerisinde ki dosyanın boyutu büyüyor, içerisine veri girişi var fakat yeni giriş yapıldığında ya da harita değiştirildiğinde ya da retry çekildiğinde kayıtlı veriyi okumuyor, "Durumunuz" yine "Temiz" olarak yazdırıyor.
Yardımcı olabilir misiniz?
Kod: Tümünü seç
#include <amxmodx>
#include <reapi>
#include <nvault>
new vault, szDataDurum[10];
new secilenadam[33];
new ssBildirim[33];
public plugin_init(){
register_plugin("SnapShot Engine", "VERSION", "AUTHOR");
register_clcmd("say /bildir","ssEngineBildirMenu");
}
public ssEngineBildirMenu(id){
new menu, Menuz[512], sira[6], name[64];
formatex(Menuz, charsmax(Menuz),"Oyuncu Bildir");
menu = menu_create(Menuz,"_ssEngineBildirMenu");
for(new i; i <= MAX_CLIENTS; i++){
if(is_user_connected(i) && !is_user_bot(i)){
get_user_name(i,name,charsmax(name));
num_to_str(i, sira, charsmax(sira))
formatex(Menuz, charsmax(Menuz),"[ \r %s \w]", name);
menu_additem(menu, Menuz, sira);
}
}
menu_setprop(menu,MPROP_NEXTNAME, " \wIleri");
menu_setprop(menu,MPROP_BACKNAME, " \wGeri");
formatex(Menuz, charsmax(Menuz), " \wKapat");
menu_setprop(menu,MPROP_EXITNAME,Menuz);
menu_setprop(menu,MPROP_EXIT, MEXIT_ALL);
menu_display(id, menu, 0);
return PLUGIN_HANDLED;
}
public _ssEngineBildirMenu(id, menu, item){
if(item == MENU_EXIT) {
menu_destroy(menu)
return PLUGIN_HANDLED;
}
new data[6], iName[64], access, callback;
menu_item_getinfo(menu,item,access,data,charsmax(data),iName,charsmax(iName),callback);
secilenadam[id] = str_to_num(data);
ssBildiren(id);
return PLUGIN_HANDLED;
}
public ssBildiren(id){
ssBildirim[secilenadam[id]] += 1;
new hedef[64];
get_user_name(secilenadam[id],hedef,63);
printer(id,"%s isimli oyuncu bildirildi.",hedef);
if( ssBildirim[secilenadam[id]] >= 3)
SupheliKontrol(secilenadam[id]);
return PLUGIN_HANDLED;
}
public SupheliKontrol(id){
if( is_user_bot(id) || !is_user_connected(id))
return PLUGIN_HANDLED;
new authid[48], anahtar[56], hedef[64];
get_user_name(id, hedef, 63);
get_user_authid(id, authid, 55);
formatex(anahtar, 55, "%s-Supheli",authid);
if( !(nvault_get(vault, anahtar)) ){
nvault_pset(vault, anahtar, "SUPHELI");
printer(0,"%s oyuncusu supheli listesine dustu...", hedef);
}
else{
printer(id,"Supheli listesindesin! Tekrar bildirildin.");
printer(0,"%s isimli oyuncu Supheli Listesindeki yerini tazeledi!", hedef)
}
return PLUGIN_HANDLED;
}
/* ------------------------------------------------------------------------------ */
public client_putinserver(id){
if(is_user_connected(id) || !is_user_bot(id))
set_task(3.0,"SSEngineSorgula",id);
return PLUGIN_HANDLED;
}
public SSEngineSorgula(id){
new authid[48], anahtar[63];
get_user_authid(id, authid, charsmax(authid));
formatex(anahtar, charsmax(anahtar), "%s-Supheli",authid);
if(nvault_get(vault,anahtar)){
nvault_get(vault, anahtar, szDataDurum, charsmax(szDataDurum));
printer(id,"Durumunuz: %s", szDataDurum);
}
else
printer(id,"Durumunuz: Temiz");
return PLUGIN_HANDLED;
}
public plugin_cfg(){
vault = nvault_open("_SSEngine");
if(vault == INVALID_HANDLE)
set_fail_state("%s dosyasi acilamadi",vault);
}
public plugin_end(){
nvault_close(vault);
}
stock printer(const id, const input[], any:...){
static msg[191];
vformat(msg, charsmax(msg), input, 3);
replace_all(msg, charsmax(msg), "!n", "^x01"); // Default Renk
replace_all(msg, charsmax(msg), "!g", "^x04"); // Yesil Renk
replace_all(msg, charsmax(msg), "!t", "^x03"); // Takim rengi
client_print_color(id, id, msg);
}