Denenmedi. Nvault Eklendi. Girişte 10 Dakika Reklam Yapılamıyor (set_task 600.0)
Kod: Tümünü seç
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <nvault>
#define PLUGIN "Reklam At"
#define VERSION "2.0"
#define AUTHOR "By Deh$eT"
new puan[33],sure[32]
new bool:reklam_engel[33];
new g_vault
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /reklamat","reklam")
g_vault = nvault_open("reklamat")
}
public client_connect(id)
{
reklam_engel[id] = true
sure[id] = 600
set_task(600.0,"finish",id) // Gelen direkt reklam atmamasını saglayacak
LoadData(id)
}
public client_disconnect(id)
{
reklam_engel[id] = false
sure[id] = 0
SaveData(id)
}
public SaveData(id)
{
new name[32]
get_user_name(id, name, 31)
new vaultkey[64], vaultdata[256]
format(vaultkey, 63, "%s", name)
format(vaultdata, 255, "%i", puan[id])
nvault_set(g_vault, vaultkey, vaultdata)
return PLUGIN_CONTINUE
}
public LoadData(id)
{
new name[32]
get_user_name(id, name, 31)
new vaultkey[64], vaultdata[256]
format(vaultkey, 63, "%s", name)
format(vaultdata, 255, "%i", puan[id])
nvault_get(g_vault, vaultkey, vaultdata, 255)
new points_user[10]
parse(vaultdata, points_user, 9)
new points_set = str_to_num(points_user)
puan[id] = points_set
return PLUGIN_CONTINUE
}
public reklam(id)
{
static amenu[512];
new menu = menu_create("\yReklam \rMenu", "reklam_handler")
if(reklam_engel[id]) {
menu_additem(menu, "\yReklam \d[\rAT\d]", "1", 0);
}
else {
menu_additem(menu, "\dReklam [AT]", "2", 0);
formatex(amenu,charsmax(amenu),"\yPuaniniz : \r%d",puan[id])
menu_additem(menu,amenu,"3")
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, menu, 0);
}
}
public menu_handler(id, menu, item)
{
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
new key = str_to_num(data);
new name[32]
get_user_name(id,name,31)
switch(key)
{
case 1: {
renkli_yazi(0,"!g%s : !nSlotluk Ve Komutculuk icin Say'a !t/ts3 !nyaziniz.",name)
puan[id]+= 1
reklam_engel[id] = true
sure[id] = 1800
check(id)
set_task(1800.0,"finish",id)
}
case 2: {
renkli_yazi(id,"!g%d !nsaniye sonra tekrar deneyiniz.",sure[id])
}
case 3: {
reklam(id)
}
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public check(id)
{
sure[id]--
if(!reklam_engel[id])
{
sure[id] = 0
}
else
{
check(id)
}
}
public finish(id)
{
reklam_engel[id] = false
renkli_yazi(id,"!gReklam Atma bekleme sureniz sona ermisdir.")
renkli_yazi(id,"!t/reklamat !nyazarak tekrar reklam atabilirsiniz.")
}
stock renkli_yazi(const id, const input[], any:...)
{
new count = 1, players[32];
static msg[191];
vformat(msg, 190, input, 3);
replace_all(msg, 190, "!n", "^x01"); // Default Renk(Sarı)
replace_all(msg, 190, "!g", "^x04"); // Yeşil Renk
replace_all(msg, 190, "!t", "^x03"); // Takım Renk( CT mavi , T kırmızı )
if (id) players[0] = id; else get_players(players, count, "ch"); {
for (new i = 0; i < count; i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
write_byte(players[i]);
write_string(msg);
message_end();
}
}
}
}